तकनीकी गाइड
ऑप्टिमाइज़र स्टेट सीपीयू और एनवीएमई पर ऑफलोडिंग
एक मेमोरी-सेविंग ट्रिक जो प्रशिक्षण के भारी बहीखाता (ऑप्टिमाइज़र स्टेट्स, ग्रेडिएंट्स, कभी-कभी वेट) को दुर्लभ जीपीयू मेमोरी के बजाय सीपीयू रैम या एनवीएमई एसएसडी पर पार्क करती है।
इस गाइड को सुनेंएआई-नैरेटेड · ~2 min
इस पृष्ठ पर2 मिनट लाल
सिंहावलोकन
यह लोगों को उनके GPU की मेमोरी की तुलना में कहीं अधिक बड़े मॉडल को प्रशिक्षित करने देता है।
गहरा गोता
जब आप एडम जैसे ऑप्टिमाइज़र के साथ एक तंत्रिका नेटवर्क को प्रशिक्षित करते हैं, तो प्रत्येक पैरामीटर में अतिरिक्त भार होता है: दो चल रहे आँकड़े (गति और भिन्नता), साथ ही वजन की एक पूर्ण-सटीक प्रतिलिपि, साथ ही इसकी ढाल। मिश्रित-परिशुद्धता प्रशिक्षण में यह प्रति पैरामीटर लगभग 16 बाइट्स हो सकता है, जो वजन के लिए 2 बाइट्स को बौना कर देता है। ऑफलोडिंग उस सामान को GPU से हटा देती है। सीपीयू ऑफलोड स्ट्रीम ऑप्टिमाइज़र स्टेट्स को पीसीआईई बस पर सामान्य सिस्टम रैम में प्रवाहित करता है, जबकि एनवीएमई ऑफलोड उन्हें तेजी से सॉलिड-स्टेट डिस्क में धकेल देता है। डीपस्पीड के ज़ीरो-इन्फ़िनिटी और ज़ीरो-ऑफ़लोड द्वारा लोकप्रिय, तकनीक क्षमता के लिए कच्ची गति का व्यापार करती है, जिससे एकल जीपीयू या छोटे क्लस्टर मॉडल को अरबों मापदंडों के साथ फाइन-ट्यून मिलता है।
वास्तविक विश्व कार्यान्वयन
DeepSpeed’s ZeRO-Offload tutorial trains a ten-billion-parameter GPT-2 configuration on a 32 GB V100, with CPU optimizer offloading and activation checkpointing.
A research team evaluates ZeRO-Infinity with CPU and NVMe tiers for a model that exceeds GPU-only capacity.
A fine-tuning team configures CPU optimizer offloading and measures host memory use and update time.
A team compares larger GPUs with offloading, accounting for CPU, storage, and transfer costs.
सीपीयू और एनवीएमई पर ऑप्टिमाइज़र स्टेट ऑफलोडिंग का भविष्य
जैसे-जैसे मॉडलों की जीपीयू मेमोरी बढ़ती जा रही है, स्तरीय ऑफलोडिंग आकर्षक के बजाय मानक बनती जा रही है। एनवीलिंक-सी2सी और सीएक्सएल मेमोरी पूल जैसे तेज इंटरकनेक्ट के साथ सख्त एकीकरण की अपेक्षा करें जो सीपीयू-जीपीयू सीमा को धुंधला कर देता है, साथ ही स्मार्ट शेड्यूलर जो भविष्यवाणी करते हैं कि कौन से राज्यों को प्रीफ़ेच करना है। ग्रेस हॉपर जैसे एकीकृत-मेमोरी आर्किटेक्चर पीसीआईई दंड को कम करते हैं, और फ्रेमवर्क मल्टी-टियर ऑफलोड को लगभग पारदर्शी बनाने पर जोर दे रहे हैं ताकि शौकीन लोग मामूली हार्डवेयर पर बड़े मॉडल को ठीक कर सकें।
इसे व्यवहार में लाना
यह क्यों मायने रखता है?
- लागत और बजट. वास्तुकला संबंधी निर्णय वर्षों तक प्रदर्शन और परिचालन लागत को संचालित करते हैं।
- स्पष्ट निर्णय. तकनीकी शिक्षा टीमों को सही स्टैक चुनने में मदद करती है, न कि केवल नवीनतम स्टैक चुनने में।
- गुणवत्ता नियंत्रण. बेहतर इंजीनियरिंग विकल्प उत्पादन में विश्वसनीयता की घटनाओं को कम करते हैं।
का ध्यान रखें
- एक बेंचमार्क को अनुकूलित करने से व्यापक सिस्टम कमजोरियों को छुपाया जा सकता है।
- बुनियादी ढांचे और रखरखाव की लागत को अक्सर कम करके आंका जाता है।
- जैसे-जैसे सिस्टम अधिक जटिल होते जाएंगे सुरक्षा और अवलोकन संबंधी अंतराल बढ़ सकते हैं।
अगले चरण
- कार्यान्वयन से पहले विलंबता, गुणवत्ता और लागत लक्ष्य परिभाषित करें।
- यथार्थवादी लोड और डेटा स्थितियों के तहत बेंचमार्क।
- त्रुटियों, बहाव और उपयोगकर्ता प्रभाव के लिए उपकरण निगरानी।
- स्केलिंग से पहले रोलबैक और घटना प्रतिक्रिया पथ तैयार करें।
अन्वेषण करते रहें
मुफ़्त न्यूज़लेटर
दैनिक एआई ब्रीफिंग प्राप्त करें
हर कार्यदिवस की सुबह तीन सत्यापित एआई कहानियाँ, सादे अंग्रेजी में लिखी गईं। हमेशा के लिए मुफ़्त, कोई विज्ञापन नहीं।
प्रत्येक सप्ताह के दिन एक ईमेल. एक क्लिक में सदस्यता समाप्त करें. हम आपका पता कभी नहीं बेचते या साझा नहीं करते।
स्वयं की जांच करो
Take the Optimizer State Offloading to CPU and NVMe quiz
प्रत्येक उत्तर पर त्वरित प्रतिक्रिया, और पाठ्यक्रम पास करने के बाद एक सत्यापन योग्य आईडी के साथ एक साझा करने योग्य प्रमाणपत्र।
निःशुल्क एआई शिक्षा का समर्थन करें। AI Understanding एक 501(c)(3) गैर-लाभकारी संस्था है - कोई विज्ञापन नहीं, कोई पेवॉल नहीं। दान करें
अक्सर पूछे जाने वाले प्रश्नों
सीपीयू और एनवीएमई के लिए ऑप्टिमाइज़र स्टेट ऑफलोडिंग क्या है?
एक मेमोरी-सेविंग ट्रिक जो प्रशिक्षण के भारी बहीखाता (ऑप्टिमाइज़र स्टेट्स, ग्रेडिएंट्स, कभी-कभी वेट) को दुर्लभ जीपीयू मेमोरी के बजाय सीपीयू रैम या एनवीएमई एसएसडी पर पार्क करती है। यह लोगों को उनके GPU की मेमोरी की अनुमति से कहीं अधिक बड़े मॉडलों को प्रशिक्षित करने की सुविधा देता है।
सीपीयू या एनवीएमई पर ऑप्टिमाइज़र स्थिति को ऑफलोड करने का प्राथमिक लक्ष्य क्या है?
ऑफलोडिंग भारी ऑप्टिमाइज़र को GPU से CPU RAM या NVMe में ले जाता है, जिससे GPU मेमोरी मुक्त हो जाती है ताकि बड़े मॉडल को उसी हार्डवेयर पर प्रशिक्षित किया जा सके।
For an Adam setup with two FP32 moments and an FP32 master weight, how much memory do those three values use per parameter?
Each FP32 value uses four bytes: two moments plus one master weight total twelve. A sixteen-byte mixed-precision estimate includes other tensors as well.
किस फ्रेमवर्क सुविधा ने बड़े पैमाने पर ऑप्टिमाइज़र ऑफलोडिंग को लोकप्रिय बनाया?
डीपस्पीड के ज़ीरो-ऑफलोड और ज़ीरो-इन्फिनिटी ने बड़े पैमाने पर सीपीयू और एनवीएमई में ऑफलोडिंग ऑप्टिमाइज़र राज्यों को पेश किया और लोकप्रिय बनाया।
सीपीयू या एनवीएमई पर ऑफलोडिंग की मुख्य प्रदर्शन लागत क्या है?
जीपीयू से बाहर जाने की स्थिति का अर्थ है पीसीआईई या एनवीएमई पर डेटा स्थानांतरित करना, जो ऑन-जीपीयू मेमोरी की तुलना में धीमा है, इसलिए जब तक गणना के साथ ओवरलैप नहीं किया जाता है, तब तक थ्रूपुट गिर जाता है।
ऑफलोडिंग सिस्टम अधिकांश स्थानांतरण विलंबता को कैसे छिपाते हैं?
शेड्यूलर PCIe पर आवश्यक विभाजनों को प्रीफ़ेच करते हैं, जबकि GPU अभी भी कंप्यूटिंग कर रहा है, विलंबता को छुपाने के लिए गणना के साथ संचार को ओवरलैप कर रहा है।
सीखते रहो
संबंधित मार्गदर्शिकाएँ
इस विषय के लिए अधिक मार्गदर्शिकाएँ चुनी गईं