Σημαντικό ρόλο σε νέες εξελίξεις, σε τομείς όπως η φυσική, η ενέργεια και η επιστήμη των υλικών, έχουν πλέον οι απαιτητικές προσομοιώσεις που υλοποιούνται σε υπερυπολογιστικά συστήματα με χιλιάδες επεξεργαστικούς πυρήνες. Το νέο ευρωπαϊκό έργο EXA2PRO: Enhancing Programmability and boosting Performance Portability for Exascale Computing Systems σχεδιάζει και αναπτύσσει ένα προγραμματιστικό περιβάλλον κατάλληλο για την ανάπτυξη εφαρμογών σε Exascale υπερ-υπολογιστικά συστήματα, τα οποία αναμένεται πως θα είναι διαθέσιμα στην Ευρώπη μέσα στα επόμενα 5 έτη.
To έργο ξεκίνησε τον Μάιο του 2018, με τριετή διάρκεια, και έχει στόχο να αναπτύξει ένα προγραμματιστικό μοντέλο για την υλοποίηση απαιτητικών επιστημονικών εφαρμογών στα υπερυπολογιστικά συστήματα του μέλλοντος. Χρηματοδοτείται από το Πρόγραμμα Πλαίσιο για την έρευνα και την καινοτομία "Ορίζοντας 2020" της ΕΕ με το ποσό των 3,4 εκ. ευρώ. Συντονιστής του έργου είναι το Ερευνητικό Πανεπιστημιακό Ινστιτούτο Συστημάτων Επικοινωνιών και Υπολογιστών (ΕΠΙΣΕΥ) της Σχολής Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών του Εθνικού Μετσόβιου Πολυτεχνείου (ΕΜΠ), κσι πιο συγκεκριμένα η ερευνητική ομάδα του Αν. Καθηγητής Δημήτριου Σούντρη, ενώ στο έργο συμμετέχει από ελληνικής πλευράς και το Εθνικό Κέντρο Έρευνας και Τεχνολογικής Ανάπτυξης (ΕΚΕΤΑ). Στο έργο συμμετέχουν, επίσης, το Πανεπιστήμιο Linköping (Σουηδία), το INRIA (Γαλλία), το Jülich GmbH (Γερμανία), το Maxeler Technologies Limited (Ην. Βασίλειο) και το CNRS (Γαλλία).
Στο πλαίσιο του έργου αναπτύσσονται εργαλεία για την αντιμετώπιση σημαντικών προκλήσεων που συναντούν οι προγραμματιστές εφαρμογών σε υπερ-υπολογιστικά συστήματα: Η ολοένα αυξανόμενη ετερογένεια σε επίπεδο συστήματος, λόγω της ευρείας χρήσης εξειδικευμένων επιταχυντών, π.χ. μονάδων επεξεργασίας γραφικών (GPUs), επαναδιαμορφούμενων αρχιτεκτονικών (FPGAs), η αντιμετώπιση και διαχείριση μόνιμων ή παροδικών σφαλμάτων, η ποιότητα του πηγαίου των εφαρμογών που αναπτύσσονται στα συστήματα αυτά είναι ζητήματα που απασχολούν έντονα τους προγραμματιστές εφαρμογών, καθώς πραγματοποιείται η μετάβαση προς τα Exascale υπερ-υπολογιστικά συστήματα.
Το προγραμματιστικό περιβάλλον EXA2PRO θα αναπτύξει καινοτόμες μεθοδολογίες και εργαλεία λογισμικού που αντιμετωπίζουν τις παραπάνω προκλήσεις: ένα σύνολο από βελτιστοποιημένες βιβλιοθήκες υπολογιστικών προτύπων θα αξιοποιηθούν για την αυτοματοποιημένη και αποδοτική μεταγλώττιση και υλοποίηση εφαρμογών που εκτελούνται σε ετερογενή υπερ-υπολογιστικά συστήματα.
Επιπροσθέτως, μέσω ενός εξειδικευμένου συστήματος δυναμικής διαχείρισης πόρων και χρονο-προγραμματισμού οι διεργασίες της εφαρμογής θα κατανέμονται στο ετερογενές περιβάλλον με βέλτιστο τρόπο, λαμβάνοντας υπόψη κριτήρια όπως: η υψηλή απόδοση, η χαμηλή κατανάλωση ενέργειας και η αντιμετώπιση των σφαλμάτων. Τέλος, στο προγραμματιστικό περιβάλλον EXA2PRO θα ενσωματωθούν εργαλεία που βελτιώνουν την ποιότητα του πηγαίου κώδικα των εφαρμογών, ώστε να είναι ευκολότερα διαχειρίσιμες και επεκτάσιμες από τους προγραμματιστές.
Οι εφαρμογές που θα κάνουν χρήση του προγραμματιστικού περιβάλλοντας στο πλαίσιο του EXA2PRO και θα υλοποιηθούν στο υπερ-υπολογιστικό κέντρο Jülich, προέρχονται από τον χώρο της φυσικής υψηλών ενεργειών (LQCD), της επιστήμης υλικών (KKRnano και CO2 capture), καθώς και της ενέργειας (Metalwalls). Τα αποτελέσματα του έργου αναμένεται να έχουν σημαντική επίδραση στην επιστημονική κοινότητα και στη βιομηχανία.