Ιδρυματικό Αποθετήριο
Πολυτεχνείο Κρήτης
EN  |  EL

Αναζήτηση

Πλοήγηση

Ο Χώρος μου

Υλοποίηση αλγορίθμου μοριακής δυναμικής (molecular dynamics) σε αναδιατασσόμενη λογική

Malavazos Konstantinos

Πλήρης Εγγραφή


URI: http://purl.tuc.gr/dl/dias/40830D64-3D2D-44A8-8BAE-782DE527A485
Έτος 2016
Τύπος Διπλωματική Εργασία
Άδεια Χρήσης
Λεπτομέρειες
Εμφανίζεται στις Συλλογές

Περίληψη

Η συνεχής ανάπτυξη της επιστήμης των υπολογιστών τα τελευταία χρόνια έχει αλλάξει ριζικά τον τρόπο προσέγγισης των επιστημονικών προβλημάτων. Οι προσομοιώσεις σε υπολογιστή έχουν εξελιχθεί ως τον τρίτο πυλώνα της επιστήμης, γεφυρώνοντας το χάσμα ανάμεσα στην παραδοσιακές δύο διαδικασίες, θεωρία και πείραμα. Ένα τέτοιο παράδειγμα αποτελούν οι προσομοιώσεις Μοριακής Δυναμικής. Η προσομοίωση Μοριακής Δυναμικής βασίζεται στον υπολογισμό διαφόρων δυνάμεων. Οι σημαντικότερες και πιο χρονοβόρες για τον υπολογισμό τους είναι οι long-ranged non-bonded forces. Στο παρελθόν έχουν γίνει διάφορες προσπάθειες επιτάχυνσης αυτού του κομματιού της προσομοίωσης.Η παρούσα διπλωματική εργασία στοχεύει να επιταχύνει την προσομοίωση Μοριακής Δυναμικής που προσφέρει το πακέτο NAMD 2.10 με την βοήθεια της τεχνολογίας των FPGAs. Το πακέτο αυτό προσφέρει από μόνο του ποικίλους τρόπους επιτάχυνσης της διαδικασίας, όπως με την βοήθεια του CHARM++ ή και μέσω GPU χρησιμοποιώντας CUDA. Για την επίτευξη του στόχου της διπλωματικής εργασίας αυτής χρειάστηκε η μετατροπή του κώδικα από CUDA σε C και έπειτα με την βοήθεια του εργαλείου Vivado HLS 2015.4 να δημιουργηθεί κώδικας περιγραφής υλικού κατάλληλος για την εκάστοτε επιθυμητή FPGA.Πιο συγκεκριμένα, ο πολυνηματικός κώδικας CUDA που υλοποιούσε τις δυνάμεις αυτές μετατράπηκε σε ένα μονονηματικό κώδικα C ώστε το εργαλείο Vivado HLS να τον δεχτεί. Έπειτα στο Vivado HLS 2015.4 υλοποιήθηκαν μια σειρά από διαφορετικές σχεδιάσεις πάνω σε συγκεκριμένη FPGA και χρησιμοποιήθηκαν μια σειρά από directives που παρέχει το εργαλείο και δημιουργούν βέλτιστο κώδικα περιγραφής υλικού.Τέλος, οι σχεδιάσεις δεν κατέβηκαν ποτέ πραγματικά σε FPGA αλλά έγιναν πάρα πολλές προσομοιώσεις του κώδικα με το εργαλείο. Τα αποτελέσματα έδειξαν πως το I/O δημιουργεί ιδιαίτερα προβλήματα και χωρίς αυτό το σύστημα μπορεί να πάρει μέχρι και 6,18x speedup σε σχέση με το Software με χρήση CHARM++, που εκτελέστηκε σε ένα σύστημα με CPU Intel Core i5-4690Κ (4 cores – 4 threads) στα 3.9 GHz και 8 GB RAM και λειτουργικό σύστημα Linux Ubuntu 15.04 64bit.

Διαθέσιμα αρχεία

Υπηρεσίες

Στατιστικά