Χρειάζεστε ένα μηχάνημα που μπορεί να εκτελέσει τρισεκατομμύρια υπολογισμούς κυμαινόμενου σημείου σε ένα δευτερόλεπτο; Or χρειάζεστε μια ωραία ιστορία για τον προσωπικό σας υπερυπολογιστή που έσβησε τα φώτα στο χωριό σας; Η κατασκευή ενός υπερυπολογιστή είναι μια ενδιαφέρουσα πρόκληση εάν είστε πλούσια ιδιοφυΐα με λίγο ελεύθερο χρόνο. Τεχνικά, ένας υπερυπολογιστής υπερυπολογιστή είναι ένα δίκτυο υπολογιστών που συνεργάζονται για την επίλυση ενός προβλήματος. Αυτό το άρθρο θα συζητήσει εν συντομία κάθε στάδιο της δημιουργίας του, εστιάζοντας στο υλικό και το λογισμικό.
Βήμα
Βήμα 1. Αρχικά, μάθετε ποια εξαρτήματα υλικού θα χρειαστείτε
Ένας κύριος κόμβος, τουλάχιστον δώδεκα πανομοιότυποι υπολογιστικοί κόμβοι, ένας διακόπτης Ethernet, μια μονάδα διανομής ισχύος (PDU) και ένα rack διακομιστή. Μάθετε επίσης για ηλεκτρική ενέργεια, ψύξη και ανάγκες χώρου. Καθορίστε τη διεύθυνση IP για το ιδιωτικό δίκτυο, τα ονόματα των κόμβων, τα πακέτα λογισμικού που θέλετε να εγκαταστήσετε και ποια τεχνολογία θέλετε να χρησιμοποιήσετε για να τα κάνετε όλα μαζί να εκτελούν παράλληλους υπολογισμούς (περισσότερα για αυτό παρακάτω).
- Παρόλο που το υλικό που θα χρειαστείτε είναι ακριβό, το λογισμικό σε αυτόν τον οδηγό είναι όλο δωρεάν και το μεγαλύτερο μέρος του είναι ανοιχτού κώδικα.
- Αν θέλετε να δείτε πόσο γρήγορος θα είναι ο υπερυπολογιστής σας (θεωρητικά), χρησιμοποιήστε αυτό:
Βήμα 2. Δημιουργήστε υπολογιστικούς κόμβους
Μπορείτε να συγκεντρώσετε μόνοι σας τους υπολογιστικούς κόμβους ή να χρησιμοποιήσετε έναν έτοιμο διακομιστή.
- Επιλέξτε ένα πλαίσιο διακομιστή υπολογιστή που μεγιστοποιεί το χώρο, την ψύξη και την ενεργειακή απόδοση.
- Or μπορείτε να χρησιμοποιήσετε περίπου δώδεκα ξεπερασμένους διακομιστές. Όταν χρησιμοποιούνται μαζί, είναι πολύ πιο χρήσιμα από ό, τι όταν χρησιμοποιούνται μεμονωμένα και μπορείτε να εξοικονομήσετε αρκετά. Όλοι οι επεξεργαστές, οι προσαρμογείς δικτύου και οι μητρικές πλακέτες πρέπει να είναι οι ίδιοι για να διασφαλίζεται η ομαλή λειτουργία του συστήματος. Φυσικά, μην ξεχνάτε τη μνήμη RAM και τη χωρητικότητα αποθήκευσης για κάθε κόμβο και τουλάχιστον μία μονάδα οπτικού δίσκου για τον κύριο κόμβο.
Βήμα 3. Τοποθετήστε τον διακομιστή που έχετε ενσωματώσει στο ράφι διακομιστή
Ξεκινήστε από κάτω για να αποφύγετε τις αντιρρήσεις στο επάνω μέρος. Προσκαλέστε έναν φίλο να σας βοηθήσει, καθώς τα υπερφορτωμένα σύνολα διακομιστών μπορεί να γίνουν τόσο βαριά που καθιστά δύσκολη την τοποθέτησή τους σε συρτάρια.
Βήμα 4. Τοποθετήστε το διακόπτη Ethernet πάνω από το πλαίσιο διακομιστή
Εκμεταλλευτείτε αυτήν την ευκαιρία για να το διαμορφώσετε: δώστε του μέγεθος καρέ 9000 byte, ορίστε τη διεύθυνση IP στη στατική διεύθυνση που καθορίσατε στο βήμα 1 και απενεργοποιήστε τα περιττά πρωτόκολλα δρομολόγησης όπως το SMTP Snooping.
Βήμα 5. Εγκαταστήστε τη μονάδα διανομής ισχύος
Μπορεί να χρειάζεστε 220 βολτ για υπολογιστές υψηλής απόδοσης, ανάλογα με το πόσο ρεύμα απαιτεί ο κόμβος στο μέγιστο φορτίο.
Βήμα 6. Μόλις εγκατασταθούν όλα, μπορείτε να ξεκινήσετε τη διαδικασία διαμόρφωσης
Το Linux είναι ένα λειτουργικό σύστημα που πρέπει να χρησιμοποιείται για υπολογιστικά συμπλέγματα υψηλής απόδοσης, γιατί εκτός από ιδανικό για επιστημονικούς υπολογιστές, είναι επίσης 100% δωρεάν. Με κόμβους που αγγίζουν εκατοντάδες ή και χιλιάδες, σίγουρα θα είναι πολύ ακριβό αν χρησιμοποιείτε Windows!
- Ξεκινήστε εγκαθιστώντας την πιο πρόσφατη έκδοση του BIOS της μητρικής πλακέτας και του υλικολογισμικού. Η εγκατεστημένη έκδοση πρέπει να είναι η ίδια για όλους τους κόμβους. Ξεκινήστε με την εγκατάσταση της πιο πρόσφατης έκδοσης του BIOS της μητρικής πλακέτας και του υλικολογισμικού, η οποία θα πρέπει να είναι η ίδια σε όλους τους κόμβους.
- Εγκαταστήστε τη διανομή Linux που θέλετε σε κάθε κόμβο, με μια γραφική διεπαφή στον κύριο κόμβο. Δημοφιλείς επιλογές είναι τα CentOS, OpenSuse, Scientific Linux, RedHat και SLES.
- Ο συγγραφέας συνιστά ανεπιφύλακτα τη χρήση της διανομής συμπλεγμάτων Rocks. Το Rocks θα εγκαταστήσει αμέσως όλα τα προγράμματα που χρειάζεται ο υπερυπολογιστής σας για να λειτουργήσει και θα χρησιμοποιήσει έναν έξυπνο τρόπο για να «μοιραστεί» τον εαυτό του σε όλους τους υπάρχοντες κόμβους χρησιμοποιώντας την εκκίνηση PXE της Red Hat και τη διαδικασία «Kick Start».
Βήμα 7. Εγκαταστήστε τη διεπαφή ανταλλαγής μηνυμάτων, τη διαχείριση πόρων και άλλες βασικές βιβλιοθήκες λογισμικού
Εάν δεν εγκαταστήσατε το Rocks στο προηγούμενο βήμα, θα πρέπει να προετοιμάσετε μόνοι σας το λογισμικό που απαιτείται για την τροφοδοσία του παράλληλου υπολογιστικού μηχανισμού.
- Πρώτον, θα χρειαστείτε ένα φορητό σύστημα διαχείρισης bash όπως το Torque Resource Manager, το οποίο θα κάνει την κοινή χρήση εργασιών μεταξύ των μηχανών.
- Ζεύγος ροπής με τον προγραμματιστή συμπλέγματος Maui για να ολοκληρώσετε τη ρύθμιση.
- Στη συνέχεια, πρέπει να εγκαταστήσετε τη διεπαφή ανταλλαγής μηνυμάτων, η οποία απαιτείται για να κάνετε ξεχωριστούς υπολογιστικούς κόμβους να μοιράζονται τα ίδια δεδομένα. Το OpenMP είναι μια σίγουρη επιλογή.
- Μην ξεχνάτε τις βιβλιοθήκες και τους μεταγλωττιστές μαθηματικών πολλαπλών νημάτων για να δημιουργήσετε τα παράλληλα υπολογιστικά προγράμματα που χρειάζεστε. Or, απλώς εγκαταστήστε το Rocks για να το κάνετε ακόμα πιο εύκολο.
Βήμα 8. Συνδυάστε όλους τους υπολογιστικούς κόμβους σε ένα δίκτυο
Ο κύριος κόμβος θα στείλει υπολογιστικές εργασίες στον υπολογιστικό κόμβο, ο οποίος στη συνέχεια πρέπει να στείλει πίσω τα αποτελέσματα ενώ ανταλλάσσει μηνύματα μεταξύ τους. Οσο νωρίτερα τόσο το καλύτερο.
- Χρησιμοποιήστε ένα ιδιωτικό δίκτυο ethernet για να συνδέσετε όλους τους κόμβους στο σύμπλεγμα υπερυπολογιστών σας.
- Ο κύριος κόμβος μπορεί να είναι διακομιστής NFS, PXE, DHCP, TFTP και NTP στο δίκτυο ethernet.
- Πρέπει να διαχωρίσετε αυτό το δίκτυο από το δημόσιο δίκτυο για να διασφαλίσετε ότι τα πακέτα που αποστέλλονται δεν επηρεάζουν άλλα δίκτυα στο τοπικό σας δίκτυο.
Βήμα 9. Δοκιμάστε τον υπερυπολογιστή που έχετε δημιουργήσει
Πριν από τη χρήση από άλλους, σας συνιστούμε να δοκιμάσετε πρώτα την απόδοση του υπερυπολογιστή σας. Το HPL (High Performance Linpack) είναι ένα δημοφιλές σημείο αναφοράς για τη μέτρηση της ταχύτητας υπολογισμού των υπερυπολογιστών. Θα χρειαστεί να κάνετε μεταγλώττιση από την πηγή, με όλες τις επιλογές βελτιστοποίησης που προσφέρει ο μεταγλωττιστής που χρησιμοποιείτε για την αρχιτεκτονική που έχετε επιλέξει.
- Φυσικά, πρέπει να μεταγλωττίσετε από την πηγή με όλες τις πιθανές επιλογές βελτιστοποίησης για την πλατφόρμα σας. Για παράδειγμα, εάν χρησιμοποιείτε επεξεργαστή AMD, μεταγλωττίστε το χρησιμοποιώντας το Open64 με επίπεδο βελτιστοποίησης -0 fast.
- Συγκρίνετε τα αποτελέσματα των δοκιμών σας στο TOP500.org για να συγκρίνετε τον υπερυπολογιστή σας με τους 500 ταχύτερους υπερυπολογιστές στον κόσμο!
Συμβουλές
- Για υψηλές ταχύτητες δικτύου, ρίξτε μια ματιά στη διεπαφή δικτύου InfiniBand. Φυσικά, πρέπει να είστε έτοιμοι να πληρώσετε μια premium τιμή.
- Το IPMI μπορεί να απλοποιήσει τη διαχείριση μεγάλων συμπλεγμάτων υπερυπολογιστών παρέχοντας KVM-over-IP, απομακρυσμένο έλεγχο κύκλου ισχύος και άλλες δυνατότητες.
- Χρησιμοποιήστε το Ganglia για να παρακολουθείτε τον υπολογισμό του φορτίου στους κόμβους.