Please use this identifier to cite or link to this item: http://artemis.cslab.ece.ntua.gr:8080/jspui/handle/123456789/13659
Title: Επιτάχυνση Συστημάτων Συστάσεων Βασισμένη Σε Fpga
Authors: Καταντώνης Κωνσταντίνος
Σούντρης Δημήτριος
Keywords: συστήματα συστάσεων
fpga
εναλλασόμενα ελάχιστα τε- τράγωνα
μηχανική μάθηση
υπολογιστικό σύμπλεγμα
υπολογιστική επιτάχυνση
παράλληλη επιτάχυνση
κατανάλωση ενέργειας
zynq
zedboard
zc702
pynq
apache spark
Issue Date: 29-Nov-2017
Abstract: Η ραγδαία αύξηση των δεδομένων τα τελευταία χρόνια έχει οδηγήσει σε άνθιση τονκλάδο της μηχανικής μάθησης και γενικότερα της τεχνητής νοημοσύνης. Ωστόσο παράτης αυξανόμενες ανάγκες για επεξεργασία όλο και μεγαλύτερου όγκου δεδομένων οτρόπος που τα επεξεργαζόμαστε δεν έχει αλλάξει ιδιαίτερα εδώ και αρκετά χρόνια και ομόνος λόγος που η επεξεργαστική ισχύς συμβαδίζει με την αύξηση των δεδομένων είναιότι δεν μας έχει εγκαταλείψει ο νόμος του Moore κάτι που σύντομα ενδεχομένως ναπάψει να ισχύει. Το εναλλακτικό μονοπάτι μέχρι τώρα έναντι του κλασικού CPU serverαποτελούν οι αρχιτεκτονικές που διαμοιράζουν το υπολογιστικό έργο και σε GPU μετις τελευταίες να πετυχαίνουν εξαιρετικά αποτελέσματα όσον αφορά την χρονική επί-δοση με κόστος την μεγάλη κατανάλωση ισχύος. Σκοπός αυτής της διπλωματικής είναινα αναδείξει ένα ακόμα εναλλακτικό υπολογιστικό μονοπάτι που στοχεύει στο να καλύ-ψει κάποιες ανάγκες που οι υπάρχουσες μέθοδοι αδυνατούν. Συγκεκριμένα επιθυμούμενα δείξουμε πως μπορούν τα FPGAs να ενσωματωθούν στα κέντρα δεδομένων κάνο-ντας χρήση υπαρχουσών τεχνολογιών στοχεύοντας τόσο στην αύξηση της ενεργειακήςόσο και της χρονικής επίδοσης. Για τον σκοπό αυτό χρησιμοποιήσαμε τον αλγόριθμοΕναλλασόμενων Ελάχιστων Τετραγώνων για Παραγοντοποίηση Πίνακα με στόχο ναπαρουσιάσουμε ένα διάγραμμα εργασιακής ροής σχετικά με το πώς κάποιος μπορεί ναξεκινήσει να τρέχει αλγορίθμους υποβοηθούμενους από FPGA σε ενα Datacenter.H διπλωματική αυτή εντάσσεται σε ένα γενικότερο πλαίσιο μιας προσπάθειας να κα-τασκευαστούν βιβλιοθήκες οι οποίες θα περιέχουν βασικές εργασίες ενός Datacenterεπιταχυμένες σε FPGA και έτοιμες για χρήση από τον εκάστοτε προγραμματιστή. Οιπλακέτες που χρησιμοποιήσαμε έιναι οι Xilinx ZedBoard, Xilinx Zc702 και DigilentPynq Z1, ενώ όσον αφορά το λογισμικό χρησιμοποιήσαμε τα Xilinx SDSoC, XilincVivado HLS,Apache Spark. Η ροη εργασίας που ακολουθήσαμε ήταν η εξής : αρ-χικά γράψαμε τον αλγόριθμο των εναλλασόμενων ελαχίστων τετραγώνων σε C καιέπειτα καταγράψαμε το χρονικό του προφίλ. Στην συνέχεια με τη βοήθεια του XilinxSDSoC και του Vivado HLS κατασκευάσαμε μερικούς πυρήνες επιτάχυνσης για τοέντονο υπολογιστικά κομμάτι του αλγορίθμου. Δοκιμάσαμε την χρονική επίδοση τωνπυρήνων πάνω στο zedboard και στην συνέχεια την ενεργειακή τους επίδοση πάνωστο zc702. Στην συνέχεια επιλέξαμε τον καλύτερο απο τους πυρήνες τόσο ενεργειακάόσο και χρονικά και τον ενσωματώσαμε σε περιβάλλον Python στην πλακέτα Pynq-Z1 κάνοντας χρήση των βιβλιοθηκών που παρέχονται για την τελευταία. Η μετάβασηαπο C σε Python έγινε διότι επιζητούσαμε να δημιουργήσουμε μια υλοποίηση σε μιαγλώσσα που να χρησιμοποιείτε ευρέως στα κενταρα δεδομένων απο τους προγραμματι-στές. Τέλος για τον σκοπό της διπλωματικής κατασκευάσαμε ένα Cluster απο Pynqsτο οποίο προσομοίωσε ένα μικρό κέντρο δεδομένων πάνω στο οποίο, με την βοήθειατου Apache Spark, τρέξαμε κατανεμημένα τον επιταχυμένο αλγόριθμο.
URI: http://artemis-new.cslab.ece.ntua.gr:8080/jspui/handle/123456789/13659
Appears in Collections:Διπλωματικές Εργασίες - Theses

Files in This Item:
File SizeFormat 
DT2017-0319.pdf12.52 MBAdobe PDFView/Open


Items in Artemis are protected by copyright, with all rights reserved, unless otherwise indicated.