Προσομοιωτής κβαντικών κυκλωμάτων στο αναπτυξιακό περιβάλλον παράλληλης επεξεργασίας CUDA

Διπλωματική Εργασία uoadl:1664288 775 Αναγνώσεις

Μονάδα:
Κατεύθυνση Σχεδίασης Ολοκληρωμένων Κυκλωμάτων
Πληροφορική
Ημερομηνία κατάθεσης:
2017-06-09
Έτος εκπόνησης:
2017
Συγγραφέας:
Κατσιώτης Αθανάσιος
Στοιχεία επιβλεπόντων καθηγητών:
Δημήτριος Γκιζόπουλος, Καθηγητής, Τμήμα Πληροφορικής & Τηλεπικοινωνιών, ΕΚΠΑ
Πρωτότυπος Τίτλος:
Προσομοιωτής κβαντικών κυκλωμάτων στο αναπτυξιακό περιβάλλον παράλληλης επεξεργασίας CUDA
Γλώσσες εργασίας:
Ελληνικά
Μεταφρασμένος τίτλος:
Προσομοιωτής κβαντικών κυκλωμάτων στο αναπτυξιακό περιβάλλον παράλληλης επεξεργασίας CUDA
Περίληψη:
Οι κβαντικοί υπολογιστές είναι μια ερευνητική περιοχή με αυξανόμενο ενδιαφέρον. Η ιδέα τους είναι θεμελιωδώς διαφορετική από τους κλασικούς ψηφιακούς υπολογιστές και για τον λόγο αυτό απαιτούν νέες τεχνολογίες κατασκευής, νέους τρόπους σχεδιασμού και νέους αλγόριθμους. Η υπάρχουσα υποδομή κβαντικών υπολογιστών είναι μηδαμινή, πράγμα που δυσκολεύει την έρευνα αφού δεν υπάρχουν πραγματικά συστήματα μεγάλης κλίμακας για την υλοποίηση και τον έλεγχο της θεωρίας και των ιδεών.
Αυτή η εργασία έχει σκοπό να βοηθήσει στην επίλυση αυτού του προβλήματος με την δημιουργία ενός προσομοιωτή κβαντικών κυκλωμάτων πάνω στα οποία θα δοκιμάζονται κβαντικοί αλγόριθμοι. Το εργαλείο αυτό θα είναι εύκολα προσβάσιμο και δεν θα απαιτεί πολλούς πόρους για την εκτέλεση του. Θα προσομοιώνει δίνοντας έμφαση στην καλύτερη απόδοση από άποψη χρόνου εκτέλεσης και από άποψη δυνατότητας να λειτουργεί για μεγάλο αριθμού qubits.
Για να επιτευχθεί ο σκοπός αποφασίστηκε να γίνει χρήση καρτών γραφικών (GPU), οι αρχιτεκτονικές των οποίων επιτρέπουν την μαζικά παράλληλη εκτέλεση των πράξεων που απαιτεί η προσομοίωση κβαντικών υπολογιστών με κλασικούς υπολογιστές. Συγκεκριμένα επιλέχθηκε η πλατφόρμα ανάπτυξης CUDA της NVidia που πρόκειται για δημοφιλή και διαδεδομένη επιλογή, και οι κάρτες της υπάρχουν σε πολυάριθμα εργαστήρια.
To πρώτο βήμα της εργασίας, ήταν η μελέτη της απαιτούμενης θεωρίας. Αυτό περιλαμβάνει την κατανόηση των θεμελιωδών κβαντικών στοιχείων, των κβαντικών πυλών, των κβαντικών υπολογισμών και πως αυτοί υλοποιούνται. Από άποψη των GPU, περιλαμβάνει τις υπάρχουσες αρχιτεκτονικές, τα χαρακτηριστικά τους, πως υλοποιούν τους παράλληλους υπολογισμούς και πως γίνεται σωστή χρήση για εκμετάλλευση των δυνατοτήτων τους στο έπακρο.
Μετά την κατανόηση της θεωρίας, ακολούθησε η θεωρητική σχεδίαση του αλγορίθμου που θα εκτελεί τους υπολογισμούς. Ακόμα, σχεδιάστηκε η μορφή που θα έχει η είσοδος του χρήστη στο εργαλείο, πως τα δεδομένα θα διαβάζονται, θα αποθηκεύονται και θα επεξεργάζονται. Στην συνέχεια έγινε η ανάπτυξη του κώδικα με προσοχή στην τήρηση των παραπάνω. Από κει και πέρα ξεκίνησε πρακτική δοκιμή του κώδικα σε πραγματικές κάρτες, ώστε να γίνουν φανερά τα αποτελέσματα της θεωρητικής σχεδίασης και να ακολουθήσει βελτίωση με πρακτική εφαρμογή. Υλοποιήθηκαν γνωστοί κβαντικοί αλγόριθμοι και κυκλώματα και πάρθηκαν μετρήσεις για την απόδοσή τους με χρήση ειδικών εργαλείων.
Η λειτουργία του προσομοιωτή με λίγα λόγια είναι η εξής. Ο χρήστης εισάγει ένα αρχείο κειμένου το οποίο περιέχει το κύκλωμα προς εκτέλεση γραμμένο με μια γλώσσα περιγραφής που σχεδιάστηκε γι’ αυτό το σκοπό. Γίνεται ανάλυση του κειμένου, μεταφέρονται δεδομένα στην κάρτα γραφικών και εκτελούνται οι απαραίτητες πράξεις. Όταν ολοκληρωθούν όλοι οι υπολογισμοί, επιστρέφουν τα αποτελέσματα από την κάρτα και γίνεται καταγραφή τους σε αρχεία κειμένου ώστε να μπορούν να διαβαστούν από τον χρήστη.
Κύρια θεματική κατηγορία:
Πληροφορική
Λέξεις-κλειδιά:
κβαντικά κυκλώματα, παράλληλη επεξεργασία, GPU, CUDA, προσομοίωση
Ευρετήριο:
Ναι
Αρ. σελίδων ευρετηρίου:
6
Εικονογραφημένη:
Ναι
Αρ. βιβλιογραφικών αναφορών:
16
Αριθμός σελίδων:
106