Τεχνικός ΟΔΗΓΟΣ

Κατάσταση βελτιστοποίησης Μεταφόρτωση σε CPU και NVMe

Ένα τέχνασμα εξοικονόμησης μνήμης που σταθμεύει τη βαριά λογιστική της εκπαίδευσης (καταστάσεις βελτιστοποίησης, διαβαθμίσεις, μερικές φορές βάρη) στη μνήμη RAM της CPU ή σε μονάδες SSD NVMe αντί για περιορισμένη μνήμη GPU.

2 λεπτά ανάγνωσηΤελευταία ενημέρωση

Επισκόπηση

It lets people train far larger models than their GPU's memory would otherwise allow.

Βαθιά κατάδυση

Όταν εκπαιδεύετε ένα νευρωνικό δίκτυο με έναν βελτιστοποιητή όπως ο Adam, κάθε παράμετρος φέρει επιπλέον αποσκευές: δύο στατιστικά στοιχεία λειτουργίας (ορμή και διακύμανση), συν ένα αντίγραφο πλήρους ακρίβειας του βάρους, συν την κλίση του. Στην προπόνηση μικτής ακρίβειας, αυτό μπορεί να φτάσει συνολικά περίπου 16 byte ανά παράμετρο, μειώνοντας τα 2 byte για το ίδιο το βάρος. Η εκφόρτωση απομακρύνει αυτές τις αποσκευές από τη GPU. Η εκφόρτωση της CPU μεταδίδει τις καταστάσεις βελτιστοποίησης στη συνηθισμένη μνήμη RAM του συστήματος μέσω του διαύλου PCIe, ενώ η εκφόρτωση NVMe τις ωθεί μέχρι κάτω σε γρήγορους δίσκους στερεάς κατάστασης. Διαδεδομένη από τα ZeRO-Infinity και ZeRO-Offload της DeepSpeed, η τεχνική ανταλλάσσει την ακατέργαστη ταχύτητα με τη χωρητικότητα, επιτρέποντας σε μια ενιαία GPU ή ένα μικρό σύμπλεγμα να τελειοποιήσει μοντέλα με δισεκατομμύρια παραμέτρους.

Τεχνική διορατικότητα

Το κλειδί είναι η επικάλυψη της κίνησης δεδομένων με τον υπολογισμό. Οι καταστάσεις του Optimizer βρίσκονται σε CPU/NVMe. κατά τη διάρκεια του backward pass, τα partitions ανακτώνται εκ των προτέρων μέσω PCIe λίγο πριν χρειαστούν και το ίδιο το βήμα βελτιστοποίησης εκτελείται συχνά στην CPU. Το ZeRO-Offload διατηρεί τα κύρια βάρη float32 και τις στιγμές Adam στην CPU, έτσι μόνο τα μαθηματικά προς τα εμπρός και προς τα πίσω παραμένουν στη GPU. Το NVMe προσθέτει μια κλιμακωτή κρυφή μνήμη ώστε οι καταστάσεις κλίμακας terabyte να διαχέονται στο δίσκο ενώ τα hot partition παραμένουν στη μνήμη RAM.

Στρατηγικός αντίκτυπος

Κόστος και προϋπολογισμός

Οι αποφάσεις για την αρχιτεκτονική καθορίζουν την απόδοση και το λειτουργικό κόστος για χρόνια.

Σαφέστερες αποφάσεις

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

Ελεγχος ποιότητας

Οι καλύτερες επιλογές μηχανικής μειώνουν τα περιστατικά αξιοπιστίας στην παραγωγή.

The Future of Optimizer State Offloading σε CPU και NVMe

Καθώς τα μοντέλα συνεχίζουν να ξεπερνούν τη μνήμη GPU, η κλιμακωτή εκφόρτωση γίνεται τυπική και όχι εξωτική. Αναμένετε στενότερη ενσωμάτωση με ταχύτερες διασυνδέσεις, όπως δεξαμενές μνήμης NVLink-C2C και CXL που θολώνουν τα όρια CPU-GPU, καθώς και πιο έξυπνους χρονοπρογραμματιστές που προβλέπουν ποιες καταστάσεις θα προανακτηθούν. Οι αρχιτεκτονικές ενοποιημένης μνήμης, όπως η Grace Hopper, μειώνουν την ποινή του PCIe και τα πλαίσια πιέζουν να κάνουν την εκφόρτωση πολλαπλών επιπέδων σχεδόν διαφανή, ώστε οι χομπίστες να μπορούν να συντονίζουν μεγάλα μοντέλα σε μέτριο υλικό.

Υλοποίηση σε πραγματικό κόσμο

Βελτιστοποιήστε ένα LLM 13 δισεκατομμυρίων παραμέτρων σε μια ενιαία GPU καταναλωτή 24 GB χρησιμοποιώντας DeepSpeed ​​ZeRO-Offload για να ωθήσετε τις καταστάσεις Adam στη μνήμη RAM της CPU.

Ένα μικρό ερευνητικό εργαστήριο εκπαιδεύει ένα μοντέλο πολλών δισεκατομμυρίων παραμέτρων σε λίγες GPU, διαχέοντας καταστάσεις βελτιστοποίησης σε μονάδες NVMe με ZeRO-Infinity.

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

Οι νεοσύστατες εταιρείες με συνείδηση ​​του κόστους νοικιάζουν φθηνότερες, χαμηλότερης μνήμης GPU cloud και εκφορτώνουν σε συνδεδεμένο NVMe αντί να πληρώνουν για κορυφαίες κάρτες 80 GB.

Κίνδυνοι & προστατευτικά κιγκλιδώματα

Η βελτιστοποίηση ενός σημείου αναφοράς μπορεί να κρύψει ευρύτερες αδυναμίες του συστήματος.

Το κόστος υποδομής και συντήρησης συχνά υποτιμάται.

Τα κενά ασφάλειας και παρατηρητικότητας μπορούν να αυξηθούν καθώς τα συστήματα γίνονται πιο πολύπλοκα.

Οδικός Χάρτης Εφαρμογής

1

Καθορίστε τους στόχους καθυστέρησης, ποιότητας και κόστους πριν από την εφαρμογή.

2

Σημείο αναφοράς υπό ρεαλιστικές συνθήκες φορτίου και δεδομένων.

3

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

4

Προετοιμάστε διαδρομές επαναφοράς και απόκρισης συμβάντος πριν την κλιμάκωση.

Συνεχίστε την εξερεύνηση

Free newsletter

Get the daily AI briefing

Three verified AI stories every weekday morning, written in plain English. Free forever, no ads.

One email each weekday. Unsubscribe in one click. We never sell or share your address.

Test yourself

Take the Optimizer State Offloading to CPU and NVMe quiz

Instant feedback on every answer, and a shareable certificate with a verifiable ID once you pass a course.

Έναρξη κουίζ

Support free AI education. AI Understanding is a 501(c)(3) nonprofit — no ads, no paywall, ever. Make a donation

Συχνές ερωτήσεις

What is Optimizer State Offloading to CPU and NVMe?

Ένα τέχνασμα εξοικονόμησης μνήμης που σταθμεύει τη βαριά λογιστική της εκπαίδευσης (καταστάσεις βελτιστοποίησης, διαβαθμίσεις, μερικές φορές βάρη) στη μνήμη RAM της CPU ή σε μονάδες SSD NVMe αντί για περιορισμένη μνήμη GPU. Επιτρέπει στους ανθρώπους να εκπαιδεύουν πολύ μεγαλύτερα μοντέλα από αυτά που θα επέτρεπε διαφορετικά η μνήμη της GPU τους.

Ποιος είναι ο πρωταρχικός στόχος της μεταφόρτωσης καταστάσεων βελτιστοποίησης σε CPU ή NVMe;

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

Για το Adam optimizer με μικτή ακρίβεια, ποια δεδομένα καταναλώνουν συνήθως την ΠΕΡΙΣΣΟΤΕΡΗ μνήμη ανά παράμετρο;

Ο Adam αποθηκεύει την ορμή, τη διακύμανση και ένα κύριο βάρος πλήρους ακρίβειας, συνολικά περίπου 16 byte ανά παράμετρο, πολύ περισσότερο από το βάρος μισής ακρίβειας των 2 byte.

Ποιο χαρακτηριστικό πλαισίου δημοφιλές εκφόρτωση βελτιστοποιητών μεγάλης κλίμακας;

Τα ZeRO-Offload και ZeRO-Infinity της DeepSpeed ​​εισήγαγαν και διέδωσαν τις καταστάσεις βελτιστοποίησης εκφόρτωσης σε CPU και NVMe σε κλίμακα.

Ποιο είναι το κύριο κόστος απόδοσης της εκφόρτωσης σε CPU ή NVMe;

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

Πώς τα συστήματα εκφόρτωσης κρύβουν μεγάλο μέρος της καθυστέρησης μεταφοράς;

Οι προγραμματιστές ανακτούν εκ των προτέρων τις απαραίτητες κατατμήσεις μέσω PCIe ενώ η GPU εξακολουθεί να υπολογίζει, επικαλύπτοντας την επικοινωνία με τον υπολογισμό για να συγκαλύψει την καθυστέρηση.