Membangun infrastruktur dan menyiapkan skrip
Pendahuluan
- Selama beberapa bulan, tim riset kecil dan tim engineering melatih model berparameter 70B dari nol di infrastruktur mereka sendiri, dan berhasil melampaui zero-shot GPT-4o pada tugas-tugas terkait reasoning.
- Hari ini mereka membagikan panduan komprehensif tentang pengaturan infrastruktur yang dibutuhkan, mulai dari konfigurasi cluster awal, instalasi sistem operasi, hingga pemulihan otomatis dari error yang terjadi selama pelatihan.
- Mereka menjelaskan secara rinci tantangan yang dihadapi di setiap tahap dan cara mengatasinya, serta merilis skrip infrastruktur agar tim lain dapat dengan mudah membangun infrastruktur yang stabil.
Latar belakang: bagaimana sistem ini bekerja
- GPU cepat diperlukan untuk menjalankan eksperimen large language model dalam skala besar dengan cepat.
- Mereka menggunakan cluster dengan 4.092 GPU H100 yang tersebar di 511 komputer.
- Hal ini memungkinkan komunikasi berkecepatan tinggi antargpu melalui jaringan InfiniBand.
Proses: cara beralih dari bare metal ke cluster operasional penuh
Provisioning mesin individual
- Koneksi Ethernet awal ke cluster disiapkan melalui jaringan manajemen, lalu akses ke BMC (baseboard management controller) dilakukan.
- Ubuntu 22.04 dipasang di server pertama menggunakan iDRAC, lalu server tersebut digunakan untuk menyiapkan server lainnya.
Memasang OS di semua mesin
- Perangkat lunak MAAS digunakan untuk melakukan provisioning pada server lainnya.
- Dengan PXE boot dan alat iDRAC otomatis, mesin dikonfigurasi agar dapat boot melalui jaringan, dan MAAS disiapkan untuk merespons permintaan PXE boot.
Mendiagnosis mesin yang rusak
- Sekitar 10% mesin gagal boot, sebagian besar disebabkan oleh masalah fisik.
- Masalah ditemukan melalui pemeriksaan otomatis, lalu diminta retest ke Dell atau dibuat tiket untuk staf data center.
Menyiapkan bare metal yang minimally observable
- Docker, driver GPU untuk data center, Prometheus node exporter, dan komponen lain dipasang di semua server.
- Diagnostik GPU dasar dijalankan untuk memastikan sebagian besar GPU berfungsi normal.
Pelatihan GPU single-node
- Dipastikan bahwa semua mesin dapat menangani pekerjaan GPU secara mandiri.
- Error terkait GPU diperbaiki, termasuk masalah koneksi antara PCIe bus dan kartu jaringan.
Provisioning InfiniBand
- UFM (Unified Fabric Manager) dipasang, switch jaringan dideteksi, dan diberi nama berdasarkan lokasi fisiknya.
- Masalah pengkabelan jaringan dan peringatan suhu juga diselesaikan.
Memastikan mesin benar-benar sehat
- Berbagai health check dilakukan untuk memverifikasi host yang sehat dan layak digunakan untuk pelatihan.
- Pemeriksaan mencakup GPU, ruang disk, Docker, dmesg, iDRAC, disk, InfiniBand, NVLink, GDR, VBIOS, Flint, PSB, dan lain-lain.
Mendiagnosis masalah pelatihan yang umum
- Setelah hardware mulai bekerja dengan semestinya, pelatihan dimulai.
- Berbagai masalah ditangani, seperti crash saat startup, crash di tengah jalan, berhenti tanpa informasi stack trace, dan penurunan kecepatan pelatihan.
Meningkatkan alat infrastruktur
- Berbagai alat dan sistem dikembangkan agar pelatihan dapat berjalan lancar.
- Mesin yang rusak dan komponen jaringan bermasalah dinonaktifkan secara otomatis, dan permintaan perbaikan juga diotomatisasi.
- Mereka membangun mirror file system lokal serta local distributed Docker registry.
- Alat pemantauan performa disiapkan, dan alat tambahan dibuat untuk mendeteksi batch pelatihan yang lambat serta memahami penyebabnya.
Opini GN⁺
- Artikel ini sangat berguna karena memberikan pengalaman praktis dan solusi nyata untuk penyiapan serta pengelolaan cluster skala besar.
- Kompleksitas pembangunan infrastruktur yang dibutuhkan untuk melatih large language model dijelaskan dengan baik.
- Berbagai skrip dan alat disediakan sebagai referensi bagi tim lain yang ingin membangun infrastruktur serupa.
- Pentingnya jaringan InfiniBand dan potensi masalah yang dapat muncul selama proses penyiapannya dijelaskan dengan baik.
- Artikel ini juga menjelaskan dengan baik hal-hal yang perlu dipertimbangkan saat mengadopsi teknologi baru atau open source, beserta kelebihan dan kekurangannya.
1 komentar
Komentar Hacker News
Tim riset kecil melatih model 70B parameter di infrastruktur mereka sendiri dan melampaui GPT-4 zero-shot pada tugas-tugas terkait reasoning
Dalam satu klaster ada 4.092 GPU H100 yang tersebar di 511 komputer
Topik ini dibahas di podcast Latent Space beberapa hari lalu
Ada yang penasaran mengapa diperlukan begitu banyak perangkat keras PC
Akan menarik jika, dengan perangkat keras yang sama, pelatihan diulang menggunakan Unicode mentah alih-alih data pelatihan yang ditokenisasi
4.092 GPU H100
Ada yang tertarik pada total konsumsi daya yang diperlukan untuk membangun model ini
Ada yang penasaran berapa total biayanya
Cisco sedang menjalankan kolaborasi baru dengan NVIDIA pada kecepatan per port 800G
Ada yang penasaran apa yang terjadi pada perangkat keras dan infrastruktur setelah model selesai dilatih