Κατάλογος Εκδηλώσεων

09
Οκτ

Παρουσίαση Διπλωματικής Εργασίας κ. Τούπα Πέτρου, Σχολή ΗΜΜΥ
Κατηγορία: Παρουσίαση Διπλωματικής Εργασίας   ΗΜΜΥ  
ΤοποθεσίαΛ - Κτίριο Επιστημών/ΗΜΜΥ, 2041, Πολυτεχνειούπολη
Ώρα09/10/2018 11:45 - 12:45

Περιγραφή:

ΠΟΛΥΤΕΧΝΕΙΟ ΚΡΗΤΗΣ

Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών

Πρόγραμμα Προπτυχιακών Σπουδών

 

ΠΑΡΟΥΣΙΑΣΗ ΔΙΠΛΩΜΑΤΙΚΗΣ ΕΡΓΑΣΙΑΣ

 

ΠΕΤΡΟΥ ΤΟΥΠΑ

 

με θέμα

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

Modeling and Design of “Projected Gauss-Seidel” Algorithm in FPGA

 

Τρίτη 9 Οκτωβρίου 2018, 11:45 π.μ.

Αίθουσα 2041, Πάρκινγκ Κτιρίου Επιστημών, Πολυτεχνειούπολη

 

Εξεταστική Επιτροπή

Καθηγητής Απόστολος Δόλλας (επιβλέπων)

Καθηγητής Διονύσιος Πνευματικάτος

Αναπληρωτής Καθηγητής Ιωάννης Παπαευσταθίου (Σχολή ΗΜΜΥ, ΑΠΘ)

 

Περίληψη

Τα τελευταία χρόνια, οι 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).

Abstract

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).

© Σχολή Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών 2014
Πολυτεχνείο Κρήτης
--