Παραλληλοποίηση αλγορίθμων επίλυσης γενικευμένων πεδίων ροής

see the original item page
in the repository's web site and access all digital files if the item*

PhD thesis (EN)

2009 (EN)
Parallelization of a computational fluid dynamics solver
Παραλληλοποίηση αλγορίθμων επίλυσης γενικευμένων πεδίων ροής

Σωτηρόπουλος, Αναστάσιος Δ.

This thesis is an effort of accelerating an in-house CFD code, using HPC (High Performance Computing) systems. The profit that is expected is the reduction of solution time and the ability to solve larger problems. In the introduction, previous work is reported and the most important technologies and programming techniques are analyzed. Understanding these technologies lead to the optimal exploitation of the available tools. Next the serial code is described and analyzed before the analysis of the parallelization steps, the memory management and the communication involved that are described in deep afterwards. The parallel code uses the domain decomposition method and the workload is balanced over the processors depending on their computational power. The domain decomposition is applied on simple and complex geometries using one- and multi-block topologies. Investigation of the Altivec vector unit also takes place to achieve extra acceleration. Finally, the results of the parallel code are presented by solving a series of test-cases and validating the results with experimental data
Στην παρούσα διδακτορική διατριβή παρουσιάζεται μια προσπάθεια επιτάχυνσης ενός ενδοεργαστηριακού (in-house) κώδικα υπολογιστικής ρευστοδυναμικής (Computational Fluid Dynamics - CFD) χρησιμοποιώντας υπολογιστικά συστήματα υψηλής απόδοσης (High Performance Computing - HPC). Το κέρδος που αναμένεται από μια τέτοια προσπάθεια είναι η δραστική μείωση του χρόνου επίλυσης καθώς και η δυνατότητα επίλυσης μεγαλύτερων προβλημάτων. Εισαγωγικά γίνεται ανασκόπηση σε προηγούμενες έρευνες που έχουν γίνει καθώς και αναφορά στις σημαντικότερες τεχνολογίες και τεχνικές παράλληλου προγραμματισμού, εργαλεία που διευκολύνουν την έρευνα του μηχανικού στον τομέα του HPC. Η κατανόηση των τεχνολογιών αυτών όπως και η κατανόηση του προβλήματος αποτελoύν τα βασικότερα βήματα για τον μελετητή καθώς η επιλογή του κατάλληλου μοντέλου προγραμματισμού πάνω στη κατάλληλη τεχνολογία εξαρτάται από τη φύση του προβλήματος. Η σωστή επιλογή λοιπόν θα οδηγήσει στη βέλτιστη αξιοποίηση των διαθέσιμων αυτών εργαλείων. Ακολουθεί η περιγραφή και λειτουργία της συστοιχίας υπολογιστών που εγκαταστάθηκε πάνω στην οποία εκπονήθηκε η διατριβή αυτή. Στα επόμενα κεφάλαια γίνεται ανάλυση του αρχικού σειριακού κώδικα και επεξηγούνται τα βήματα μετάβασής του σε παράλληλο κώδικα. Περιγράφεται η διαχείριση της μνήμης, ο τρόπος παραλληλοποίησης του προβλήματος στην περίπτωση απλής γεωμετρίας αλλά και για περιπτώσεις πολλαπλών γεωμετριών (multi-block). Η μέθοδος αποσύνθεσης πεδίου τιμών που χρησιμοποιείται εφαρμόζεται σε μια και δύο διαστάσεις. Η μονοδιάστατη αποσύνθεση γίνεται σε δύο διευθύνσεις. Κατά την αποσύνθεση του προβλήματος γίνεται προσπάθεια να εξισοροπηθεί ο φόρτος εργασίας στους επεξεργαστές ώστε να ελαχιστοποιηθεί ο νεκρός χρόνος. Η επέκταση της συστοιχίας που έγινε με επεξεργαστές διαφορετικής ταχύτητας επέβαλε την αναθεώρηση του αλγορίθμου αποσύνθεσης ώστε να διανέμει τα δεδομένα ανάλογα με την ταχύτητα του επεξεργαστή. Επίσης διερευνάται η δυνατότα αξιοποίησης της διαθέσιμης διανυσματικής μονάδας Altivec που παρέχεται από τη χρησιμοποιούμενη αρχιτεκτονική επεξεργαστή της συστοιχίας. Τέλος παρουσιάζονται αποτελέσματα του παράλληλου κώδικα που δημιουργήθηκε, αξιολογούνται οι επιδόσεις του συστήματος και του κώδικα και γίνεται επαλήθευσή των αποτελεσμάτων του συγκρινόμενα με πειραματικές μετρήσεις πάνω σε μια σειρά προβλημάτων (test-cases). Τα προβλήματα που λύθηκαν ήταν ροές μόνιμης κατάστασης καθώς και μη μόνιμες ροές, ενώ δοκιμάστηκε η αποτελεσματικότητα του κώδικα σε στρωτές και τυρβώδεις ροές με διάφορα μοντέλα τύρβης. Τα προβλήματα που επιλύθηκαν αποτελούνται τόσο από απλές γεωμετρίες όσο και από γεωμετρίες πολλαπλών πλεγμάτων

PhD Thesis / Διδακτορική Διατριβή

Parallel processing
Παράλληλη επεξεργασία (Ηλεκτρονικοί υπολογιστές)
Παράλληλη επεξεργασία
Μηχανική ρευστών
Παράλληλος προγραμματισμός (Πληροφορική)
Parallel processing (Electronic computers)
Domain decomposition
Parallel programming (Computer science)

Αριστοτέλειο Πανεπιστήμιο Θεσσαλονίκης (EL)
Aristotle University of Thessaloniki (EN)



Αριστοτέλειο Πανεπιστήμιο Θεσσαλονίκης, Πολυτεχνική Σχολή, Τμήμα Μηχανολόγων Μηχανικών

This record is part of 'IKEE', the Institutional Repository of Aristotle University of Thessaloniki's Library and Information Centre found at http://ikee.lib.auth.gr. Unless otherwise stated above, the record metadata were created by and belong to Aristotle University of Thessaloniki Library, Greece and are made available to the public under Creative Commons Attribution-ShareAlike 4.0 International license (http://creativecommons.org/licenses/by-sa/4.0). Unless otherwise stated in the record, the content and copyright of files and fulltext documents belong to their respective authors. Out-of-copyright content that was digitized, converted, processed, modified, etc by AUTh Library, is made available to the public under Creative Commons Attribution-ShareAlike 4.0 International license (http://creativecommons.org/licenses/by-sa/4.0). You are kindly requested to make a reference to AUTh Library and the URL of the record containing the resource whenever you make use of this material.

*Institutions are responsible for keeping their URLs functional (digital file, item page in repository site)