ΕπόμενοΕπόμενος οδηγός
Παραλληλισμός μοντέλου και αγωγών
Τεχνικά
Τεχνικός ΟΔΗΓΟΣ
Ένας τρόπος για να χωρίσετε τα μαθηματικά μέσα σε ένα ενιαίο επίπεδο νευρωνικού δικτύου σε πολλές GPU, έτσι ώστε ένα μοντέλο πολύ μεγάλο για μία συσκευή να μπορεί να συνεχίσει να λειτουργεί.
Ακούστε αυτόν τον οδηγόαφήγηση με AI · ~2 min
Έχει σημασία, επειδή τα μοντέλα συνόρων έχουν εκατοντάδες δισεκατομμύρια παραμέτρους που καμία GPU δεν μπορεί να κρατήσει ή να υπολογίσει αρκετά γρήγορα μόνη της.
Ο παραλληλισμός τανυστών (ονομάζεται επίσης παραλληλισμός μοντέλων εντός του επιπέδου) κατακερματίζει μεμονωμένους πίνακες βάρους σε όλες τις GPU αντί να τοποθετεί ολόκληρα επίπεδα σε ξεχωριστές συσκευές. Σε έναν μετασχηματιστή, οι πολλαπλασιασμοί μεγάλου πίνακα - προβολές προσοχής και MLP τροφοδοσίας - διαχωρίζονται: για παράδειγμα, ο πρώτος πίνακας βάρους του MLP διαιρείται με στήλες και ο δεύτερος κατά σειρές, έτσι κάθε GPU υπολογίζει ένα slice και μια μοναδική ολική μείωση συνδυάζει τα αποτελέσματα. Η προσοχή μοιράζεται μεταξύ των κεφαλών, με κάθε GPU να χειρίζεται ένα υποσύνολο. Επειδή κάθε GPU εκτελεί μέρος κάθε επιπέδου ταυτόχρονα, ο παραλληλισμός τανυστών μειώνει τη μνήμη ανά GPU και επιταχύνει τον υπολογισμό, αλλά απαιτεί συχνή επικοινωνία υψηλού εύρους ζώνης μεταξύ των GPU κάθε επιπέδου. Γι' αυτό συνήθως περιορίζεται σε έναν κόμβο που συνδέεται με το NVLink και συνδυάζεται με παραλληλισμό αγωγών και δεδομένων για πολύ μεγάλες εργασίες εκπαίδευσης και εξυπηρέτησης.
Εκπαίδευση ενός μοντέλου παραμέτρων 175B, μοιράζοντας τους πίνακες βάρους κάθε επιπέδου σε 8 GPU σε έναν κόμβο συνδεδεμένο με NVLink χρησιμοποιώντας Megatron-LM.
Εξυπηρέτηση ενός μοντέλου συνομιλίας παραμέτρων 70B σε vLLM με tensor_parallel_size=4, ώστε τα βάρη να χωρούν σε τέσσερις GPU και να ανταποκρίνονται σε πραγματικό χρόνο.
Διαχωρίζοντας την προσοχή του μετασχηματιστή σε όλες τις GPU, έτσι ώστε κάθε συσκευή να υπολογίζει ένα υποσύνολο και στη συνέχεια να συνενώνει τις εξόδους για το επόμενο επίπεδο.
Συνδυασμός παραλληλισμού τανυστών εντός κόμβων και παραλληλισμού αγωγών μεταξύ κόμβων για εκπαίδευση μοντέλων τρισεκατομμυρίων παραμέτρων σε μεγάλα συμπλέγματα GPU.
Ο παραλληλισμός τανυστών παραμένει θεμελιώδης, αλλά αναμειγνύεται ολοένα και περισσότερο στον «3D παραλληλισμό» (τανυστής + αγωγός + δεδομένα) και συνδυάζεται με τον ειδικό παραλληλισμό για μοντέλα Mixture-of-Experts. Πλαίσια όπως το Megatron-LM, το DeepSpeed και το vLLM αυτοματοποιούν τον διαμοιρασμό. Καθώς η GPU διασυνδέεται (NVLink, NVSwitch) και τα οπτικά υφάσματα γίνονται πιο γρήγορα, το όριο των ορίων κόμβου χαλαρώνει, επιτρέποντας ευρύτερες ομάδες τανυστών-παράλληλων. Αναμένετε πιο έξυπνη αυτόματη παραλληλοποίηση που επιλέγει διαστάσεις θραυσμάτων και μεγέθη ομάδων για να ελαχιστοποιήσει την επικοινωνία για μια δεδομένη τοπολογία συμπλέγματος.
Δωρεάν ενημερωτικό δελτίο
Τρία επαληθευμένα νέα AI κάθε πρωί της εβδομάδας, γραμμένα σε απλή αγγλική. Δωρεάν για πάντα, χωρίς διαφημίσεις.
Ένα email κάθε εργάσιμη ημέρα. Κατάργηση συνδρομής με ένα κλικ. Δεν πουλάμε ή μοιραζόμαστε ποτέ τη διεύθυνσή σας.
Δοκιμάστε τον εαυτό σας
Άμεση ανάδραση σε κάθε απάντηση, και πιστοποιητικό με επαληθεύσιμο ID μόλις περάσετε το μάθημα.
Υποστηρίξτε τη δωρεάν εκπαίδευση AI. AI Understanding είναι μια μη κερδοσκοπική οργάνωση 501(c)(3) — χωρίς διαφημίσεις, χωρίς τοίχο πληρωμής, ποτέ. Κάντε μια δωρεά
Ένας τρόπος για να χωρίσετε τα μαθηματικά μέσα σε ένα ενιαίο επίπεδο νευρωνικού δικτύου σε πολλές GPU, έτσι ώστε ένα μοντέλο πολύ μεγάλο για μία συσκευή να μπορεί να συνεχίσει να λειτουργεί. Έχει σημασία, επειδή τα μοντέλα συνόρων έχουν εκατοντάδες δισεκατομμύρια παραμέτρους που καμία GPU δεν μπορεί να κρατήσει ή να υπολογίσει αρκετά γρήγορα μόνη της.
Ο παραλληλισμός τανυστή (ενδο-στρώμα) κατακερματίζει τους πίνακες βάρους μέσα σε ένα επίπεδο, έτσι κάθε GPU υπολογίζει μέρος του ίδιου στρώματος—διαφορετικό από τον παραλληλισμό αγωγών, ο οποίος τοποθετεί ολόκληρα επίπεδα σε διαφορετικές GPU.
Ο διαχωρισμός του πρώτου πίνακα κατά στήλες επιτρέπει σε κάθε GPU να εφαρμόσει τη μη γραμμικότητα τοπικά. Ο διαχωρισμός του δεύτερου κατά σειρές σημαίνει ότι ένα μόνο άθροισμα όλων των εξόδων αθροίζει τις μερικές εξόδους - ελαχιστοποιώντας τον συγχρονισμό.
Κάθε επίπεδο ενεργοποιεί τη συλλογική επικοινωνία (όλα μειώνεται), επομένως η βαριά, ευαίσθητη σε καθυστέρηση κυκλοφορία απαιτεί γρήγορες συνδέσεις εντός κόμβων όπως το NVLink παρά πιο αργά δίκτυα μεταξύ κόμβων.
Οι κεφαλές προσοχής είναι ανεξάρτητες, επομένως κατανέμονται σε όλες τις GPU—κάθε συσκευή υπολογίζει ορισμένες κεφαλές και οι έξοδοι συνδυάζονται.
Το All-reduce αθροίζει τις μερικές εξόδους που υπολογίζονται σε κάθε GPU, ώστε να συμφωνούν για το αποτέλεσμα του επιπέδου. Αυτό συμβαίνει πολλές φορές ανά επίπεδο σε περάσματα προς τα εμπρός και προς τα πίσω.
Συνέχισε να μαθαίνεις
Επιλέχθηκαν περισσότεροι οδηγοί για αυτό το θέμα
ΕπόμενοΕπόμενος οδηγός
Παραλληλισμός μοντέλου και αγωγών
Τεχνικά