Εμφάνιση απλής εγγραφής

Application for the assessment the performance of a CUDA Enabled GPU on a CUDA Programming Enviroment.

Στοιχεία Dublin Core

dc.creatorΚαπίρης, Ιωάννηςel
dc.creatorΜαργαρίτης, Αθανάσιοςel
dc.creatorKapiris, Ioannisen
dc.creatorMargaritis, Athanasiosen
dc.date.accessioned2016-03-15T15:03:50Z
dc.date.available2016-03-15T15:03:50Z
dc.date.issued2014-08-26T22:23:38Z
dc.identifier.urihttp://hdl.handle.net/20.500.12688/3176
dc.description.abstractΗ εργασία αυτή ασχολείται με την ελλείψη μία πλήρους λυσης που να μετράει τις επιδόσεις μιας κάρτας γραφικών CUDA σε περιβάλον CUDA Τα τελευταία χρόνια παρατηρείται μια αλλαγή από την τάση να αυξάνονται συνεχώς οι συχνότητες των επεξεργαστων, σε συστήματα με πολλαπλούς επεξεργαστές η πολλαπλούς πυρήνες. Για να μπορέσει το λογισμικό να ακολουθήσει αυτή την τάση, πρέπει να ακολουθήσει νέες τακτικές ώστε ο κώδικας μας να είναι παράλληλος και πολυνηματικός. Αυτή η πρακτική γέννησε την GPGPU GPGPU ή Υπολογισμοί Γενικού Σκοπού σε Επεξεργαστές Γραφικών είναι η τεχνολογία που επιτρέπει σε λογισμικό να τρέχει σε κάρτες γραφικών αντί για τον επεξεργαστή. Το μεγάλο μειονέκτημα είναι ότι τα προς επεξεργασία δεδομένα, θα πρέπει να μιάζουν με τα δεδομένα που συνήθως επεξεργάζεται μια κάρτα γραφικών, και το είδος της επεξεργάσιας να είναι παρόμοιο με τον τρόπο που μια καρτα γραφικών επεξεργάζεται τα γραφικά. Λύση στο πρόβλημα αυτό έδωσε η Nvidia το 2006 με την παρουσίαση της CUDA. Η Cuda είναι μια πλατφόρμα προγραμματισμού βασισμένη στις αρχές του GPGPU που δίνει όμως στους προγραμματιστές μια μεγαλύτερη ευελιξία όσον αφορά τα δεδομενα που θα επεξεργαστούν, αλλα και στο είδος της επεξεργασίας που θα τους γίνει. Προσφέρει επείσης ένα περιβάλον Γλώσσας Υψηλού Επιπέδου (CUDA C) που είναι παρόμοια με την γνωστή C Το πρόγραμμά μας είναι ένα μετροπρόγραμμα, γραμένο εν μέρει σε Cuda C, που μπορεί να εκτελειται σε κάρτες Γραφικών με δυνατότητες CUDA και να υπολογίζει την απόδοση τους σε πραγματικές συνθήκες. Κάνει διάφορες μετρήσεις όπως μέτρηση ταχύτητας μνήμης, πολλαπλασιασμό πινάκων και Ελεγχο ορατότητας, και παρέχει στον χρήση έναν εύκολο τρόπο να διαβάσει αυτά τα αποτελέσμα και να μπορεί να τα αποθυκευσει σαν ιστορικό για μελοντική σύγκριση Δοκιμάσαμε το πρόγραμμα μας σε διαφορετικές κάρτες και διαφορετικά συστήματα ώστε να επιβεβαιώσουμε πως τα αποτελέσματα μας αντοιστοιχούν στα χαρακτηριστικά της εκάστοτε κάρτας. Εγινε αμέσως προφανές ότι για να βγάζουν νόημα τα νούμερα, θα πρέπει να υπολογίσουμε και άλλα χαρακτηριστικά μια κάρτας γραφικών πέραν την συχνότητας των επεξεργαστών της και τον αριθμό τους. Τετοια χαρακτηριστικά είναι η ταχύτητα της μνήμης, η ταχύτητα της διεπαφής της με τον υπολογιστή (διαυλος PCI-Express) και το ευρος του Δίαυλου της μνήμης (Memory Bus Width) Συνοψίζοντας, θεωρούμε ότι μπορέσαμε να προσφέρουμε μια ολοκληρώμενη λύση όσον αφορά στην μέτρηση επιδόσεων μιας κάρτας σε περιβάλλον CUDA, αλλά το ποιο σημαντικό μάθημε που πήραμε, έιναι ότι πια είναι εμφανές πως το μέλον των επεξεργαστών έχει φύγει από την γραμμική επεξεργασία και οδεύει προς την Μαζικά Παράλληλη.el
dc.description.abstractThis paper deals with the lack of a complete solution that would assess the performance of a CUDA Enabled GPU on a CUDA Programming Enviroment In the last years there has been a change from frequency driven updates on CPU , to more multicore based systems. To take advantage of the multicore and multithreaded hardware, software must turn into multithreaded parallel programming strategies. That gave birth to the concept of GPGPU. GPGPU or General Processing on Graphics Processing Units, is the technology and programming tactics that enable software to be run on Graphics Card instead of the CPU. The disadvantage of that is that the Data being manipulated by the GPU must be in a form that is already compatible with GPU’s, and the data manipulation must be in a similar way as the one the GPU calculates graphics. A solution to that disadvantage was given by Nvidia in 2006, with the Introductioni of CUDA. Cuda is a GPGPU programming platform, that gives users a much greater flexibility when it comes to dealing with data , and also provides the programmer with a High Level Programming Language (Cuda C) similar to the already popular C. Our program is a Benchmark written partly on CUDA C, that can be run on Moden Cuda Enabled GPU’s, and assess their performance in real life situations. It does a number of calculations such as Memory Bandwidth , Matrix multiplication and Line of Sight Calculations and it provides the user with an easy way to Visualize those results and keep an archive or previous runs for later consulting. We run our Benchmark on a number of different cards and systems, to make sure that our results are consistend with the Graphics Cards characteristics.Our numbers made sense when it became obvious that the Overall Performance of a GPU is not based solely on clocks and number or processors, but other factors such as PCI-E bandwidth, and Memory Bus Width have to be taken into account. Overall we consider that we offer a complete solution when it comes to measuring a GPU’s performance in Cuda, but the most important lesson taught, was that the future of Processing is taking a turn from Serial To Massively Parallel.en
dc.languageel
dc.publisherΤ.Ε.Ι. Κρήτης, Τεχνολογικών Εφαρμογών (Σ.Τ.Εφ), Τμήμα Μηχανικών Πληροφορικής Τ.Ε.el
dc.publisherT.E.I. of Crete, School of Engineering (STEF), Department of Informatics Engineeringen
dc.rightsAttribution-ShareAlike 4.0 International (CC BY-SA 4.0)
dc.rights.urihttps://creativecommons.org/licenses/by-sa/4.0/
dc.titleΑνάπτυξη εφαρμογής για εκτίμηση επιδόσεων της κάρτας γραφικών σε περιβάλλον CUDA (Massively Parallel Computing on GPUs).el
dc.titleApplication for the assessment the performance of a CUDA Enabled GPU on a CUDA Programming Enviroment.en

Στοιχεία healMeta

heal.creatorNameΚαπίρης, Ιωάννηςel
heal.creatorNameΜαργαρίτης, Αθανάσιοςel
heal.creatorNameKapiris, Ioannisen
heal.creatorNameMargaritis, Athanasiosen
heal.publicationDate2014-08-26T22:23:38Z
heal.identifier.primaryhttp://hdl.handle.net/20.500.12688/3176
heal.abstractΗ εργασία αυτή ασχολείται με την ελλείψη μία πλήρους λυσης που να μετράει τις επιδόσεις μιας κάρτας γραφικών CUDA σε περιβάλον CUDA Τα τελευταία χρόνια παρατηρείται μια αλλαγή από την τάση να αυξάνονται συνεχώς οι συχνότητες των επεξεργαστων, σε συστήματα με πολλαπλούς επεξεργαστές η πολλαπλούς πυρήνες. Για να μπορέσει το λογισμικό να ακολουθήσει αυτή την τάση, πρέπει να ακολουθήσει νέες τακτικές ώστε ο κώδικας μας να είναι παράλληλος και πολυνηματικός. Αυτή η πρακτική γέννησε την GPGPU GPGPU ή Υπολογισμοί Γενικού Σκοπού σε Επεξεργαστές Γραφικών είναι η τεχνολογία που επιτρέπει σε λογισμικό να τρέχει σε κάρτες γραφικών αντί για τον επεξεργαστή. Το μεγάλο μειονέκτημα είναι ότι τα προς επεξεργασία δεδομένα, θα πρέπει να μιάζουν με τα δεδομένα που συνήθως επεξεργάζεται μια κάρτα γραφικών, και το είδος της επεξεργάσιας να είναι παρόμοιο με τον τρόπο που μια καρτα γραφικών επεξεργάζεται τα γραφικά. Λύση στο πρόβλημα αυτό έδωσε η Nvidia το 2006 με την παρουσίαση της CUDA. Η Cuda είναι μια πλατφόρμα προγραμματισμού βασισμένη στις αρχές του GPGPU που δίνει όμως στους προγραμματιστές μια μεγαλύτερη ευελιξία όσον αφορά τα δεδομενα που θα επεξεργαστούν, αλλα και στο είδος της επεξεργασίας που θα τους γίνει. Προσφέρει επείσης ένα περιβάλον Γλώσσας Υψηλού Επιπέδου (CUDA C) που είναι παρόμοια με την γνωστή C Το πρόγραμμά μας είναι ένα μετροπρόγραμμα, γραμένο εν μέρει σε Cuda C, που μπορεί να εκτελειται σε κάρτες Γραφικών με δυνατότητες CUDA και να υπολογίζει την απόδοση τους σε πραγματικές συνθήκες. Κάνει διάφορες μετρήσεις όπως μέτρηση ταχύτητας μνήμης, πολλαπλασιασμό πινάκων και Ελεγχο ορατότητας, και παρέχει στον χρήση έναν εύκολο τρόπο να διαβάσει αυτά τα αποτελέσμα και να μπορεί να τα αποθυκευσει σαν ιστορικό για μελοντική σύγκριση Δοκιμάσαμε το πρόγραμμα μας σε διαφορετικές κάρτες και διαφορετικά συστήματα ώστε να επιβεβαιώσουμε πως τα αποτελέσματα μας αντοιστοιχούν στα χαρακτηριστικά της εκάστοτε κάρτας. Εγινε αμέσως προφανές ότι για να βγάζουν νόημα τα νούμερα, θα πρέπει να υπολογίσουμε και άλλα χαρακτηριστικά μια κάρτας γραφικών πέραν την συχνότητας των επεξεργαστών της και τον αριθμό τους. Τετοια χαρακτηριστικά είναι η ταχύτητα της μνήμης, η ταχύτητα της διεπαφής της με τον υπολογιστή (διαυλος PCI-Express) και το ευρος του Δίαυλου της μνήμης (Memory Bus Width) Συνοψίζοντας, θεωρούμε ότι μπορέσαμε να προσφέρουμε μια ολοκληρώμενη λύση όσον αφορά στην μέτρηση επιδόσεων μιας κάρτας σε περιβάλλον CUDA, αλλά το ποιο σημαντικό μάθημε που πήραμε, έιναι ότι πια είναι εμφανές πως το μέλον των επεξεργαστών έχει φύγει από την γραμμική επεξεργασία και οδεύει προς την Μαζικά Παράλληλη.el
heal.abstractThis paper deals with the lack of a complete solution that would assess the performance of a CUDA Enabled GPU on a CUDA Programming Enviroment In the last years there has been a change from frequency driven updates on CPU , to more multicore based systems. To take advantage of the multicore and multithreaded hardware, software must turn into multithreaded parallel programming strategies. That gave birth to the concept of GPGPU. GPGPU or General Processing on Graphics Processing Units, is the technology and programming tactics that enable software to be run on Graphics Card instead of the CPU. The disadvantage of that is that the Data being manipulated by the GPU must be in a form that is already compatible with GPU’s, and the data manipulation must be in a similar way as the one the GPU calculates graphics. A solution to that disadvantage was given by Nvidia in 2006, with the Introductioni of CUDA. Cuda is a GPGPU programming platform, that gives users a much greater flexibility when it comes to dealing with data , and also provides the programmer with a High Level Programming Language (Cuda C) similar to the already popular C. Our program is a Benchmark written partly on CUDA C, that can be run on Moden Cuda Enabled GPU’s, and assess their performance in real life situations. It does a number of calculations such as Memory Bandwidth , Matrix multiplication and Line of Sight Calculations and it provides the user with an easy way to Visualize those results and keep an archive or previous runs for later consulting. We run our Benchmark on a number of different cards and systems, to make sure that our results are consistend with the Graphics Cards characteristics.Our numbers made sense when it became obvious that the Overall Performance of a GPU is not based solely on clocks and number or processors, but other factors such as PCI-E bandwidth, and Memory Bus Width have to be taken into account. Overall we consider that we offer a complete solution when it comes to measuring a GPU’s performance in Cuda, but the most important lesson taught, was that the future of Processing is taking a turn from Serial To Massively Parallel.en
heal.languageel
heal.academicPublisherΤ.Ε.Ι. Κρήτης, Τεχνολογικών Εφαρμογών (Σ.Τ.Εφ), Τμήμα Μηχανικών Πληροφορικής Τ.Ε.el
heal.academicPublisherT.E.I. of Crete, School of Engineering (STEF), Department of Informatics Engineeringen
heal.titleΑνάπτυξη εφαρμογής για εκτίμηση επιδόσεων της κάρτας γραφικών σε περιβάλλον CUDA (Massively Parallel Computing on GPUs).el
heal.titleApplication for the assessment the performance of a CUDA Enabled GPU on a CUDA Programming Enviroment.en
heal.typebachelorThesis
heal.keywordVisual Studio, CUDA, GPGPUel
heal.keywordVisual Studio, CUDA, GPGPUen
heal.advisorNameΚορνάρος, Γεώργιοςel
heal.advisorNameKornaros, Georgiosen
heal.academicPublisherIDteicrete
heal.fullTextAvailabilitytrue
tcd.distinguishedfalse
tcd.surveyfalse


Αρχεία σε αυτό το τεκμήριο

Thumbnail

Αυτό το τεκμήριο εμφανίζεται στις ακόλουθες συλλογές

Εμφάνιση απλής εγγραφής

Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)
Except where otherwise noted, this item's license is described as Attribution-ShareAlike 4.0 International (CC BY-SA 4.0)