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

Αναζήτηση

Πλοήγηση

Ο Χώρος μου

Μοντελοποίηση και σχεδίαση του αλγορίθμου “Projected Gauss-Seidel” σε FPGA

Toupas Petros

Απλή Εγγραφή


URIhttp://purl.tuc.gr/dl/dias/61E099BC-F3BC-4D08-9051-523B80207667-
Αναγνωριστικόhttps://doi.org/10.26233/heallink.tuc.79074-
Γλώσσαen-
Μέγεθος100 pagesen
Μέγεθος1,6 megabytesen
ΤίτλοςΜοντελοποίηση και σχεδίαση του αλγορίθμου “Projected Gauss-Seidel” σε FPGAel
ΤίτλοςModeling and design of “Projected Gauss-Seidel” algorithm in FPGAen
ΔημιουργόςToupas Petrosen
ΔημιουργόςΤουπας Πετροςel
Συντελεστής [Επιβλέπων Καθηγητής]Dollas Apostolosen
Συντελεστής [Επιβλέπων Καθηγητής]Δολλας Αποστολοςel
Συντελεστής [Μέλος Εξεταστικής Επιτροπής]Pnevmatikatos Dionysiosen
Συντελεστής [Μέλος Εξεταστικής Επιτροπής]Πνευματικατος Διονυσιοςel
Συντελεστής [Μέλος Εξεταστικής Επιτροπής]Papaefstathiou Ioannisen
Συντελεστής [Μέλος Εξεταστικής Επιτροπής]Παπαευσταθιου Ιωαννηςel
ΕκδότηςΠολυτεχνείο Κρήτηςel
ΕκδότηςTechnical University of Creteen
Ακαδημαϊκή ΜονάδαΠολυτεχνείο Κρήτης::Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστώνel
ΠεριγραφήDiploma Work, School of Electrical and Computer Engineering, Technical University of Crete, Chania, Greece, 2018en
ΠερίληψηOver the past years, physics engines were widely used in the industry of video games, computer graphics, and films. Their main goal is to simulate the motions of objects as if they were obeying real-world physics rules. The input to a physics engine is a collection of objects (rigid bodies) with their properties and a collection of forces acting on those bodies. Rigid bodies are objects that do not deform when they collide and rigid body dynamics is the study of the motion of one or several rigid bodies. This input is being processed by performing a certain number of simulation steps which produce the updated properties for each object in the output. The complexity of the modern games is rapidly increasing, so does the computational cost of the simulation the physics engines must accomplish. The use of GPGPU (General-Purpose computing on Graphics Processing Units) can help us overcome the need for high computational requirements by exploiting the parallel processing a GPU can provide. In this thesis, we are going to use FPGA instead of GPU since we can still exploit the parallel processing and furthermore we can achieve much better energy efficiency in comparison with GPU. The physics engine we are working on is Bullet which has already implemented a high computational cost game scene with many rigid bodies (38880) in GPU with the use of the OpenCL library. Our implementation of the same game scene in Xilinx UltraScale+ ZCU102 with the use of Vivado HLS and C++, achieving 7.65x to 9.65x speedups over CPU, while these numbers change to 1.96x to 2.48x speedups and 50x energy efficiency when compared to GPU (NVIDIA GeForce GTX 980).en
ΠερίληψηΤα τελευταία χρόνια, οι physics engines (μηχανές φυσικής) χρησιμοποιούνται ευρέως στη βιομηχανία των βιντεοπαιχνιδιών, φυσικών προσομοιώσεων και ταινιών. Ο κύριος στόχος τους είναι η προσομοίωση των κινήσεων αντικειμένων που υπακούν σε φυσικούς νόμους του πραγματικού κόσμου. Η είσοδος σε μια physics engine είναι ένα σύνολο αντικειμένων (rigid bodies), μαζί με τις ιδιότητες που τα διέπουν και ένα σύνολο δυνάμεων που ενεργούν σε αυτά τα σώματα. Rigid bodies είναι αντικείμενα που δεν παραμορφώνονται όταν συγκρούονται και rigid body dynamics είναι η μελέτη της κίνησης των rigid bodies. Αυτή η είσοδος επεξεργάζεται με την εκτέλεση ενός αριθμού βημάτων προσομοίωσης που παράγουν τις ενημερωμένες ιδιότητες για κάθε αντικείμενο στην έξοδο. Η πολυπλοκότητα στα σύγχρονα παιχνίδια αυξάνεται ραγδαία το ίδιο και το υπολογιστικό κόστος της προσομοίωσής που πρέπει να επιτύχουν οι physics engines. Η χρήση των GPGPU (General-Purpose computing on Graphics Processing Units) μπορεί να μας βοηθήσει να ξεπεράσουμε την ανάγκη για υψηλές υπολογιστικές απαιτήσεις αξιοποιώντας την παράλληλη επεξεργασία που η GPU μπορεί να παρέχει. Σε αυτή τη εργασία, πρόκειται να χρησιμοποιήσουμε FPGA αντί GPU καθώς μπορούμε ακόμα να εκμεταλλευτούμε την παράλληλη επεξεργασία και επιπλέον μπορούμε να είμαστε πολύ πιο αποδοτικοί ενεργειακά σε σύγκριση με τη GPU. Η μηχανή φυσικής που εργαζόμαστε στην εργασία αυτή είναι, η Bullet η οποία έχει ήδη εφαρμόσει μια σκηνή παιχνιδιού με μεγάλο υπολογιστικό κόστος και με πολλά άκαμπτα σώματα (38880) σε GPU κάνοντας χρήση της OpenCL βιβλιοθήκης. Υλοποιώντας την ίδια σκηνή παιχνιδιού στην Xilinx UltraScale + ZCU102 με τη χρήση του Vivado HLS και C ++, επιτυγχάνουμε 7.65x έως 9.65x latency speedup σε σχέση με την CPU. Αυτοί οι αριθμοί αλλάζουν σε 1.96x εως 2.48x latency speedup επιτυγχάνοντας 50x ενεργειακή αποδοτικότητα σε σύγκριση με την GPU (NVIDIA GeForce GTX 980).el
ΤύποςΔιπλωματική Εργασίαel
ΤύποςDiploma Worken
Άδεια Χρήσηςhttp://creativecommons.org/licenses/by/4.0/en
Ημερομηνία2018-10-11-
Ημερομηνία Δημοσίευσης2018-
Θεματική ΚατηγορίαPhysics engineen
Θεματική ΚατηγορίαProjected Gauss-Seidelen
Θεματική ΚατηγορίαFPGAen
Βιβλιογραφική ΑναφοράPetros Toupas, "Modeling and design of “Projected Gauss-Seidel” algorithm in FPGA", Diploma Work, School of Electrical and Computer Engineering, Technical University of Crete, Chania, Greece, 2018el
Βιβλιογραφική ΑναφοράΠέτρος Τούπας, "Μοντελοποίηση και σχεδίαση του αλγορίθμου “Projected Gauss-Seidel” σε FPGA", Διπλωματική Εργασία, Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών, Πολυτεχνείο Κρήτης, Χανιά, Ελλάς, 2018el

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

Υπηρεσίες

Στατιστικά