របៀបប្រើប្រាស់ NVIDIA GPU សម្រាប់ការបណ្តុះបណ្តាល AI

របៀបប្រើប្រាស់ NVIDIA GPU សម្រាប់ការបណ្តុះបណ្តាល AI

ចម្លើយខ្លី៖ ប្រើ NVIDIA GPUs សម្រាប់ការហ្វឹកហាត់ AI ដោយបញ្ជាក់ជាមុនថាកម្មវិធីបញ្ជា និង GPU អាចមើលឃើញជាមួយ nvidia-smi បន្ទាប់មកដំឡើង framework/CUDA stack ដែលឆបគ្នា ហើយដំណើរការការធ្វើតេស្ត "model + batch on cuda" តូចមួយ។ ប្រសិនបើអ្នកមានបញ្ហា out-of-memory សូមកាត់បន្ថយទំហំ batch ហើយប្រើភាពជាក់លាក់ចម្រុះ ខណៈពេលកំពុងត្រួតពិនិត្យការប្រើប្រាស់ អង្គចងចាំ និងសីតុណ្ហភាព។

ចំណុចសំខាន់ៗ៖

ការត្រួតពិនិត្យមូលដ្ឋាន ៖ ចាប់ផ្តើមជាមួយ nvidia-smi ; ជួសជុលភាពមើលឃើញរបស់កម្មវិធីបញ្ជា មុនពេលអ្នកដំឡើង frameworks។

ភាពឆបគ្នានៃ Stack ៖ រក្សាកម្មវិធីបញ្ជា, ពេលវេលាដំណើរការ CUDA និងកំណែ framework ឱ្យស្របគ្នា ដើម្បីការពារការគាំង និងការដំឡើងដែលមិនស្ថិតស្ថេរ។

ជោគជ័យតិចតួច ៖ បញ្ជាក់ថាការបញ្ជូនបន្តតែមួយដំណើរការលើ CUDA មុនពេលអ្នកពង្រីកការពិសោធន៍។

វិន័យ VRAM ៖ ពឹងផ្អែកលើភាពជាក់លាក់ចម្រុះ ការប្រមូលផ្តុំជម្រាល និងការត្រួតពិនិត្យដើម្បីឱ្យសមនឹងម៉ូដែលធំៗ។

ទម្លាប់ត្រួតពិនិត្យ ៖ តាមដានការប្រើប្រាស់ លំនាំអង្គចងចាំ ថាមពល និងសីតុណ្ហភាព ដើម្បីឱ្យអ្នករកឃើញចំណុចកកស្ទះបានទាន់ពេលវេលា។

អត្ថបទដែលអ្នកប្រហែលជាចង់អានបន្ទាប់ពីអត្ថបទនេះ៖

🔗 របៀបបង្កើតភ្នាក់ងារ AI
រចនា​លំហូរ​ការងារ ឧបករណ៍ អង្គចងចាំ និង​ឧបករណ៍​ការពារ​សុវត្ថិភាព​របស់​ភ្នាក់ងារ​អ្នក។.

🔗 របៀបដាក់ពង្រាយគំរូ AI
រៀបចំបរិស្ថាន ម៉ូដែលកញ្ចប់ និងដឹកជញ្ជូនទៅផលិតកម្មប្រកបដោយភាពជឿជាក់។.

🔗 របៀបវាស់ស្ទង់សមត្ថភាព AI
ជ្រើសរើស​ម៉ែត្រិច ដំណើរការ​ការវាយតម្លៃ និងតាមដាន​ការអនុវត្ត​តាមពេលវេលា។.

🔗 របៀបធ្វើស្វ័យប្រវត្តិកម្មកិច្ចការជាមួយ AI
ធ្វើស្វ័យប្រវត្តិកម្មការងារដដែលៗជាមួយនឹងការជំរុញ លំហូរការងារ និងការរួមបញ្ចូល។.


១) រូបភាពធំ - អ្វីដែលអ្នកកំពុងធ្វើនៅពេលអ្នក "ហ្វឹកហាត់លើ GPU" 🧠⚡

នៅពេលអ្នកហ្វឹកហាត់គំរូ AI អ្នកភាគច្រើនកំពុងធ្វើការគណនាម៉ាទ្រីសជាច្រើនភ្នំ។ GPU ត្រូវបានបង្កើតឡើងសម្រាប់ការងារប៉ារ៉ាឡែលប្រភេទនោះ ដូច្នេះក្របខ័ណ្ឌដូចជា PyTorch, TensorFlow និង JAX អាចផ្ទេរបន្ទុកធ្ងន់ទៅ GPU បាន។ ( ឯកសារ PyTorch CUDA , ការដំឡើង TensorFlow (pip) , JAX Quickstart )

នៅក្នុងការអនុវត្តជាក់ស្តែង “ការប្រើប្រាស់ NVIDIA GPUs សម្រាប់ការបណ្តុះបណ្តាល” ជាធម្មតាមានន័យថា៖

  • ប៉ារ៉ាម៉ែត្រម៉ូដែលរបស់អ្នកភាគច្រើនស្ថិតនៅក្នុង GPU VRAM

  • បាច់របស់អ្នកត្រូវបានផ្លាស់ទីពី RAM ទៅ VRAM រៀងរាល់ជំហាន

  • ការបញ្ជូនបន្ត និង backprop របស់អ្នកដំណើរការលើខឺណែល CUDA ( មគ្គុទ្ទេសក៍សរសេរកម្មវិធី CUDA )

  • ការអាប់ដេតឧបករណ៍បង្កើនប្រសិទ្ធភាពរបស់អ្នកកើតឡើងលើ GPU (តាមឧត្ដមគតិ)

  • អ្នកតាមដានសីតុណ្ហភាព អង្គចងចាំ ការប្រើប្រាស់ ដូច្នេះអ្នកមិនចម្អិនអ្វីទាំងអស់ 🔥 ( ឯកសារ NVIDIA nvidia-smi )

ប្រសិនបើវាស្តាប់ទៅដូចជាច្រើន កុំបារម្ភ។ វាភាគច្រើនជាបញ្ជីត្រួតពិនិត្យ និងទម្លាប់មួយចំនួនដែលអ្នកបង្កើតតាមពេលវេលា។.


2) អ្វីដែលធ្វើឱ្យកំណែល្អនៃការរៀបចំការបណ្តុះបណ្តាល AI NVIDIA GPU 🤌

នេះគឺជាផ្នែក "កុំសាងសង់ផ្ទះលើចាហួយ"។ ការរៀបចំដ៏ល្អសម្រាប់ របៀបប្រើ GPU NVIDIA សម្រាប់ការបណ្តុះបណ្តាល AI គឺជាការរៀបចំដែលមានភាពរអាក់រអួលទាប។ ភាពរអាក់រអួលទាបគឺមានស្ថេរភាព។ ស្ថេរភាពគឺលឿន។ លឿនគឺ... លឿន 😄

ការរៀបចំការបណ្តុះបណ្តាលដ៏រឹងមាំជាធម្មតាមាន៖

  • VRAM គ្រប់គ្រាន់ សម្រាប់ទំហំបាច់ + ម៉ូដែល + ស្ថានភាពបង្កើនប្រសិទ្ធភាពរបស់អ្នក

    • VRAM គឺដូចជាកន្លែងដាក់វ៉ាលីអញ្ចឹង។ អ្នកអាចវេចខ្ចប់របស់របរបានយ៉ាងឆ្លាតវៃជាងមុន ប៉ុន្តែអ្នកមិនអាចវេចខ្ចប់របស់របរបានច្រើនគ្មានដែនកំណត់នោះទេ។.

  • ជង់​កម្មវិធី​ដែល​ត្រូវ​គ្នា (កម្មវិធី​បញ្ជា + ពេល​ដំណើរការ CUDA + ភាព​ឆបគ្នា​នៃ​ក្របខ័ណ្ឌ) ( PyTorch Get Started (ឧបករណ៍​ជ្រើសរើស CUDA) , ការដំឡើង TensorFlow (pip) )

  • ការផ្ទុកទិន្នន័យលឿន (NVMe ជួយបានច្រើនសម្រាប់សំណុំទិន្នន័យធំៗ)

  • ស៊ីភីយូ + រ៉េម ល្អ ដូច្នេះការផ្ទុកទិន្នន័យមិនធ្វើឱ្យ GPU អស់កម្លាំងទេ ( មគ្គុទ្ទេសក៍លៃតម្រូវដំណើរការ PyTorch )

  • ម៉ាស៊ីនត្រជាក់ និង ថាមពលខ្លាំង (មើលស្រាលរហូតដល់វាមិនមែន 😬)

  • បរិស្ថានដែលអាចបង្កើតឡើងវិញបាន (venv/conda ឬកុងតឺន័រ) ដូច្នេះការធ្វើឱ្យប្រសើរឡើងមិនក្លាយជាភាពវឹកវរទេ ( ទិដ្ឋភាពទូទៅនៃ NVIDIA Container Toolkit )

ហើយមានរឿងមួយទៀតដែលមនុស្សមើលរំលង៖

  • ទម្លាប់ត្រួតពិនិត្យ - អ្នកពិនិត្យមើលអង្គចងចាំ GPU និងការប្រើប្រាស់ដូចជាអ្នកពិនិត្យមើលកញ្ចក់ពេលកំពុងបើកបរ។ ( ឯកសារ NVIDIA nvidia-smi )


៣) តារាងប្រៀបធៀប - វិធីពេញនិយមក្នុងការហ្វឹកហាត់ជាមួយ NVIDIA GPUs (ជាមួយនឹងភាពចម្លែក) 📊

ខាងក្រោមនេះគឺជាសន្លឹកបន្លំរហ័ស "មួយណាសមនឹង?"។ តម្លៃគឺប្រហាក់ប្រហែល (ពីព្រោះការពិតប្រែប្រួល) ហើយបាទ/ចាស៎ មួយក្នុងចំណោមកោសិកាទាំងនេះគឺមានភាពរញ៉េរញ៉ៃបន្តិច ដោយចេតនា។.

ឧបករណ៍ / វិធីសាស្រ្ត ល្អបំផុតសម្រាប់ តម្លៃ ហេតុអ្វីបានជាវាដំណើរការ (ភាគច្រើន)
PyTorch (វ៉ានីឡា) PyTorch មនុស្សភាគច្រើន គម្រោងភាគច្រើន ឥតគិតថ្លៃ អាចបត់បែនបាន ប្រព័ន្ធអេកូឡូស៊ីដ៏ធំ ងាយស្រួលបំបាត់កំហុស - មនុស្សគ្រប់គ្នាក៏មានមតិដែរ
ឯកសារ PyTorch Lightning ក្រុម, ការបណ្តុះបណ្តាលដែលមានរចនាសម្ព័ន្ធ ឥតគិតថ្លៃ កាត់បន្ថយ​រចនាសម្ព័ន្ធ​ថ្មី រង្វិលជុំ​ស្អាតជាងមុន; ពេលខ្លះ​មានអារម្មណ៍​ដូចជា "វេទមន្ត" រហូតដល់​វា​មិន​ដូច្នោះ​ទេ
ឯកសារបណ្តុះបណ្តាលសម្រាប់ Hugging Face Transformers + Trainer ការលៃតម្រូវ NLP + LLM ឥតគិតថ្លៃ ការហ្វឹកហាត់ដែលរួមបញ្ចូលថ្ម លំនាំដើមដ៏អស្ចារ្យ ជ័យជម្នះរហ័ស 👍
ឯកសារ បង្កើន ពហុ GPU ដោយគ្មានការឈឺចាប់ ឥតគិតថ្លៃ ធ្វើឱ្យ DDP មិនសូវរំខាន ល្អសម្រាប់ធ្វើមាត្រដ្ឋានដោយមិនចាំបាច់សរសេរឡើងវិញទាំងអស់
DeepSpeed ​​ZeRO ម៉ូដែលធំៗ ល្បិចចងចាំ ឥតគិតថ្លៃ ZeRO, ការផ្ទេរបន្ទុក, ការធ្វើមាត្រដ្ឋាន - អាចមានភាពរញ៉េរញ៉ៃ ប៉ុន្តែពេញចិត្តនៅពេលដែលវាចុច។
TensorFlow + Keras TF បំពង់ផលិតកម្ម ឥតគិតថ្លៃ ឧបករណ៍រឹងមាំ រឿងរ៉ាវដាក់ពង្រាយល្អ មនុស្សមួយចំនួនចូលចិត្តវា អ្នកខ្លះទៀតមិនចូលចិត្តវាដោយស្ងាត់ៗ
JAX + Flax ការចាប់ផ្តើមរហ័ស JAX / ឯកសារ Flax ការស្រាវជ្រាវ + អ្នកញៀនល្បឿន ឥតគិតថ្លៃ ការចងក្រង XLA អាចលឿនមិនគួរឱ្យជឿ ប៉ុន្តែការបំបាត់កំហុសអាចមានអារម្មណ៍…អរូបី
របស់ NVIDIA NeMo NeMo លំហូរការងារនិយាយ + LLM ឥតគិតថ្លៃ ជង់ដែលបានធ្វើឱ្យប្រសើរឡើងដោយ NVIDIA រូបមន្តល្អៗ - មានអារម្មណ៍ដូចជាចម្អិនជាមួយឡដ៏ប្រណិត 🍳
ទិដ្ឋភាពទូទៅនៃឧបករណ៍ Docker + NVIDIA Container Toolkit បរិស្ថានដែលអាចបង្កើតឡើងវិញបាន ឥតគិតថ្លៃ “ដំណើរការលើម៉ាស៊ីនរបស់ខ្ញុំ” ក្លាយជា “ដំណើរការលើម៉ាស៊ីនរបស់យើង” (ភាគច្រើន ម្តងទៀត)

៤) ជំហានទីមួយ - បញ្ជាក់ថា GPU របស់អ្នកត្រូវបានគេមើលឃើញត្រឹមត្រូវ 🕵️♂️

មុនពេលអ្នកដំឡើងរបស់របររាប់សិប សូមផ្ទៀងផ្ទាត់មូលដ្ឋានគ្រឹះ។.

រឿងដែលអ្នកចង់ក្លាយជាការពិត៖

  • ម៉ាស៊ីនមើលឃើញ GPU

  • កម្មវិធីបញ្ជា NVIDIA ត្រូវបានដំឡើងយ៉ាងត្រឹមត្រូវ

  • GPU មិនជាប់គាំងធ្វើអ្វីផ្សេងទៀតទេ

  • អាចសាកសួរបានដោយទំនុកចិត្ត

ការត្រួតពិនិត្យបុរាណគឺ៖

អ្វីដែលអ្នកកំពុងស្វែងរក៖

  • ឈ្មោះ GPU (ឧ. RTX, A-series ជាដើម)

  • កំណែកម្មវិធីបញ្ជា

  • ការប្រើប្រាស់អង្គចងចាំ

  • ដំណើរការដែលកំពុងដំណើរការ ( ឯកសារ NVIDIA nvidia-smi )

ប្រសិនបើ nvidia-smi បរាជ័យ សូមឈប់ត្រឹមហ្នឹងសិន។ កុំដំឡើង frameworks នៅឡើយអី។ វាដូចជាការព្យាយាមដុតនំប៉័ងនៅពេលដែលឡរបស់អ្នកមិនទាន់ដោតឌុយ។ ( NVIDIA System Management Interface (NVSMI) )

កំណត់ចំណាំតូចមួយរបស់មនុស្ស៖ ពេលខ្លះ nvidia-smi ដំណើរការ ប៉ុន្តែការហ្វឹកហាត់របស់អ្នកនៅតែបរាជ័យ ពីព្រោះ CUDA runtime ដែលប្រើដោយ framework របស់អ្នកមិនត្រូវគ្នានឹងការរំពឹងទុករបស់ driver។ នោះមិនមែនជាការល្ងង់របស់អ្នកទេ។ នោះហើយជា… របៀបដែលវាកើតឡើង 😭 ( PyTorch Get Started (CUDA selector) , TensorFlow install (pip) )


៥) បង្កើត​ជង់​កម្មវិធី - កម្មវិធី​បញ្ជា, CUDA, cuDNN និង “របាំ​ភាពឆបគ្នា” 💃

នេះជាកន្លែងដែលមនុស្សខាតពេលវេលាច្រើន។ ល្បិចគឺ៖ ជ្រើសរើសផ្លូវមួយ ហើយប្រកាន់ខ្ជាប់វា

ជម្រើស A៖ CUDA ដែលភ្ជាប់មកជាមួយ Framework (ជារឿយៗងាយស្រួលបំផុត)

កម្មវិធី PyTorch ជាច្រើនភ្ជាប់មកជាមួយនឹង CUDA runtime ផ្ទាល់ខ្លួន មានន័យថាអ្នកមិនត្រូវការ CUDA toolkit ពេញលេញដែលបានដំឡើងទូទាំងប្រព័ន្ធនោះទេ។ ភាគច្រើនអ្នកគ្រាន់តែត្រូវការកម្មវិធីបញ្ជា NVIDIA ដែលឆបគ្នា។ ( PyTorch Get Started (CUDA selector) , PyTorch ជំនាន់មុន (កង់ CUDA) )

គុណសម្បត្តិ៖

  • ផ្នែក​ដែល​មាន​ចលនា​តិច​ជាង​មុន

  • ការដំឡើងកាន់តែងាយស្រួល

  • អាចបង្កើតឡើងវិញបានកាន់តែច្រើនតាមបរិស្ថាន

គុណវិបត្តិ៖

  • ប្រសិនបើអ្នកលាយបរិស្ថានដោយចៃដន្យ អ្នកអាចនឹងមានការភ័ន្តច្រឡំ

ជម្រើស B៖ ប្រអប់ឧបករណ៍ CUDA ប្រព័ន្ធ (ការគ្រប់គ្រងបន្ថែម)

អ្នកដំឡើង CUDA toolkit នៅលើប្រព័ន្ធ ហើយតម្រឹមអ្វីៗគ្រប់យ៉ាងទៅវា។ ( ឯកសារ CUDA Toolkit )

គុណសម្បត្តិ៖

  • ការគ្រប់គ្រងបន្ថែមសម្រាប់ការសាងសង់ផ្ទាល់ខ្លួន ឧបករណ៍ពិសេសមួយចំនួន

  • ងាយស្រួលសម្រាប់ការចងក្រងប្រតិបត្តិការជាក់លាក់

គុណវិបត្តិ៖

  • វិធីជាច្រើនទៀតដើម្បីផ្គូផ្គងកំណែ ហើយយំដោយស្ងាត់ៗ

cuDNN និង NCCL ទាក់ទងនឹងមនុស្ស

ប្រសិនបើអ្នកធ្វើការហ្វឹកហាត់ពហុ GPU NCCL គឺជាមិត្តល្អបំផុតរបស់អ្នក - ហើយជួនកាលជាមិត្តរួមបន្ទប់ដែលមានចរិតឆេវឆាវរបស់អ្នក។ ( ទិដ្ឋភាពទូទៅរបស់ NCCL )


៦) ការហ្វឹកហាត់ GPU លើកដំបូងរបស់អ្នក (គំនិតឧទាហរណ៍ PyTorch) ✅🔥

ដើម្បីអនុវត្តតាម ការណែនាំអំពីរបៀបប្រើប្រាស់ NVIDIA GPU សម្រាប់ការបណ្តុះបណ្តាល AI អ្នកមិនត្រូវការគម្រោងធំដុំជាមុនសិនទេ។ អ្នកត្រូវការភាពជោគជ័យតូចមួយ។

គំនិតស្នូល៖

  • រកឃើញឧបករណ៍

  • ផ្លាស់ទីម៉ូដែលទៅ GPU

  • ផ្លាស់ទី tensor ទៅ GPU

  • បញ្ជាក់ថាការបញ្ជូនបន្តដំណើរការនៅទីនោះ ( ឯកសារ PyTorch CUDA )

រឿងដែលខ្ញុំតែងតែពិនិត្យសុខភាពឲ្យបានដិតដល់ជាមុន៖

សំណួរ​ទូទៅ​ដែល​សួរ​ថា «ហេតុអ្វី​វា​យឺត?»

  • កម្មវិធីផ្ទុកទិន្នន័យរបស់អ្នកយឺតពេក (GPU កំពុងរង់ចាំទំនេរ) ( ការណែនាំអំពីការលៃតម្រូវដំណើរការ PyTorch )

  • អ្នកភ្លេចផ្លាស់ទីទិន្នន័យទៅ GPU (អូ៎!)

  • ទំហំបាច់មានទំហំតូច (GPU មិនត្រូវបានប្រើប្រាស់គ្រប់គ្រាន់)

  • អ្នកកំពុងធ្វើការដំណើរការ CPU ជាមុនយ៉ាងច្រើននៅក្នុងជំហានហ្វឹកហាត់

មួយវិញទៀត មែនហើយ GPU របស់អ្នកច្រើនតែមើលទៅ "មិនសូវមមាញឹក" ប្រសិនបើចំណុចកកស្ទះគឺជាទិន្នន័យ។ វាដូចជាការជួលអ្នកបើកបររថយន្តប្រណាំង រួចធ្វើឱ្យពួកគេរង់ចាំចាក់សាំងរាល់ជុំ។.


៧) ហ្គេម VRAM - ទំហំបាច់ ភាពជាក់លាក់ចម្រុះ និងមិនផ្ទុះ 💥🧳

បញ្ហា​នៃ​ការ​ហ្វឹកហាត់​ជាក់ស្តែង​ភាគច្រើន​គឺ​ទាក់ទង​នឹង​ការចងចាំ។ ប្រសិនបើ​អ្នក​រៀន​ជំនាញ​មួយ ចូរ​រៀន​ពី​ការគ្រប់គ្រង VRAM។.

វិធីរហ័សដើម្បីកាត់បន្ថយការប្រើប្រាស់អង្គចងចាំ

  • ភាពជាក់លាក់ចម្រុះ (FP16/BF16)

  • ការប្រមូលផ្តុំជម្រាល

  • ប្រវែង/ទំហំ​កាត់​លំដាប់​តូច​ជាង

    • ឃោរឃៅប៉ុន្តែមានប្រសិទ្ធភាព

  • ចំណុចត្រួតពិនិត្យការធ្វើឱ្យសកម្ម

    • គណនា​ពាណិជ្ជកម្ម​សម្រាប់​អង្គចងចាំ (គណនា​ឡើងវិញ​នូវ​ការធ្វើឱ្យសកម្ម​អំឡុងពេល​ថយក្រោយ) ( torch.utils.checkpoint )

  • ប្រើឧបករណ៍បង្កើនប្រសិទ្ធភាពស្រាលជាងមុន

    • ឧបករណ៍បង្កើនប្រសិទ្ធភាពមួយចំនួនរក្សាទុកស្ថានភាពបន្ថែមដែលបំផ្លាញ VRAM

សំណួរ “ហេតុអ្វីបានជា VRAM នៅតែពេញបន្ទាប់ពីខ្ញុំឈប់?”

ជារឿយៗ Framework រក្សាទុកអង្គចងចាំ សម្រាប់ដំណើរការ។ នេះជារឿងធម្មតា។ វាមើលទៅគួរឱ្យខ្លាច ប៉ុន្តែវាមិនមែនជាការលេចធ្លាយជានិច្ចនោះទេ។ អ្នករៀនអានគំរូ។ ( PyTorch CUDA semantics: caching allocator )

ទម្លាប់ជាក់ស្តែង៖

  • មើលអង្គចងចាំដែលបានបែងចែកធៀបនឹងអង្គចងចាំដែលបានបម្រុងទុក (ជាក់លាក់លើក្របខ័ណ្ឌ) ( PyTorch CUDA semantics: caching allocator )

  • កុំភ័យស្លន់ស្លោពេលឃើញលេខដំបូង 😅


៨) ធ្វើឱ្យ GPU ដំណើរការបានពិតប្រាកដ - ការលៃតម្រូវដំណើរការដែលសក្តិសមនឹងពេលវេលារបស់អ្នក 🏎️

ការធ្វើឱ្យ "ការបណ្តុះបណ្តាល GPU ដំណើរការ" គឺជាជំហានទីមួយ។ ការធ្វើឱ្យវា លឿន គឺជាជំហានទីពីរ។

ការបង្កើនប្រសិទ្ធភាពផលប៉ះពាល់ខ្ពស់

ឧបសគ្គដែលមើលរំលងបំផុត

បំពង់ផ្ទុក និងដំណើរការជាមុនរបស់អ្នក។ ប្រសិនបើសំណុំទិន្នន័យរបស់អ្នកមានទំហំធំ ហើយត្រូវបានរក្សាទុកនៅលើថាសយឺត GPU របស់អ្នកនឹងក្លាយជាឧបករណ៍កម្តៅលំហដ៏ថ្លៃ។ ឧបករណ៍កម្តៅលំហដ៏ទំនើប និងភ្លឺចែងចាំងខ្លាំង។.

មួយវិញទៀត សូមសារភាពបន្តិច៖ ខ្ញុំបាន "ធ្វើឲ្យប្រសើរឡើង" នូវគំរូមួយរយៈពេលមួយម៉ោង ទើបដឹងថាការកត់ត្រាទិន្នន័យគឺជាចំណុចកកស្ទះ។ ការបោះពុម្ពច្រើនពេកអាចធ្វើឲ្យការហ្វឹកហាត់យឺត។ បាទ/ចាស៎ វាអាចទៅរួច។.


៩) ការហ្វឹកហ្វឺន Multi-GPU - DDP, NCCL និងការធ្វើមាត្រដ្ឋានដោយគ្មានភាពវឹកវរ 🧩🤝

នៅពេលដែលអ្នកចង់បានល្បឿនកាន់តែច្រើន ឬម៉ូដែលធំជាងនេះ អ្នកគួរតែប្រើ GPU ច្រើន។ នេះជាកន្លែងដែលអ្វីៗកាន់តែមានភាពទាក់ទាញ។.

វិធីសាស្រ្តទូទៅ

  • ទិន្នន័យប៉ារ៉ាឡែល (DDP)

    • បំបែកបាច់ឆ្លងកាត់ GPUs ធ្វើសមកាលកម្មជម្រាល

    • ជាធម្មតាជម្រើស "ល្អ" លំនាំដើម ( ឯកសារ PyTorch DDP )

  • ម៉ូដែលប៉ារ៉ាឡែល / តង់ស័រប៉ារ៉ាឡែល

    • បំបែកម៉ូដែលឆ្លងកាត់ GPU (សម្រាប់ម៉ូដែលធំៗ)

  • បំពង់បង្ហូរប្រេងស្របគ្នា

    • បំបែកស្រទាប់គំរូទៅជាដំណាក់កាល (ដូចជាខ្សែសង្វាក់ផ្គុំ ប៉ុន្តែសម្រាប់តង់ស័រ)

ប្រសិនបើអ្នកកំពុងចាប់ផ្តើម ការហ្វឹកហាត់បែប DDP គឺជាចំណុចដ៏ល្អបំផុត។ ( ការបង្រៀន PyTorch DDP )

គន្លឹះជាក់ស្តែងសម្រាប់ Multi-GPU

  • ត្រូវប្រាកដថា GPU មានសមត្ថភាពស្រដៀងគ្នា (ការលាយបញ្ចូលគ្នាអាចបង្កបញ្ហា)

  • ការតភ្ជាប់នាឡិកា៖ NVLink ទល់នឹង PCIe មានសារៈសំខាន់សម្រាប់បន្ទុកការងារច្រើនដែលត្រូវធ្វើសមកាលកម្ម ( ទិដ្ឋភាពទូទៅរបស់ NVIDIA NVLink , ឯកសារ NVIDIA NVLink )

  • រក្សាទំហំបាច់នីមួយៗនៃ GPU ឲ្យមានតុល្យភាព

  • កុំមើលរំលង CPU និងអង្គផ្ទុកទិន្នន័យ - ការប្រើប្រាស់ GPU ច្រើនអាចបង្កើនភាពកកស្ទះទិន្នន័យ

ហើយមែនហើយ កំហុស NCCL អាចមានអារម្មណ៍ដូចជាពាក្យស្លោកដែលរុំព័ទ្ធដោយអាថ៌កំបាំងដែលរុំព័ទ្ធដោយ "ហេតុអ្វីឥឡូវនេះ"។ អ្នកមិនត្រូវបានបណ្តាសាទេ។ ប្រហែលជា។ ( ទិដ្ឋភាពទូទៅ NCCL )


១០) ការត្រួតពិនិត្យ និងការវិភាគទម្រង់ - របស់ដែលមិនគួរឱ្យចាប់អារម្មណ៍ដែលជួយសន្សំសំចៃពេលវេលារបស់អ្នក 📈🧯

អ្នកមិនត្រូវការផ្ទាំងគ្រប់គ្រងទំនើបៗដើម្បីចាប់ផ្តើមទេ។ អ្នកត្រូវកត់សម្គាល់នៅពេលដែលមានអ្វីមួយខុសប្រក្រតី។.

សញ្ញាសំខាន់ៗដែលត្រូវមើល

  • ការប្រើប្រាស់ GPU ៖ តើវាខ្ពស់ជាប់លាប់ ឬកើនឡើងខ្លាំង?

  • ការប្រើប្រាស់អង្គចងចាំ ៖ មានស្ថេរភាព កើនឡើង ឬចម្លែក?

  • ការប្រើប្រាស់ថាមពល ៖ ទាបខុសពីធម្មតាអាចមានន័យថាការប្រើប្រាស់មិនគ្រប់គ្រាន់

  • សីតុណ្ហភាព ៖ សីតុណ្ហភាពខ្ពស់ជាប់លាប់អាចធ្វើឱ្យដំណើរការថយចុះ

  • ការប្រើប្រាស់ CPU ៖ បញ្ហា​បំពង់​ទិន្នន័យ​បង្ហាញ​នៅ​ទីនេះ ( ការណែនាំ​លៃតម្រូវ​ដំណើរការ PyTorch )

ការវិភាគផ្នត់គំនិត (កំណែសាមញ្ញ)

  • ប្រសិនបើ GPU មានការប្រើប្រាស់ទាប - ទិន្នន័យ ឬបញ្ហាកកស្ទះ CPU

  • ប្រសិនបើ GPU ខ្ពស់ ប៉ុន្តែយឺត - ភាពមិនមានប្រសិទ្ធភាពនៃខឺណែល ភាពជាក់លាក់ ឬស្ថាបត្យកម្មគំរូ

  • ប្រសិនបើល្បឿនហ្វឹកហាត់ធ្លាក់ចុះដោយចៃដន្យ - ការបិទបើកដោយកម្ដៅ ដំណើរការផ្ទៃខាងក្រោយ បញ្ហា I/O

ខ្ញុំដឹងហើយថា ការតាមដានស្តាប់ទៅដូចជាមិនសប្បាយទេ។ ប៉ុន្តែវាដូចជាការដុសសម្អាតធ្មេញអញ្ចឹង។ វារំខានណាស់ បន្ទាប់មកភ្លាមៗនោះជីវិតរបស់អ្នកក៏ប្រសើរឡើង។.


១១) ការដោះស្រាយបញ្ហា - ជនសង្ស័យធម្មតា (និងជនសង្ស័យដែលមិនសូវស្គាល់) 🧰😵💫

ផ្នែកនេះជាទូទៅគឺ៖ «បញ្ហាប្រាំដូចគ្នា ជារៀងរហូត»។

បញ្ហា៖ CUDA អស់អង្គចងចាំ

ការជួសជុល៖

បញ្ហា៖ ការហ្វឹកហាត់ដំណើរការលើ CPU ដោយចៃដន្យ

ការជួសជុល៖

  • ធានាថាម៉ូដែលត្រូវបានផ្លាស់ទីទៅ Cuda

  • ធានាថា tensors ត្រូវបានផ្លាស់ទីទៅ cuda

  • ពិនិត្យមើលការកំណត់រចនាសម្ព័ន្ធឧបករណ៍ក្របខ័ណ្ឌ ( ឯកសារ PyTorch CUDA )

បញ្ហា៖ ការគាំងចម្លែក ឬការចូលប្រើអង្គចងចាំខុសច្បាប់

ការជួសជុល៖

  • បញ្ជាក់​ភាពឆបគ្នា​នៃ​កម្មវិធីបញ្ជា + ពេល​ដំណើរការ ( PyTorch Get Started (ឧបករណ៍ជ្រើសរើស CUDA) , ការដំឡើង TensorFlow (pip) )

  • សាកល្បងបរិស្ថានស្អាត

  • កាត់បន្ថយប្រតិបត្តិការផ្ទាល់ខ្លួន

  • ដំណើរការឡើងវិញជាមួយនឹងការកំណត់បែបកំណត់ដើម្បីបង្កើតឡើងវិញ

បញ្ហា៖ យឺតជាងការរំពឹងទុក

ការជួសជុល៖

បញ្ហា៖ កាតក្រាហ្វិកច្រើនជាប់គាំង

ការជួសជុល៖

  • បញ្ជាក់ការកំណត់ backend ត្រឹមត្រូវ ( ឯកសារចែកចាយ PyTorch )

  • ពិនិត្យមើលការកំណត់រចនាសម្ព័ន្ធបរិស្ថាន NCCL (ប្រយ័ត្ន) ( ទិដ្ឋភាពទូទៅ NCCL )

  • សាកល្បង GPU តែមួយជាមុនសិន

  • ត្រូវប្រាកដថាបណ្តាញ / ការតភ្ជាប់គ្នាមានសុខភាពល្អ

កំណត់ចំណាំតូចមួយសម្រាប់រំលឹកឡើងវិញ៖ ពេលខ្លះការជួសជុលគឺពិតជាការចាប់ផ្ដើមកុំព្យូទ័រឡើងវិញ។ វាមានអារម្មណ៍មិនសមហេតុផល។ វាដំណើរការ។ កុំព្យូទ័រគឺដូច្នោះ។.


១២) តម្លៃ និងភាពងាយស្រួល - ការជ្រើសរើស GPU NVIDIA និងការដំឡើងត្រឹមត្រូវដោយមិនចាំបាច់គិតច្រើនពេក 💸🧠

មិនមែនគ្រប់គម្រោងទាំងអស់សុទ្ធតែត្រូវការ GPU ធំបំផុតនោះទេ។ ពេលខ្លះអ្នកត្រូវការ GPU គ្រប់គ្រាន់

ប្រសិនបើអ្នកកំពុងកែលម្អម៉ូដែលមធ្យម

ប្រសិនបើអ្នកកំពុងហ្វឹកហាត់ម៉ូដែលធំៗពីដំបូង

ប្រសិនបើអ្នកកំពុងធ្វើការពិសោធន៍

  • អ្នកចង់បានការផ្សាយឡើងវិញលឿន

  • កុំចំណាយលុយទាំងអស់របស់អ្នកលើ GPU ហើយបន្ទាប់មកបាត់បង់ទំហំផ្ទុក និង RAM

  • ប្រព័ន្ធដែលមានតុល្យភាពយកឈ្នះលើប្រព័ន្ធដែលមានតុល្យភាព (ភាគច្រើននៃថ្ងៃ)

ហើយតាមពិតទៅ អ្នកអាចខ្ជះខ្ជាយពេលវេលាជាច្រើនសប្តាហ៍ក្នុងការស្វែងរកជម្រើសផ្នែករឹងដែល "ល្អឥតខ្ចោះ"។ សាងសង់អ្វីមួយដែលអាចដំណើរការបាន វាស់វែង បន្ទាប់មកកែតម្រូវ។ សត្រូវពិតប្រាកដមិនមែនជាការមានរង្វិលជុំមតិត្រឡប់នោះទេ។.


កំណត់ចំណាំបិទ - របៀបប្រើ NVIDIA GPU សម្រាប់ការបណ្តុះបណ្តាល AI ដោយមិនបាត់បង់ស្មារតីរបស់អ្នក 😌✅

ប្រសិនបើអ្នកមិនយកអ្វីផ្សេងទៀតពីមគ្គុទ្ទេសក៍នេះអំពី របៀបប្រើ NVIDIA GPU សម្រាប់ការបណ្តុះបណ្តាល AI សូមយកវា៖

  • ត្រូវប្រាកដថា nvidia-smi ដំណើរការជាមុនសិន ( ឯកសារ NVIDIA nvidia-smi )

  • ជ្រើសរើសផ្លូវកម្មវិធីស្អាតមួយ (CUDA ដែលភ្ជាប់មកជាមួយ framework ជារឿយៗងាយស្រួលបំផុត) ( PyTorch Get Started (CUDA selector) )

  • ផ្ទៀងផ្ទាត់ដំណើរការហ្វឹកហាត់ GPU តូចមួយមុនពេលធ្វើមាត្រដ្ឋាន ( torch.cuda.is_available )

  • គ្រប់គ្រង VRAM ដូចជាវាជាធ្នើរបន្ទប់ទុកដាក់អាហារមានកំណត់

  • ប្រើភាពជាក់លាក់ចម្រុះតាំងពីដំបូង - វាមិនមែនគ្រាន់តែជា "របស់កម្រិតខ្ពស់" នោះទេ ( ឯកសារ PyTorch AMP , មគ្គុទ្ទេសក៍ភាពជាក់លាក់ចម្រុះ TensorFlow )

  • ប្រសិនបើវាយឺត សូមសង្ស័យលើឧបករណ៍ផ្ទុកទិន្នន័យ និង I/O មុនពេលបន្ទោស GPU ( PyTorch Performance Tuning Guide )

  • ពហុ GPU មានថាមពលខ្លាំង ប៉ុន្តែបន្ថែមភាពស្មុគស្មាញ - ធ្វើមាត្រដ្ឋានបន្តិចម្តងៗ ( ឯកសារ PyTorch DDP , ទិដ្ឋភាពទូទៅ NCCL )

  • តាមដានការប្រើប្រាស់ និងសីតុណ្ហភាព ដើម្បីឱ្យបញ្ហាលេចឡើងមុន ( ឯកសារ NVIDIA nvidia-smi )

ការហ្វឹកហាត់លើ NVIDIA GPUs គឺជាជំនាញមួយក្នុងចំណោមជំនាញទាំងនោះដែលមានអារម្មណ៍ថាគួរឱ្យខ្លាច ប៉ុន្តែភ្លាមៗនោះវាគ្រាន់តែ...ធម្មតា។ ដូចជាការរៀនបើកបរអញ្ចឹង។ ដំបូងឡើយអ្វីៗទាំងអស់មានសំឡេងរំខាន និងច្របូកច្របល់ ហើយអ្នកកាន់ចង្កូតខ្លាំងពេក។ បន្ទាប់មកថ្ងៃមួយអ្នកកំពុងបើកបរ ផឹកកាហ្វេ ហើយដោះស្រាយបញ្ហាទំហំបាច់ដោយចៃដន្យដូចជាវាមិនមែនជារឿងធំដុំអ្វីនោះទេ ☕😄

សំណួរដែលសួរញឹកញាប់

អត្ថន័យនៃការហ្វឹកហាត់គំរូ AI លើ NVIDIA GPU

ការហ្វឹកហាត់លើ NVIDIA GPU មានន័យថា ប៉ារ៉ាម៉ែត្រគំរូ និងបាច់ហ្វឹកហាត់របស់អ្នកស្ថិតនៅក្នុង GPU VRAM ហើយការគណនាដ៏ស្មុគស្មាញ (forward pass, backprop, ជំហាន optimizer) ត្រូវបានអនុវត្តតាមរយៈខឺណែល CUDA។ នៅក្នុងការអនុវត្តជាក់ស្តែង នេះជារឿយៗអាស្រ័យលើការធានាថាគំរូ និង tensors ស្ថិតនៅលើ cuda បន្ទាប់មកតាមដានអង្គចងចាំ ការប្រើប្រាស់ និងសីតុណ្ហភាព ដូច្នេះ throughput នៅតែស្ថិតស្ថេរ។

របៀបបញ្ជាក់ថា NVIDIA GPU កំពុងដំណើរការមុនពេលដំឡើងអ្វីផ្សេងទៀត

ចាប់ផ្តើមជាមួយ nvidia-smi ។ វាគួរតែបង្ហាញឈ្មោះ GPU កំណែកម្មវិធីបញ្ជា ការប្រើប្រាស់អង្គចងចាំបច្ចុប្បន្ន និងដំណើរការណាមួយដែលកំពុងដំណើរការ។ ប្រសិនបើ nvidia-smi បរាជ័យ សូមផ្អាក PyTorch/TensorFlow/JAX - ជួសជុលភាពមើលឃើញរបស់កម្មវិធីបញ្ជាជាមុនសិន។ វាជាការត្រួតពិនិត្យមូលដ្ឋាន "តើឡត្រូវបានដោតចូលឬអត់" សម្រាប់ការហ្វឹកហាត់ GPU។

ការជ្រើសរើសរវាងប្រព័ន្ធ CUDA និង CUDA ដែលភ្ជាប់មកជាមួយ PyTorch

វិធីសាស្រ្តទូទៅមួយគឺការប្រើប្រាស់ CUDA ដែលភ្ជាប់មកជាមួយ framework (ដូចជាកង់ PyTorch ជាច្រើន) ពីព្រោះវាកាត់បន្ថយផ្នែកដែលមានចលនា - អ្នកភាគច្រើនត្រូវការកម្មវិធីបញ្ជា NVIDIA ដែលឆបគ្នា។ ការដំឡើងឧបករណ៍ CUDA ប្រព័ន្ធពេញលេញផ្តល់នូវការគ្រប់គ្រងកាន់តែច្រើន (ការបង្កើតផ្ទាល់ខ្លួន ការចងក្រងប្រតិបត្តិការ) ប៉ុន្តែវាក៏ណែនាំឱកាសកាន់តែច្រើនសម្រាប់ភាពមិនស៊ីគ្នានៃកំណែ និងកំហុសពេលដំណើរការដែលច្រឡំផងដែរ។.

ហេតុអ្វីបានជាការហ្វឹកហាត់នៅតែអាចយឺតសូម្បីតែជាមួយ NVIDIA GPU ក៏ដោយ

ជារឿយៗ GPU ត្រូវបានអត់ឃ្លានដោយបំពង់បញ្ចូល។ ឧបករណ៍ផ្ទុកទិន្នន័យដែលយឺតយ៉ាវ ការដំណើរការជាមុនរបស់ CPU ច្រើននៅក្នុងជំហានបណ្តុះបណ្តាល ទំហំបាច់តូច ឬការផ្ទុកទិន្នន័យយឺត សុទ្ធតែអាចធ្វើឱ្យ GPU ដ៏មានអានុភាពមានឥរិយាបទដូចជាឧបករណ៍កម្តៅកន្លែងទំនេរ។ ការបង្កើនកម្មករផ្ទុកទិន្នន័យ ការបើកដំណើរការអង្គចងចាំដែលបានខ្ទាស់ ការបន្ថែមការទាញយកជាមុន និងការកាត់ចេញកំណត់ហេតុ គឺជាជំហានដំបូងទូទៅមុនពេលបន្ទោសគំរូ។.

វិធីការពារកំហុស "CUDA អស់អង្គចងចាំ" អំឡុងពេលហ្វឹកហាត់ NVIDIA GPU

ការជួសជុលភាគច្រើនគឺជាយុទ្ធសាស្ត្រ VRAM៖ កាត់បន្ថយទំហំបាច់ បើកភាពជាក់លាក់ចម្រុះ (FP16/BF16) ប្រើការប្រមូលផ្តុំជម្រាល កាត់បន្ថយប្រវែងលំដាប់/ទំហំដំណាំ ឬប្រើការត្រួតពិនិត្យការធ្វើឱ្យសកម្ម។ សូមពិនិត្យមើលដំណើរការ GPU ផ្សេងទៀតដែលប្រើប្រាស់អង្គចងចាំផងដែរ។ ការសាកល្បង និងកំហុសខ្លះគឺជារឿងធម្មតា - ការរៀបចំថវិកា VRAM ក្លាយជាទម្លាប់ស្នូលនៅក្នុងការបណ្តុះបណ្តាល GPU ជាក់ស្តែង។.

ហេតុអ្វីបានជា VRAM នៅតែអាចមើលទៅពេញបន្ទាប់ពីស្គ្រីបបណ្តុះបណ្តាលបញ្ចប់

ស៊ុមការងារជារឿយៗរក្សាទុកអង្គចងចាំ GPU ក្នុងឃ្លាំងសម្ងាត់សម្រាប់ល្បឿន ដូច្នេះអង្គចងចាំដែលបានបម្រុងទុកអាចនៅតែខ្ពស់ទោះបីជាអង្គចងចាំដែលបានបែងចែកធ្លាក់ចុះក៏ដោយ។ វាអាចស្រដៀងនឹងការលេចធ្លាយ ប៉ុន្តែជាញឹកញាប់វាគឺជាអ្នកបែងចែកឃ្លាំងសម្ងាត់ដែលមានឥរិយាបទដូចដែលបានរចនា។ ទម្លាប់ជាក់ស្តែងគឺត្រូវតាមដានគំរូតាមពេលវេលា ហើយប្រៀបធៀប "បានបែងចែកទល់នឹងបានបម្រុងទុក" ជាជាងការផ្តោតលើរូបភាពដែលគួរឱ្យព្រួយបារម្ភតែមួយ។.

របៀបបញ្ជាក់ថាម៉ូដែលមួយមិនកំពុងហ្វឹកហាត់ដោយស្ងាត់ៗលើ CPU ទេ

ការត្រួតពិនិត្យសុខភាពមុន៖ បញ្ជាក់ torch.cuda.is_available() ត្រឡប់ True ផ្ទៀងផ្ទាត់ next(model.parameters()).device បង្ហាញ cuda ហើយដំណើរការការបញ្ជូនបន្តតែមួយដោយគ្មានកំហុស។ ប្រសិនបើដំណើរការមានអារម្មណ៍ថាយឺតគួរឱ្យសង្ស័យ សូមបញ្ជាក់ផងដែរថាបាច់របស់អ្នកកំពុងត្រូវបានផ្លាស់ទីទៅ GPU។ វាជារឿងធម្មតាទេក្នុងការផ្លាស់ទីគំរូ ហើយទុកទិន្នន័យចោលដោយចៃដន្យ។

ផ្លូវងាយស្រួលបំផុតទៅកាន់ការបណ្តុះបណ្តាលពហុ GPU

ការប្រើប្រាស់ Data Parallel (ការហ្វឹកហ្វឺនបែប DDP) ជារឿយៗជាជំហានដំបូងដ៏ល្អបំផុត៖ បំបែកបាច់ឆ្លងកាត់ GPU និងធ្វើសមកាលកម្មជម្រាល។ ឧបករណ៍ដូចជា Accelerate អាចធ្វើឱ្យ multi-GPU មិនសូវឈឺចាប់ដោយមិនចាំបាច់សរសេរឡើងវិញពេញលេញ។ រំពឹងថានឹងមានអថេរបន្ថែម - ការទំនាក់ទំនង NCCL ភាពខុសគ្នានៃការតភ្ជាប់ (NVLink ទល់នឹង PCIe) និងចំណុចកកស្ទះទិន្នន័យដែលបានពង្រីក - ដូច្នេះការធ្វើមាត្រដ្ឋានបន្តិចម្តងៗបន្ទាប់ពីការដំណើរការ GPU តែមួយដ៏រឹងមាំមានទំនោរទៅបានល្អជាង។.

អ្វីដែលត្រូវតាមដានក្នុងអំឡុងពេលហ្វឹកហាត់ NVIDIA GPU ដើម្បីចាប់បញ្ហាបានទាន់ពេលវេលា

សូមតាមដានការប្រើប្រាស់ GPU ការប្រើប្រាស់អង្គចងចាំ (មានស្ថេរភាពធៀបនឹងការកើនឡើង) ការប្រើប្រាស់ថាមពល និងសីតុណ្ហភាព - ការគ្រប់គ្រងល្បឿនអាចធ្វើឱ្យល្បឿនថយចុះដោយស្ងាត់ៗ។ សូមតាមដានការប្រើប្រាស់ CPU ផងដែរ ព្រោះបញ្ហាបំពង់ទិន្នន័យច្រើនតែលេចឡើងនៅទីនោះមុន។ ប្រសិនបើការប្រើប្រាស់មានការកើនឡើងខ្លាំង ឬទាប សូមសង្ស័យថា I/O ឬកម្មវិធីផ្ទុកទិន្នន័យ។ ប្រសិនបើវាខ្ពស់ ប៉ុន្តែពេលវេលាជំហាននៅតែយឺត ខឺណែលទម្រង់ របៀបភាពជាក់លាក់ និងការបំបែកពេលវេលាជំហាន។.

ឯកសារយោង

  1. NVIDIA - ឯកសារ NVIDIA nvidia-smi - docs.nvidia.com

  2. NVIDIA - ចំណុចប្រទាក់គ្រប់គ្រងប្រព័ន្ធ NVIDIA (NVSMI) - developer.nvidia.com

  3. NVIDIA - ទិដ្ឋភាពទូទៅ NVIDIA NVLink - nvidia.com

  4. PyTorch - ចាប់ផ្តើម PyTorch (ឧបករណ៍ជ្រើសរើស CUDA) - pytorch.org

  5. PyTorch - ឯកសារ PyTorch CUDA - docs.pytorch.org

  6. TensorFlow - ការដំឡើង TensorFlow (pip) - tensorflow.org

  7. JAX - ការចាប់ផ្តើមរហ័ស JAX - docs.jax.dev

  8. ឱបមុខ - ឯកសារគ្រូបង្វឹក - huggingface.co

  9. បញ្ញាសិប្បនិម្មិតរន្ទះ - ឯកសាររន្ទះ - lightning.ai

  10. DeepSpeed ​​- ZeRO - deepspeed.readthedocs.io

  11. ការស្រាវជ្រាវរបស់ Microsoft - ការស្រាវជ្រាវរបស់ Microsoft៖ ZeRO/DeepSpeed ​​- microsoft.com

  12. វេទិកា PyTorch - វេទិកា PyTorch៖ ពិនិត្យមើលគំរូនៅលើ CUDA - discuss.pytorch.org

ស្វែងរក AI ចុងក្រោយបំផុតនៅហាងជំនួយការ AI ផ្លូវការ

អំពីយើង

ត្រឡប់ទៅប្លុកវិញ