Parallel computational methods for solving large linear systems
Authors: Μουτάφης Βύρων 
Published: November 2021

Στην παρούσα διδακτορική διατριβή αναπτύχθηκαν αριθμητικές μέθοδοι, οι οποίες βασίζονται σε τεχνικές αλγεβρικού διαχωρισμού του χωρίου, για την επίλυση γραμμικών συστημάτων μεγάλης τάξης σε υπολογιστικά συστήματα υψηλής απόδοσης. Συγκεκριμένα, έχει προταθεί μία κλάση προσυντονισμένων σχημάτων αλγεβρικού διαχωρισμού του χωρίου, που χρησιμοποιεί ημι-συσσωματωμένα υποχωρία. Επιπροσθέτως, έχει προταθεί μία διαδικασία ημι-συσσωμάτωσης των εσωτερικών συνόρων για την επίλυση του γραμμικού συστήματος του συμπληρώματος Schur. Επιπλέον, έχει αναπτυχθεί μία νέα μέθοδος διαχωρισμού του χωρίου με δύο στάδια για την επίλυση γραμμικών συστημάτων μεγάλης τάξης σε υβριδικά παράλληλα συστήματα. Έχουν σχεδιαστεί προσυντονισμένα σχήματα αλγεβρικού διαχωρισμού του χωρίου, μαζί με έναν αλγόριθμο ισοκατανομής του υπολογιστικού φόρτου, για συστήματα κατανεμημένης μνήμης με επιταχυντές, όπως επεξεργαστές πολλών πυρήνων manycore ή κάρτες γραφικών. Έχει μελετηθεί η απόδοση του προτεινόμενου σχήματος σε περιβάλλον υπολογιστικού νέφους. Επίσης, έχει προταθεί μία μέθοδος διαχωρισμού του χωρίου και του χρόνου σε συνδυασμό με υποχωρία ημι-συσσωμάτωσης. Στο κεφάλαιο 1, γίνεται εισαγωγή στις βασικές μαθηματικές έννοιες των πεδίων της γραμμικής άλγεβρας και των μερικών διαφορικών εξισώσεων. Ακόμα, γίνεται μία ανασκόπηση των προσυντονισμένων επαναληπτικών μεθόδων για την επίλυση γραμμικών συστημάτων, συμπεριλαμβανομένων των μεθόδων διαχωρισμού του χωρίου. Επιπλέον, γίνεται εισαγωγή στα σύγχρονα παράλληλα συστήματα, ενώ παρουσιάζονται οι βιβλιοθήκες λογισμικού για επιστημονικούς υπολογισμούς που χρησιμοποιήθηκαν. Στο κεφάλαιο 2, παρουσιάζεται η υβριδική παράλληλη μέθοδος πολλαπλών προβολών (MPM) για την επίλυση γραμμικών συστημάτων μεγάλης τάξης με τη χρήση ημι-συσσωματωμένων υποχωρίων. Η κλάση των μεθόδων πολλαπλών προβολών κατατάσσεται στις μεθόδους αλγεβρικού διαχωρισμού του χωρίου, όπου τα τοπικά γραμμικά συστήματα περιέχουν αγνώστους υψηλής ακρίβειας καθώς και συσσωματωμένους (χαμηλής ακρίβειας) αγνώστους. Επιπλέον, έχει σχεδιαστεί ένας αλγόριθμος συμπίεσης του υποχωρίου για την μείωση των απαιτήσεων σε μνήμη της μεθόδου πολλαπλών προβολών (MPMSC). Ο αλγόριθμος βασίζεται στη διαδικασία της κατά πλάτος αναζήτησης με περιορισμένο βάθος, η οποία εφαρμόζεται στον γράφο που αντιστοιχεί στα ήδη συσσωματωμένα στοιχεία. Σχηματίζονται γειτονιές από συσσωματωμένα στοιχεία από τον προαναφερθέντα αλγόριθμο και κάθε γειτονιά επανασυσσωματώνεται δημιουργώντας ένα νέο στοιχείο. Στο κεφάλαιο 3, έχει προταθεί ένας υβριδικός παράλληλος επιλυτής του συμπληρώματος Schur που χρησιμοποιεί μια διαδικασία ημι-συσσωμάτωσης των εσωτερικών συνόρων. Επιπλέον, προτείνεται μία υβριδική παράλληλη μέθοδος αλγεβρικού διαχωρισμού του χωρίου με δύο στάδια, η οποία σχεδιάστηκε κατάλληλα για συστήματα κατανεμημένης μνήμης με πολυπύρηνους επεξεργαστές. Η μέθοδος πολλαπλών προβολών με δύο στάδια (2s-MPM) βασίζεται σε τεχνικές του άνω συμπληρώματος Schur, οι οποίες εφαρμόζονται στα τοπικά γραμμικά συστήματα, και σε δύο διαδικασίες ημι-συσσωμάτωσης, μία για κάθε στάδιο. Αρχικά τα υποχωρία ανατίθενται στους υπολογιστικούς κόμβους του συστήματος κατανεμημένης μνήμης και η πρώτη διαδικασία ημι-συσσωμάτωσης εφαρμόζεται ώστε να σχηματιστούν τα τοπικά ημι-συσσωματωμένα γραμμικά συστήματα που σχετίζονται με του υπολογιστικούς κόμβους. Χρησιμοποιήθηκαν τεχνικές του άνω συμπληρώματος Schur ώστε να διαχωριστούν τα στοιχεία υψήλης ακρίβειας από τα συσσωματωμένα στοιχεία του κάθε ημι-συσσωματωμένου γραμμικού συστήματος. Η δεύτερη διαδικασία ημι-συσσωμάτωσης σχετίζεται με του πυρήνες του κάθε πολυπύρηνου επεξεργαστή. Επιπλέον, μία τεχνική συμπίεσης του υποχωρίου έχει συνδυαστεί με τη μέθοδο πολλαπλών προβολών δύο σταδίων (2s-MPMSC), ώστε να μειωθούν οι απαιτήσεις σε μνήμη. Τα συσσωματωμένα στοιχεία των άλλων υπολογιστικών κόμβων επανασυσσωματώνονται από τον αλγόριθμο συμπίεσης του υποχωρίου που βασίζεται σε μία διαδικασία της κατά πλάτους αναζήτησης με περιορισμένο βάθος. Στο κεφάλαιο 4, το σχήμα προσυντονισμού πολλαπλών προβολών έχει επανασχεδιαστεί χρησιμοποιώντας προσυντονισμένες επαναληπτικές μεθόδους για την επίλυση των τοπικών γραμμικών συστημάτων, ώστε να είναι κατάλληλο για συστήματα κατανεμημένης μνήμης με επιταχυντές. Συγκεκριμένα, έχει χρησιμοποιηθεί η προσυντονισμένη μέθοδος συζυγών διευθύνσεων σε συνδυασμό με τον συμμετρικό παραγοντοποιημένο προσεγγιστικό αραιό αντίστροφο πίνακα (SFASI) για την επίλυση των τοπικών γραμμικών συστημάτων σε ένα παράλληλο σύστημα με Intel Xeon Phi. Οι πίνακες SFASI υπολογίζονται στη φάση προ-επεξεργασίας του προσυντονισμένου σχήματος. Τα ημι-συσσωματωμένα υποχωρία ανατίθενται κατά τέτοιο τρόπο ώστε κάθε πολυπύρηνος επεξεργαστής και κάθε επιταχυντής να αναλάβει την επίλυση ενός τοπικού γραμμικού συστήματος. Επιπλέον, έχουν χρησιμοποιηθεί οι flexible μέθοδοι του υποχώρου Krylov σε συνδυασμό με το επανασχεδιασμένο επαναληπτικό σχήμα πολλαπλών προβολών για την επίλυση γραμμικών συστημάτων σε παράλληλα συστήματα με κάρτες γραφικών. Έχουν υλοποιηθεί η flexible GMRES(m) (FGMRES(m)) μέθοδος και η ανακριβής προσυντονισμένη μέθοδος συζυγών διευθύνσεων για μη συμμετρικούς και συμμετρικούς συντελεστές πίνακες αντίστοιχα, με σκοπό την αξιοποίηση των διαθέσιμων υπολογιστικών πόρων του παράλληλου συστήματος με κάρτες γραφικών. Τα τοπικά επαναληπτικά σχήματα αποτελούνται από την προσυντονισμένη μέθοδο BiCGSTAB (PBiCGSTAB) σε συνδυασμό με τον τροποποιημένο γενικό παραγοντοποιημένο προσεγγιστικό αντίστροφο πίνακα (MGenFASpI) ή την προσυντονισμένη μέθοδο συζυγών διευθύνσεων σε συνδυασμό με τον πίνακα SFASI, για μη συμμετρικούς και συμμετρικούς συντελεστές πίνακες, αντίστοιχα. Επιπροσθέτως, έχει σχεδιαστεί και υλοποιηθεί ένας αλγόριθμος καταμερισμού του φόρτου για τον διαμοιρασμό του υπολογιστικού φόρτου ανάμεσα στους διαθέσιμους πολυπύρηνους επεξεργαστές και στις κάρτες γραφικών, ώστε να αξιοποιηθούν ταυτόχρονα οι δύο κατηγορίες υπολογιστικών πόρων. Επομένως, κάθε πολυπύρηνος επεξεργαστής αναλαμβάνει τους υπολογισμούς ενός τοπικού γραμμικού συστήματος, ενώ, κάθε κάρτα γραφικών αναλαμβάνει w υποχωρία. Ακόμα, έχουν μελετηθεί ποικίλα φαινόμενα που σχετίζονται με την μείωση της απόδοσης της μεθόδου λόγω της χρήσης υποδομών υπολογιστικού νέφους (cloud computing). Χαρακτηριστικό παράδειγμα αποτελεί το φαινόμενο του "θορυβώδους γείτονα'' (noisy neighbor), όπου οι εικονικοί επεξεργαστές μοιράζονται άνισα τους διαθέσιμους υπολογιστικούς πόρους του υπολογιστικού νέφους. Επίσης, το εύρος ζώνης και ο χρόνος απόκρισης του εικονικού δικτύου μπορεί να αποφέρουν μείωση στην απόδοση της μεθόδου σε περιβάλλον υπολογιστικού νέφους. Η ετερογένεια του υλικού των εικονικών υπολογιστικών πόρων, παραδείγματος χάριν η διαφορετική συχνότητα του επεξεργαστή, η κρυφή μνήμη (cache) και οι εντολές "μια εντολή - πολλαπλά δεδομένα'' (SIMD), συχνά προκαλούν ζητήματα απόδοσης. Στο κεφάλαιο 5, έχει σχεδιαστεί και υλοποιηθεί ένα υβριδικό παράλληλο αριθμητικό σχήμα διαχωρισμού του χωρίου και του χρόνου για την επίλυση παραβολικών μερικών διαφορικών εξισώσεων. Η προτεινόμενη μέθοδος βασίζεται στη διακριτοποίηση της χρονικής μεταβλητής με προς τα πίσω διαφορές ή με τη μέθοδο Crank-Nicolson, ενώ, οι χωρικές μεταβλητές διακριτοποιήθηκαν από τη μέθοδο των πεπερασμένων διαφορών. Ένα μεγάλο γραμμικό σύστημα σχηματίζεται από τη διακριτοποίηση, στην οποία συμμετέχουν πολλαπλά χρονικά βήματα. Eπομένως, περισσότερα από ένα χρονικά βήματα υπολογίζονται ταυτόχρονα με την επίλυση του. Η παράλληλη προσυντονισμένη μέθοδος PPGMRES(m) σε συνδυασμό με την μέθοδο πολλαπλών προβολών χρησιμοποιείται για την επίλυση του προαναφερθέντος γραμμικού συστήματος. Τα τοπικά γραμμικά συστήματα επιλύονται από άμεση μέθοδο. Η επίλυση πολλαπλών χρονικών βημάτων παράλληλα επιτρέπει την καλύτερη αξιοποίηση των υπερυπολογιστικών υποδομών, σε αντίθεση με τις κλασσικές μεθόδους που επιλύουν ένα γραμμικό σύστημα για κάθε χρονικό βήμα. Δύο διαφορετικά προβλήματα έχουν επιλυθεί ώστε να αξιολογηθεί η απόδοση του προτεινόμενου σχήματος σε υπερυπολογιστικές δομές: α) ένα δισδιάστατο πρόβλημα λεπτής πλάκας από σύνθετα υλικά και β) ένα τρισδιάστατο πρόβλημα μεταφοράς θερμότητας. Στο κεφάλαιο 6, δίνονται αριθμητικά αποτελέσματα για τα προτεινόμενα αριθμητικά σχήματα. Έχουν πραγματοποιηθεί αριθμητικά πειράματα σχετικά με την κλιμάκωση των προτεινόμενων μεθόδων σε υπολογιστικά συστήματα υψηλής απόδοσης, όπως η υπερυπολογιστική υποδομή ARIS HPC του Εθνικού Δικτύου Υποδομών Τεχνολογίας και Έρευνας. Επιπλέον, έχει μελετηθεί η συμπεριφορά σύγκλισης και η απόδοση των προτεινόμενων μεθόδων σε διάφορα προβλήματα που προέρχονται από μερικές διαφορικές εξισώσεις. Περαιτέρω, παρουσιάζονται συγκριτικά αποτελέσματα με κλασσικές μεθόδους που έχουν προταθεί από άλλους ερευνητές. Τέλος, παρατίθενται συμπερασματικές παρατηρήσεις σχετικά με τα προτεινόμενα υπολογιστικά σχήματα καθώς και προτάσεις για περαιτέρω μελλοντική έρευνα.