νέα

ένα άλλο τσιπ για πρόκληση gpu

2024-10-04

한어한어Русский языкРусский языкEnglishEnglishFrançaisFrançaisIndonesianSanskritIndonesian日本語SanskritDeutsch日本語PortuguêsDeutschΕλληνικάPortuguêsespañolΕλληνικάItalianoespañolSuomalainenItalianoLatinaSuomalainenLatina

περίληψη

για ένα llm 3 δισεκατομμυρίων παραμέτρων, ένα πρωτότυπο ερευνητικό εργαλείο συμπερασμάτων με 16 επεξεργαστές ibm aiu northpole παρέδωσε τεράστια απόδοση συστήματος 28.356 token/δευτερόλεπτο και λιγότερο από 1 ms/token (ανά χρήστη) λανθάνουσα κατάσταση σε σύγκριση με 16 κάθε κάρτα northpole καταναλώνει μόνο 672 w σε ένας συμπαγής παράγοντας μορφής 2u. εστιάζοντας στη χαμηλή καθυστέρηση και την υψηλή ενεργειακή απόδοση, το northpole (12 nm) συγκρίνεται με ένα σύνολο gpu (7/5/4 nm) σε διάφορες καταναλώσεις ενέργειας.στη χαμηλότερη καθυστέρηση gpu, το northpole παρέχει 72,7 καλύτερες μετρήσεις ενεργειακής απόδοσης (token/s/w) ενώ παρέχει καλύτερη καθυστέρηση.

παρουσιάζω

τα μοντέλα μεγάλων γλωσσών (llm) έχουν επιτύχει σημαντικά σημεία αναφοράς απόδοσης σε διαφορετικές εργασίες ai, όπως υποβοήθηση προγραμματισμού παρέχοντας προτάσεις κώδικα, καλή απόδοση σε τυποποιημένες δοκιμές και βοήθεια στη δημιουργία περιεχομένου άρθρων, ιστολογίων, εικόνων και βίντεο.

στη μεγάλης κλίμακας ανάπτυξη των llm, ειδικά στη μεγάλης κλίμακας ανάπτυξη τεχνητής νοημοσύνης, προκύπτουν δύο κύριες και αντικρουόμενες προκλήσεις, συγκεκριμένα: κατανάλωση ενέργειας και καθυστέρηση απόκρισης.

πρώτον, δεδομένου ότι το llm απαιτεί σημαντικούς ενεργειακούς πόρους τόσο για εκπαίδευση όσο και για εξαγωγή συμπερασμάτων, απαιτείται μια βιώσιμη μελλοντική υπολογιστική υποδομή για να επιτευχθεί η αποτελεσματική και ευρεία ανάπτυξή του. καθώς τα αποτυπώματα άνθρακα των κέντρων δεδομένων επεκτείνονται και περιορίζονται όλο και περισσότερο στην ενέργεια, η ενεργειακή απόδοση των κέντρων δεδομένων γίνεται ολοένα και πιο σημαντική. σύμφωνα με έκθεση του παγκόσμιου οικονομικού φόρουμ:

"προς το παρόν, το περιβαλλοντικό αποτύπωμα άνθρακα των κέντρων δεδομένων χωρίζεται κυρίως σε δύο μέρη: η εκπαίδευση αντιπροσωπεύει το 20% και το συμπέρασμα αντιπροσωπεύει το 80%. καθώς τα μοντέλα τεχνητής νοημοσύνης αναπτύσσονται σε διαφορετικούς τομείς, η ζήτηση για συμπέρασμα και το περιβαλλοντικό αποτύπωμά της θα κλιμακωθεί. "

δεύτερον, πολλές εφαρμογές, όπως οι διαδραστικές συνομιλίες και οι αυτόνομες ροές εργασίας, απαιτούν πολύ χαμηλό λανθάνοντα χρόνο. μέσα σε μια δεδομένη αρχιτεκτονική υπολογιστών, η μείωση της καθυστέρησης μπορεί να επιτευχθεί με τη μείωση της απόδοσης, αλλά αυτό έχει ως αποτέλεσμα μειωμένη ενεργειακή απόδοση. για να παραφράσουμε ένα κλασικό αξίωμα του συστήματος:

"το πρόβλημα της απόδοσης μπορεί να λυθεί με χρήματα, αλλά το πρόβλημα της καθυστέρησης είναι πιο περίπλοκο επειδή η ταχύτητα του φωτός είναι σταθερή (παράφραση από το [10], αντικαθιστώντας το "εύρος ζώνης" με το "throughput".)

οι gpu μπορούν να επιτύχουν χαμηλότερη καθυστέρηση χρησιμοποιώντας μικρότερα μεγέθη παρτίδων, αλλά σε βάρος της απόδοσης και της ενεργειακής απόδοσης. επιπλέον, η κοινή χρήση gpu μειώνει τον λανθάνοντα χρόνο χρησιμοποιώντας τον παραλληλισμό δεδομένων μεταξύ πολλών gpu, αλλά και πάλι σε βάρος της ενεργειακής απόδοσης. με κοινή χρήση ή όχι, οι gpu φαίνεται να αγγίζουν ένα σκληρό όριο με χαμηλότερη καθυστέρηση. η αντιστάθμιση της gpu μεταξύ ενεργειακής απόδοσης και καθυστέρησης φαίνεται στο σχήμα 1.

εικόνα 1: απόδοση northpole (12 nm) σε σχέση με τις τρέχουσες υπερσύγχρονες gpu (7/5/4 nm) σε μετρήσεις ενέργειας και λανθάνοντος χρόνου συστήματος, όπου η καθυστέρηση συστήματος είναι η συνολική καθυστέρηση που βιώνει κάθε χρήστης. στη χαμηλότερη καθυστέρηση gpu (h100, σημείο p2), το northpole παρέχει 72,7 φορές καλύτερες μετρήσεις ενεργειακής απόδοσης (tokens/second/w). στον καλύτερο δείκτη ενεργειακής απόδοσης gpu (l4, σημείο p1), το northpole παρέχει 46,9 φορές χαμηλότερο λανθάνοντα χρόνο.

επομένως, ένα βασικό ερευνητικό ερώτημα που διερευνάται σε αυτό το έγγραφο είναι πώς να επιτευχθούν ταυτόχρονα οι δύο αντικρουόμενοι στόχοι της χαμηλής καθυστέρησης και της υψηλής ενεργειακής απόδοσης.

το northpole είναι ένα οικοσύστημα από τσιπ επιταχυντή συμπερασμάτων και λογισμικό που έχει σχεδιαστεί από κοινού από τις πρώτες αρχές για να παρέχει ανώτερη απόδοση για συμπερασματικά νευρωνικά δίκτυα. αν και το northpole δεν σχεδιάστηκε ειδικά για llm, παραδόξως, αυτό το έγγραφο καταδεικνύει ότι η νέα αρχιτεκτονική του northpole μπορεί να επιτύχει συμπέρασμα llm χαμηλής καθυστέρησης, ενεργειακά αποδοτικό (εικόνα 1, σχήμα 2 και πίνακας 1).

πίνακας ι: μετρήσεις απόδοσης

μετρήθηκε η απόδοση των συστημάτων northpole και gpu σε βάση ανά κάρτα. για κάθε μέτρηση, # σημαίνει χαμηλότερο είναι καλύτερο, ενώ "σημαίνει υψηλότερο είναι καλύτερο. για συσκευές 16 καρτών northpole, η κατανάλωση ενέργειας μετράται ανά κάρτα και η συνολική απόδοση του συστήματος διαιρείται με 16 κάρτες. ο λανθάνοντας χρόνος του northpole και στις 16 κάρτες για μέτρηση. p1 , p2, p3 και p4 αναφέρονται στα σημεία που επισημαίνονται στο σχήμα 1 και στο σχήμα 2, αντίστοιχα, υποδεικνύοντας τον υψηλότερο δείκτη ενεργειακής απόδοσης gpu, τη χαμηλότερη συνολική καθυστέρηση gpu, τον υψηλότερο δείκτη χώρου gpu και τη χαμηλότερη ενεργειακή καθυστέρηση gpu.

τα κύρια ερευνητικά αποτελέσματα αυτού του άρθρου είναι τα ακόλουθα:

για ένα μοντέλο μεγάλης γλώσσας (llm) με μέγεθος παραμέτρου 3 δισεκατομμύρια, του οποίου η δομή του μοντέλου προέρχεται από το μοντέλο ibm granite-8b-code-base και είναι συνεπές με το llama 3 8b και το mistral 7b [14], αυτό το έγγραφο δείχνει ένα configuration έρευνα πρωτοτύπου συσκευής συμπερασμάτων με 16 επεξεργαστές northpole.

όσον αφορά την απόλυτη απόδοση, η συσκευή προσφέρει 28.356 tokens/sec απόδοσης συστήματος και καθυστέρηση για έναν χρήστη λιγότερο από 1 χιλιοστό του δευτερολέπτου, ενώ καταναλώνει 672 watt ισχύος σε 16 κάρτες northpole σε ένα μοντέλο 2u.

όσον αφορά τη σχετική απόδοση, συγκρίνοντας το 12nm northpole με μια σειρά από gpu (7/5/5/4nm a100/l4/l40s/h100 αντίστοιχα) σε διαφορετικές καταναλώσεις ενέργειας, μπορεί να φανεί από το σχήμα 2(α) και όπως φαίνεται φαίνεται στο σχήμα 2(γ): στη χαμηλότερη καθυστέρηση gpu (σημείο p2), ο northpole παρέχει 72,7 φορές καλύτερες μετρήσεις ενεργειακής απόδοσης (token / δευτερόλεπτο / w) και 15,9 φορές καλύτερες μετρήσεις χώρου (tokens / δευτερόλεπτο / τρανζίστορ), ενώ το η καθυστέρηση εξακολουθεί να είναι μικρότερη από 2,5 φορές στον καλύτερο δείκτη ενεργειακής απόδοσης gpu (σημείο p1), ο northpole παρέχει 46,9 φορές χαμηλότερο λανθάνοντα χρόνο και 2,1 φορές καλύτερους δείκτες χώρου, ενώ εξακολουθεί να παρέχει 2,2 φορές καλύτερη μετρική ενεργειακής απόδοσης. σημείο p3), το northpole παρέχει 20,3 φορές χαμηλότερο λανθάνοντα χρόνο και 5,3 φορές καλύτερες μετρήσεις ενεργειακής απόδοσης, ενώ εξακολουθεί να παρέχει 1,4 φορές καλύτερες μετρήσεις χώρου.

ειδικότερα, όταν συγκρίνουμε το northpole 12nm με την gpu 5nm l4 για συγκρίσιμη κατανάλωση ενέργειας, μπορεί να φανεί από το σχήμα 2(ε) ότι στην υψηλότερη απόδοση l4 (λιγότερο από 50ms ανά διακριτικό, σημείο p1) ώρα,το northpole παρέχει 46,9 φορές χαμηλότερο λανθάνοντα χρόνο ενώ βελτιώνει την απόδοση κατά 1,3 φορές και στη χαμηλότερη καθυστέρηση l4 (σημείο p4), ο northpole παρέχει 36,0 φορές υψηλότερη απόδοση (token/δευτερόλεπτο/κάρτα) ενώ βελτιώνει την καθυστέρηση ακόμα κάτω από 5,1x.

σχήμα 2: (α)–(δ) οι πίνακες δείχνουν την απόδοση του northpole 12 nm σε σχέση με τις τρέχουσες υπερσύγχρονες gpu (7/5/4nm) σε μετρήσεις ενεργειακής απόδοσης, χώρου και καθυστέρησης συστήματος, όπου ο λανθάνοντας χρόνος συστήματος είναι ανά η συνολική καθυστέρηση που βιώνει ο χρήστης.

το πλαίσιο (α) είναι το ίδιο με το σχήμα 1, με την προστιθέμενη επισήμανση του σημείου p3. τα πάνελ (α) και (γ) χρησιμοποιούν μια ενιαία gpu, ενώ τα πάνελ (β) και (δ) χρησιμοποιούν τεχνολογία διαμοιρασμού, η οποία μπορεί να μειώσει τον λανθάνοντα χρόνο, αλλά μόνο σε βάρος της ενεργειακής απόδοσης και του χώρου. στη χαμηλότερη καθυστέρηση gpu (h100, σημείο p2), ο northpole παρέχει 72,7 φορές καλύτερες μετρήσεις ενεργειακής απόδοσης (tokens/second/w) και 15,9x καλύτερες μετρήσεις χώρου (tokens/second/transistor) ενώ εξακολουθεί να έχει χαμηλή καθυστέρηση πάνω από 2,5 φορές. με τον καλύτερο δείκτη ενεργειακής απόδοσης gpu (l4, σημείο p1), το northpole παρέχει 46,9 φορές χαμηλότερο λανθάνοντα χρόνο και 2,1 φορές καλύτερο δείκτη χώρου, ενώ εξακολουθεί να παρέχει 2,2 φορές καλύτερο δείκτη ενεργειακής απόδοσης στην καλύτερη περίπτωση όταν πρόκειται για χωρικές μετρήσεις gpu (a100 σημείο p3), ο northpole παρέχει 20,3 φορές χαμηλότερο λανθάνοντα χρόνο και 5,3 φορές καλύτερες μετρήσεις ενεργειακής απόδοσης, ενώ εξακολουθεί να παρέχει 1,4 φορές καλύτερες χωρικές μετρήσεις.

ο πίνακας (ε) δείχνει την απόδοση του northpole 12nm σε σχέση με την gpu 5nm l4 σε μετρήσεις απόδοσης (token/δευτερόλεπτο/κάρτα) και λανθάνουσα κατάσταση συστήματος. στη χαμηλότερη καθυστέρηση l4 (σημείο p4), ο northpole παρέχει 36,0 φορές υψηλότερη απόδοση στην υψηλότερη απόδοση l4 (λιγότερο από 50 χιλιοστά του δευτερολέπτου ανά διακριτικό, σημείο p1), ο northpole παρέχει 46,9 φορές χαμηλότερο λανθάνοντα χρόνο. η κατανάλωση ενέργειας της gpu που χρησιμοποιείται για τον υπολογισμό κάθε μέτρησης ενεργειακής απόδοσης φαίνεται στον πίνακα i. δεδομένου ότι δεν υπάρχουν διαθέσιμα όργανα για τη μέτρηση της πραγματικής κατανάλωσης ενέργειας για διαφορετικά μεγέθη παρτίδων, η ίδια ισχύς χρησιμοποιείται για όλα τα μεγέθη παρτίδων, γεγονός που μπορεί να υποτιμά τη μέτρηση ενεργειακής απόδοσης, αλλά τα ποιοτικά αποτελέσματα εξακολουθούν να ισχύουν.

αρχιτεκτονική northpole

όπως φαίνεται στο σχήμα 3, ο επεξεργαστής northpole κατασκευάζεται με τεχνολογία διεργασίας 12 νανομέτρων, έχει 22 δισεκατομμύρια τρανζίστορ και έχει επιφάνεια 795 τετραγωνικά χιλιοστά. η αρχιτεκτονική του είναι εμπνευσμένη από τον εγκέφαλο, βελτιστοποιημένη για πυρίτιο και προέρχεται από δέκα συμπληρωματικά σχεδιαστικά αξιώματα που καλύπτουν υπολογιστές, αποθήκευση, επικοινωνία και έλεγχο, επιτρέποντας στο northpole να ξεπερνά σημαντικά τις άλλες αρχιτεκτονικές σε τυπικές εργασίες συμπερασμάτων ai.έχει καλή απόδοση ακόμη και σε σύγκριση με επεξεργαστές που κατασκευάζονται με πιο προηγμένες τεχνολογίες διεργασιών.

για λεπτομερή αξιώματα της αρχιτεκτονικής του βόρειου πόλου, βλέπε [11], [12]. με απλά λόγια, το northpole τακτοποιεί 256 αρθρωτούς πυρήνες σε μια δισδιάστατη διάταξη 16×16. κάθε πυρήνας περιέχει έναν πολλαπλασιαστή διανυσμάτων-μήτρας (vmm) που εκτελεί 2048, 4096 και 8192 λειτουργίες ανά κύκλο με ακρίβεια int8, int4 και int2, αντίστοιχα. ο υπολογισμός πυρήνα περιλαμβάνει επίσης μια διανυσματική μονάδα fp16 4 κατευθύνσεων, 32 τμημάτων και μια μονάδα λειτουργίας ενεργοποίησης 32 τμημάτων. ο πυρήνας έχει συνολικά 192 mb sram, με κάθε πυρήνα εξοπλισμένο με 0,75 mb sram. η μνήμη στο τσιπ είναι στενά συνδεδεμένη με την υπολογιστική μονάδα και τη λογική ελέγχου, με συνολικό εύρος ζώνης 13 tb/s μεταξύ της μνήμης πυρήνα και του υπολογιστή. επιπλέον, κάθε πυρήνας έχει 4096 καλώδια που διασχίζουν οριζόντια και κάθετα για τη διέλευση παραμέτρων, οδηγιών, τιμών ενεργοποίησης και μερικών αθροισμάτων μέσω τεσσάρων αποκλειστικών δικτύων σε ένα τσιπ (nocs).για την αποφυγή ακινητοποίησης, μια προσωρινή μνήμη πλαισίου στο τσιπ είναι εξοπλισμένη με 32 mb sram, αποσυνδέοντας την επικοινωνία εκτός τσιπ δεδομένων εισόδου και εξόδου από τον υπολογισμό στο τσιπ της κεντρικής συστοιχίας.

εικόνα 3: επεξεργαστής northpole: πυρίτιο (αριστερά), μήτρα (μέση), συσκευασμένη μονάδα (δεξιά).

εξοπλισμός

η northpole έχει πρωτοτυπήσει το σχέδιο σε μια κάρτα pcie gen3 × 8, που φαίνεται στο σχήμα 4, με 16 κάρτες εγκατεστημένες σε έναν διακομιστή 2u εκτός ραφιού για να σχηματίσουν μια συσκευή εξαγωγής πρωτοτύπου έρευνας, που φαίνεται στο σχήμα 5. ο διακομιστής περιέχει δύο επεξεργαστές intel xeon gold 6438m, ο καθένας με 32 πυρήνες και 60 mb cache, χρονισμένους στα 2,2 ghz. το σύστημα διαθέτει επίσης 512 gb μνήμης ddr5 4800 mhz. δύο δίαυλοι pcie gen5 × 16 συνδέονται σε κάθε επεξεργαστή διακομιστή, παρέχοντας συνολικά 256 gb/s εύρους ζώνης pcie (αμφίδρομη). αυτοί οι τέσσερις δίαυλοι επεκτείνονται στις 16 υποδοχές pcie του συστήματος μέσω γεφυρών pcie, με μια κάρτα northpole εγκατεστημένη σε κάθε υποδοχή. αυτές οι 16 κάρτες northpole χρησιμοποιούν έως και το ήμισυ του διαθέσιμου εύρους ζώνης pcie 256 gb/s.

εικόνα 4: κάρτα northpole pcie.

εικόνα 5: διευρυμένη όψη της ερευνητικής πρωτότυπης συσκευής που δείχνει την εγκατάσταση 16 καρτών northpole pcie. οι κάρτες northpole μπορούν να επικοινωνούν με τον κεντρικό υπολογιστή μέσω του τυπικού μοντέλου τελικού σημείου pcie ή άμεσα και πιο αποτελεσματικά μεταξύ τους μέσω πρόσθετων δυνατοτήτων υλικού σε κάθε κάρτα.

το σύστημα εκτελεί το red hat enterprise 8.9 και το northpole χρησιμοποιεί ένα ενσωματωμένο πρόγραμμα οδήγησης πυρήνα vfio, έτσι ώστε το λογισμικό χώρου χρήστη να μπορεί να διαχειρίζεται το υλικό. το σύστημα χρησιμοποιεί το iommu για τη διαχείριση μετάφρασης διευθύνσεων και επιτρέπει λειτουργίες ασφαλείας, όπως η απομόνωση συσκευών και η εικονικοποίηση, για την εκτέλεση εφαρμογών χρησιμοποιώντας τεχνολογία εικονικής μηχανής ή κοντέινερ.

κάθε κάρτα northpole λαμβάνει και μεταδίδει δεδομένα μέσω μιας μηχανής dma που βρίσκεται σε κάθε κάρτα. αυτοί οι κινητήρες dma λειτουργούν ανεξάρτητα και μπορούν ταυτόχρονα να λαμβάνουν και να μεταδίδουν τανυστές με πολλούς τρόπους. η πρώτη μέθοδος είναι το τυπικό μοντέλο τερματικού pcie, όπου το πρόγραμμα κεντρικού υπολογιστή διαβάζει την είσοδο από τη μνήμη κεντρικού υπολογιστή μέσω της μηχανής dma και εγγράφει τους τανυστές στη μνήμη κεντρικού υπολογιστή μετά την ολοκλήρωση του υπολογισμού. η δεύτερη προσέγγιση αξιοποιεί πρόσθετες δυνατότητες υλικού σε κάθε κάρτα για να επιτρέψει στις κάρτες northpole να επικοινωνούν απευθείας μεταξύ τους μέσω pcie χωρίς την ανάγκη μεταφοράς μεταξύ μνήμης κεντρικού υπολογιστή ή πρόσθετης διαχείρισης λογισμικού κατά το χρόνο εκτέλεσης. η απευθείας επικοινωνία μεταξύ του northpole επιτρέπει σε μεγαλύτερα μοντέλα να εκτείνονται σε πολλαπλά τσιπ northpole, ενώ μειώνει τον λανθάνοντα χρόνο επικοινωνίας και την επιβάρυνση που προκαλείται από ένα αμιγώς σύστημα διαχείρισης λογισμικού.

αντιστοίχιση llm σε συσκευές northpole

η στρατηγική για τη χαρτογράφηση των llms, που απεικονίζεται στο σχήμα 6, είναι εμπνευσμένη από τρεις βασικές παρατηρήσεις. πρώτον, για αρκετά μεγάλα μοντέλα, ολόκληρο το στρώμα μετασχηματιστή μπορεί να χωρέσει εξ ολοκλήρου στη μνήμη ενός τσιπ northpole ("w4a4") χρησιμοποιώντας βάρη, ενεργοποιήσεις και buffers kv σε μορφή int4, ενώ το επίπεδο εξόδου μπορεί να χωρέσει σε δύο στο τσιπ. δεύτερον, εάν το βάρος και η κρυφή μνήμη kv βρίσκονται εξ ολοκλήρου στο τσιπ, ο χρόνος εκτέλεσης χρειάζεται μόνο να μεταφέρει μικρούς ενσωματωμένους τανυστές μεταξύ των επιπέδων, το οποίο βρίσκεται εντός του εύρους ζώνης του pcie gen3 × 8. τρίτον, οι πρωτότυπες συσκευές northpole μπορούν εύκολα να συναρμολογηθούν εγκαθιστώντας 16 κάρτες northpole pcie σε έναν διακομιστή εκτός ραφιού.

αυτό προτείνει μια στρατηγική αντιστοίχισης κάθε επιπέδου μετασχηματιστή στην αντίστοιχη κάρτα του northpole, χρησιμοποιώντας παραλληλισμό σωλήνωσης τύπου gpipe και διαχωρισμό του επιπέδου εξόδου στις δύο κάρτες northpole, χρησιμοποιώντας παραλληλισμό τανυστή, μέσω του pcie gen3 × 8 στέλνει τον τανυστή ενσωμάτωσης μεταξύ των επιπέδων.κατά τη διάρκεια της εξαγωγής συμπερασμάτων, μια μικρή παρτίδα αιτημάτων χρήστη (π.χ., n αιτήματα) χωρίζεται σε ίσες μικρο-παρτίδες m και διοχετεύεται μέσω 16 καρτών northpole.

ενώ ο παραλληλισμός αγωγών έχει αξιοποιηθεί στην εκπαίδευση llm (χωρίς περιορισμούς λανθάνοντος χρόνου), η χρήση του στην εξαγωγή συμπερασμάτων έχει περιοριστεί από το μέγεθος παρτίδας που απαιτείται για τη μείωση του χρόνου αδράνειας κάθε σταδίου αγωγού ή φυσαλίδων αγωγού. για παράδειγμα, ορισμένες μελέτες έχουν βρει ότι η αποτελεσματική εκπαίδευση απαιτεί ο αριθμός των μικρο-παρτίδων m να είναι περίπου τετραπλάσιος του αριθμού των σταδίων του αγωγού. το μέγεθος mini-batch n περιορίζεται από (α) τον λανθάνοντα χρόνο ανά διακριτικό που απαιτείται από το σύστημα και (β) τη διαθέσιμη μνήμη για την κρυφή μνήμη kv για την αποθήκευση ολόκληρης της μίνι-παρτίδας. ο υπολογισμός χαμηλής καθυστέρησης και το εύρος ζώνης μνήμης στο τσιπ 13 tb/s επιτρέπουν στο northpole να επιτύχει εξαιρετικά χαμηλό λανθάνοντα χρόνο ανά διακριτικό, επομένως ο περιοριστικός παράγοντας κατά την επιλογή n είναι η μνήμη που χρησιμοποιείται για την αποθήκευση ολόκληρης της κρυφής μνήμης kv στο τσιπ. επιπλέον, διαπιστώνουμε ότι ο αριθμός των μικρο-παρτίδων m ίσος με τον αριθμό των σταδίων του αγωγού είναι αρκετός για να κάνει τον χρόνο αδράνειας του αγωγού αμελητέο.

στα πειράματα που αναφέρονται σε αυτό το έγγραφο, επιλέξαμε ένα μέγεθος μίνι παρτίδας n = 28, χωρισμένο σε m = 14 ίσες μικρο-παρτίδες, με αποτέλεσμα ένα μέγεθος μικρο-παρτίδας 2 για κάθε υπολογισμό κάρτας northpole. οι επιλογές αρχιτεκτονικού σχεδιασμού μας για αποτελεσματικούς υπολογισμούς σε τόσο μικρά μεγέθη παρτίδων είναι το κλειδί για την επίτευξη των αποδόσεων που φαίνονται στο σχήμα 1 και στον πίνακα i.

μοντέλο llm και μέθοδος εκπαίδευσης

ενα

μοντέλο llm

το μοντέλο που χρησιμοποιήθηκε για τη δοκιμή του συστήματός μας βασίζεται στο μοντέλο ανοιχτού κώδικα ibm granite-8b-code-base, το οποίο είναι ένας μετασχηματιστής-αποκωδικοποιητής 8 δισεκατομμυρίων παραμέτρων που περιέχει 36 επίπεδα μετασχηματιστή με μέγεθος κρυφού στρώματος 4096 και μέγεθος ενδιάμεσου στρώματος ffn 14.336, ο αριθμός των κεφαλιών προσοχής είναι 32, ο αριθμός των κεφαλιών με τιμές κλειδιού που χρησιμοποιούν το grouped query attention (gqa) είναι 8 και το μέγεθος του λεξιλογίου είναι 49.152. για να χωρέσουμε σε έναν μόνο διακομιστή με 16 κάρτες northpole, χρησιμοποιήσαμε μια έκδοση 3 δισεκατομμυρίων παραμέτρων του μοντέλου με 14 επίπεδα μετασχηματιστή και ένα επίπεδο εξόδου, κβαντοποιημένο στην ακρίβεια w4a4, αλλά κατά τα άλλα η δομή παρέμεινε αμετάβλητη.

σημειωτέον, αυτή η διαμόρφωση μοντέλου ταιριάζει με το llama 3 8b [13] και το mistral 7b [14] σε βάση ανά επίπεδο, διαφέροντας μόνο ως προς τον αριθμό των επιπέδων, το μέγεθος του λεξιλογίου του μοντέλου και τα δεδομένα εκπαίδευσης που χρησιμοποιούνται.

σι

προπόνηση με πλήρη ακρίβεια

για να αποκατασταθεί η ακρίβεια εργασίας του αρχικού μοντέλου μετά την κβαντοποίηση, υιοθετήθηκε η ακόλουθη διαδικασία για τη δημιουργία βαρών μοντέλων. πρώτον, ένα βασικό μοντέλο εκπαιδεύεται από την αρχή με βάση 1 τρισεκατομμύριο διακριτικά κωδικού σε 116 γλώσσες, χρησιμοποιώντας πλήρη ακρίβεια fp16, ακολουθώντας τη συνταγή του [4]. στη συνέχεια, τα βάρη και οι είσοδοι του στρώματος εξόδου του βασικού μοντέλου και οι ενεργοποιήσεις silu κβαντίστηκαν int8, ενώ όλα τα άλλα βάρη, οι είσοδοι γραμμικού στρώματος και οι είσοδοι πολλαπλασιασμού μήτρας κβαντίστηκαν int4. τέλος, η ακρίβεια ποσοτικοποίησης μετά την ανάκτηση ποσοτικοποιήθηκε εκτελώντας εκπαίδευση με επίγνωση κβαντοποίησης σε επιπλέον 8,5 δισεκατομμύρια διακριτικά από το υποσύνολο γλώσσας python των δεδομένων εκπαίδευσης, με ρυθμό εκμάθησης 8×10-5 και μέγεθος παρτίδας 128, χρησιμοποιώντας τον αλγόριθμο lsq. το μέγεθος βήματος που ενεργοποιεί τον κβαντιστή εκπαιδεύεται χρησιμοποιώντας μια θερμή εκκίνηση, η οποία αυξάνει τον ρυθμό εκμάθησης κατά 200 στα πρώτα 250 βήματα της εκπαίδευσης για να βοηθήσει γρήγορα να προσαρμοστεί στα δεδομένα.

το βασικό μοντέλο fp16 που εκτελείται σε gpu και το κβαντισμένο μοντέλο που εκτελείται σε northpole πέτυχε ακρίβεια pass@10 στο humanevalsynthesize-python εντός 0,01 (0,3001 gpu έναντι 0,2922 northpole. συγκρίσιμο με το γενικό μοντέλο εκπαίδευσης granite-8b-code-base είναι μειωμένο κατά, να εστιάσουμε στον χαρακτηρισμό της απόδοσης του υλικού αντί να πιέζουμε τα όρια της ακρίβειας της εργασίας.

εφαρμογή χρόνου εκτέλεσης

κατά τη διάρκεια της εξαγωγής συμπερασμάτων, όπως φαίνεται στην εικόνα 6, δημιουργούνται κουπόνια από μια εφαρμογή χρήστη με μεγάλη διοχέτευση που εκτελείται στην κεντρική cpu, η οποία προεπεξεργάζεται κείμενο σε τανυστές εισόδου χρησιμοποιώντας tokenizers και ενσωματώνοντας επίπεδα και τοποθετεί τους τανυστές εισόδου στην πρώτη κάρτα northpole στη συσκευή , λαμβάνει τον τανυστή εξόδου που προκύπτει από την τελευταία κάρτα northpole στη συσκευή, επεξεργάζεται εκ των υστέρων τον τανυστή εξόδου χρησιμοποιώντας έναν αποκωδικοποιητή και αποτοκνοποιητή και επαναφέρει το διακριτικό που προκύπτει ως την επόμενη είσοδο. η εφαρμογή χρήστη είναι επίσης υπεύθυνη για τη διεπαφή χρήστη καθώς και για πιο προηγμένες βελτιστοποιήσεις, όπως η άμεση προ-πληθυσμός.

για να μεταφορτώσει το φόρτο εργασίας του νευρωνικού δικτύου στο northpole, η εφαρμογή χρήστη καλεί μια βιβλιοθήκη χρόνου εκτέλεσης χώρου χρήστη με ένα απλό api, διαμορφώνει τα βάρη στρώματος και την κρυφή μνήμη kv της κάρτας northpole κατά την προετοιμασία και στέλνει και λαμβάνει τανυστές εισόδου και εξόδου κατά το χρόνο εκτέλεσης.τα βάρη και η κρυφή μνήμη kv έχουν ρυθμιστεί ώστε να παραμένουν στη μνήμη του τσιπ και δεν χρειάζεται να μεταδίδονται εκτός τσιπ κατά τη διάρκεια εκτέλεσης. η βιβλιοθήκη χρόνου εκτέλεσης διαχειρίζεται επίσης την προσωρινή μνήμη πλαισίου στο τσιπ για να αποτρέψει το στασιμότητα του πυρήνα του northpole λόγω έλλειψης δεδομένων εισόδου ή δεκτών δεδομένων εξόδου. οι ενδιάμεσοι τανυστές περνούν μεταξύ των καρτών χωρίς παρέμβαση του κεντρικού υπολογιστή, όπως περιγράφεται στην ενότητα 4.

αποτελέσματα απόδοσης

η συσκευή 16 καρτών northpole πέτυχε απόδοση 28.356 tokens/δευτερόλεπτο σε παραμέτρους llm 3 δισεκατομμυρίων. το μήκος ακολουθίας αυτού του llm έχει διαμορφωθεί ως 2048 (μήκος υπόδειξης 1024, δημιουργούνται 1024 διακριτικά) και ο αποκωδικοποιητής χρησιμοποιεί άπληστη δειγματοληψία.

για σύγκριση με τις gpu, μετρήσαμε την απόδοση μιας κάρτας δύο gpu για εξαγωγή συμπερασμάτων χαμηλής κατανάλωσης (l4 και l40s) και δύο gpu για εκπαίδευση υψηλής απόδοσης (a100 και h100).όλα τα συστήματα εκτελούν το ίδιο μοντέλο και διαμόρφωση llm, με το northpole να λειτουργεί με ακρίβεια w4a4 και τη gpu να λειτουργεί με τη βέλτιστη ακρίβεια w4a16 αφού, από όσο γνωρίζουμε, δεν υπάρχουν διαθέσιμοι πυρήνες w4a4 cuda.στα πειράματά μας gpu, αξιοποιήσαμε το μοντέλο κβαντοποίησης gptq και το συγκρίνουμε χρησιμοποιώντας τον πυρήνα marlin vllm (έκδοση 0.5.4) για σύγκριση με τον northpole. η χρήση κβαντοποίησης gptq παρέχει βέλτιστη απόδοση συμπερασμάτων μοντέλου στη gpu μειώνοντας την ακρίβεια βάρους, διατηρώντας παράλληλα αποδεκτή ακρίβεια. επιπλέον, οι πυρήνες marlin χρησιμοποιούνται για τη βελτιστοποίηση των λειτουργιών μήτρας, ειδικά όταν έχουμε να κάνουμε με αραιούς και πυκνούς πολλαπλασιασμούς πινάκων. η συγκριτική αξιολόγηση του χρόνου εκτέλεσης vllm μας επιτρέπει να αξιολογούμε την απόδοση και την καθυστέρηση, διασφαλίζοντας τη βέλτιστη απόδοση του μοντέλου για μια δεδομένη διαμόρφωση υλικού. σε πειράματα με πολλαπλές κάρτες gpu, χρησιμοποιήθηκε παραλληλισμός τανυστών ίσος με τον αριθμό των διαθέσιμων καρτών για να επιτευχθεί αποτελεσματικά η μικρότερη δυνατή καθυστέρηση σε σχέση με το nvlink. τα πειράματά μας δείχνουν ότι αν και η τεχνολογία διαμοιρασμού μειώνει την καθυστέρηση, οδηγεί σε μείωση της απόδοσης gpu ανά κάρτα. αξίζει να σημειωθεί ότι η ανώτερη απόδοση του northpole προέρχεται κυρίως από το τεράστιο εύρος ζώνης μνήμης στο chip και δευτερευόντως από τη χαμηλότερη ακρίβειά του.

ο πίνακας i δείχνει τα αποτελέσματα μέτρησης της απόδοσης για συστήματα northpole και gpu σε βάση ανά κάρτα. οι βασικές μετρήσεις περιλαμβάνουν μετρήσεις απόδοσης, καθυστέρησης, χώρου και ενέργειας, που ορίζονται παρακάτω.

ο συνολικός αριθμός των διακριτικών που δημιουργούνται για μικρές παρτίδες προτροπών εισαγωγής είναι:

μεταξύ αυτών, το mmm είναι ο αριθμός των μικρο παρτίδων και το tok_seq_len είναι ο αριθμός των διακριτικών εξόδου που παράγονται από έναν μόνο χρήστη. η παροχή συστήματος είναι ο συνολικός αριθμός των διακριτικών που δημιουργούνται ως απόκριση σε προτροπές εισόδου (tokens gen), διαιρεμένος με τον συνολικό χρόνο που απαιτείται για την επεξεργασία του μηνύματος, συμπεριλαμβανομένου του χρόνου προπληρωμής προτροπής (χρόνος προτροπής) και του χρόνου δημιουργίας διακριτικών (token gen time):

η απόδοση συγκρίνεται σε βάση ανά κάρτα διαιρώντας την απόδοση του συστήματος με τον αριθμό των καρτών επεξεργασίας στο σύστημα:

η καθυστέρηση είναι ένα μέτρο του μέσου χρόνου μεταξύ των διακριτικών εξόδου που παράγονται από έναν συγκεκριμένο χρήστη και είναι το άθροισμα του χρόνου που χρειάζεται για να ρέει ένα ενσωματωμένο διακριτικό μέσω του αγωγού επεξεργασίας, συν τον χρόνο προκαταρκτικής συμπλήρωσης που αποσβένεται επί του συνολικού αριθμού των κουπονιών που δημιουργούνται:

ομοίως, ο συνδυασμός των εξισώσεων 1, 2 και 4:

όπου μέγεθος mini-batch = μέγεθος mini-batch σημείωση, αυτός είναι ο λανθάνοντας χρόνος συστήματος που βλέπει κάθε χρήστης.

κανονικά με βάση τον αριθμό των καρτών στο σύστημα, επεκτείνουμε τις μετρήσεις χώρου και ενέργειας που ορίζονται στο [11] για να μπορούμε να συγκρίνουμε συστήματα με διαφορετικούς αριθμούς καρτών. οι προκύπτουσες μετρήσεις χώρου και ενέργειας είναι η απόδοση ανά κάρτα, κανονικοποιημένη από τον αριθμό των τρανζίστορ επεξεργαστή ανά κάρτα και την ισχύ ανά κάρτα αντίστοιχα:

εάν η απόδοση του συστήματος κλιμακώνεται αναλογικά με τον αριθμό των καρτών διοχέτευσης στο σύστημα, η κανονικοποίηση της κάρτας θα αντισταθμιστεί, αφήνοντας τον χώρο και τις μετρήσεις ενέργειας σταθερές με τον αριθμό των καρτών στο σύστημα. συνήθως, η απόδοση του συστήματος κλιμακώνεται υπογραμμικά με τον αριθμό των καρτών λόγω της επιβάρυνσης επικοινωνίας και συγχρονισμού.

εν κατακλείδι

κάνουμε τις ακόλουθες συνεισφορές:

επιδείξαμε ένα ερευνητικό πρωτότυπο της συσκευής doka northpole.

δείχνουμε ότι τα μεγάλα μοντέλα νευρωνικών δικτύων όπως το llm μπορούν να διαχωριστούν αποτελεσματικά σε πολλούς επεξεργαστές northpole, επεκτείνοντας την προηγούμενη εργασία μας που έδειχνε ότι ένας μεμονωμένος επεξεργαστής northpole αποδίδει καλύτερα σε εργασίες οπτικής εξαγωγής συμπερασμάτων (resnet50, yolo-v4 ξεπερνά τις άλλες αρχιτεκτονικές).

αποδεικνύουμε ότι η μοναδική αρχιτεκτονική του northpole είναι κατάλληλη για εξαγωγή συμπερασμάτων llm, επιτρέποντάς του να ξεπερνά σημαντικά τις gpu άκρων και κέντρων δεδομένων όσον αφορά τους διπλούς στόχους της χαμηλής καθυστέρησης και της υψηλής ενεργειακής απόδοσης.

επειδή η συσκευή northpole πρέπει να χρησιμοποιείται ως μονάδα, είναι πιο αποτελεσματική για εφαρμογές υψηλής απόδοσης.

αυτό το προκαταρκτικό έγγραφο παρέχει ένα εφαλτήριο για περαιτέρω έρευνα σχετικά με τη βελτιστοποίηση της ενεργειακής απόδοσης, τη χαρτογράφηση μεγαλύτερων llm σε αντίστοιχα μεγαλύτερες συσκευές northpole, νέα μοντέλα llm βελτιστοποιημένα με την αρχιτεκτονική northpole και μελλοντικές αρχιτεκτονικές συστημάτων και τσιπ.