Dokumen ini menjelaskan slicing dinamis di Google Kubernetes Engine (GKE) untuk Cloud TPU. Slicing dinamis meningkatkan efisiensi dan fleksibilitas TPU dengan memisahkan penyediaan TPU dari kebutuhan slice TPU workload. Slicing dinamis membantu meningkatkan pemanfaatan resource TPU dengan mengurangi waktu startup workload hingga lima kali lipat, dan waktu pemulihan hingga 4,5 kali lipat.
Slicing dinamis ditujukan untuk Engineer machine learning (ML) dan Engineer platform yang ingin mengoptimalkan pemanfaatan TPU, mengurangi waktu penyediaan, dan meningkatkan fault tolerance untuk workload pelatihan dan inferensi berskala besar.
Sebelum membaca dokumen ini, Anda harus memahami hal-hal berikut:
- TPU di GKE.
- Ringkasan mode TPU All Capacity. Fitur slicing dinamis tersedia secara eksklusif di TPU yang menggunakan mode Semua Kapasitas.
Apa itu slicing dinamis?
Slicing dinamis adalah fitur pengoptimalan TPU GKE yang memisahkan penyediaan hardware TPU fisik dan statis dari alokasi slice TPU saat runtime saat workload dijadwalkan.
Saat Anda menggunakan topologi TPU statis, node pool GKE terikat ke topologi tertentu yang Anda konfigurasi selama pembuatan. Karena batasan ini, jika ada node dalam pool statis yang gagal, seluruh node pool akan terpengaruh. Topologi workload Anda juga harus sama persis dengan topologi TPU node pool agar dapat dijadwalkan, yang mungkin memerlukan penyediaan ulang infrastruktur TPU secara berkala untuk workload yang berbeda.
Slicing dinamis memungkinkan GKE mengonfigurasi slice TPU saat runtime
ketika workload dijadwalkan. Daripada membuat node pool secara manual dengan topologi TPU yang tepat yang diperlukan untuk setiap workload baru, Anda dapat melakukan pra-penyediaan seluruh kapasitas TPU ke dalam node pool terperinci berukuran tetap. Untuk Ironwood (TPU7x),
setiap node pool terdiri dari topologi 4x4x4, yang juga dikenal sebagai
sub-blok. Sub-blok
mewakili grup 16 node VM TPU tanpa mesh topologi Inter-Chip Interconnect (ICI) aktif. Saat
runtime, ketika workload dijadwalkan, slicing dinamis GKE
akan mengonfigurasi ulang interkoneksi jaringan TPU untuk menggabungkan beberapa node pool
menjadi slice TPU besar yang diperlukan atau membagi node pool untuk membentuk slice TPU
yang lebih kecil. Konfigurasi ulang ini membuat topologi multi-dimensi yang tepat
yang diminta oleh workload dalam hitungan detik.
Manfaat slicing dinamis
Menerapkan arsitektur TPU dinamis di GKE memberikan keuntungan berikut:
- Pemulihan workload yang lebih cepat: jika terjadi kegagalan hardware fisik, GKE akan mengisolasi masalah ke satu partisi. Pengontrol slice GKE secara otomatis mengubah bentuk slice aktif dan mengonfigurasi ulang jaringan untuk mengganti partisi yang rusak dengan cadangan yang responsif. Proses ini meningkatkan ketahanan atau waktu pemulihan rata-rata (MTTR) hingga 4,5 kali lipat dibandingkan dengan membuat ulang seluruh node pool.
- Mempercepat startup Tugas: slice workload dapat dibentuk secara dinamis, yang menawarkan peningkatan latensi startup Tugas hingga lima kali lipat dibandingkan dengan membuat node pool statis.
- Isolasi kegagalan: kegagalan hardware diisolasi ke partisi tertentu tempat kesalahan terjadi. Isolasi ini membantu melindungi tugas serentak lainnya di cluster dari kegagalan beruntun.
- Pemanfaatan resource yang dioptimalkan: slicing dinamis membantu menghilangkan kapasitas yang tidak terpakai atau kurang dimanfaatkan. Karena slice dikonfigurasi agar sesuai dengan permintaan workload, slicing dinamis membantu memaksimalkan pemanfaatan fleet dan meminimalkan hardware yang tidak digunakan.
- Orkestrasi deklaratif: slicing dinamis menggunakan resource dan anotasi kustom berbasis Kubernetes, seperti
JobSetdan Kueue. Pendekatan ini secara otomatis mengelola jaringan tingkat rendah dan orkestrasi hardware.
Konfigurasi slicing dinamis
Slicing dinamis menawarkan konfigurasi berikut:
Super-slicing dinamis: menggabungkan beberapa node pool TPU yang terpisah secara fisik dan telah disediakan sebelumnya untuk membentuk satu slice virtual pada waktu penjadwalan workload. Misalnya, Anda dapat menggabungkan dua node pool
4x4x4untuk membentuk topologi4x4x8. Kemampuan ini memungkinkan Anda membuat slice yang sama dengan atau lebih besar dari topologi4x4x4. Konfigurasi ini memerlukan versi 1.35.2-gke.1842000 atau yang lebih baru. Anda dapat menggunakan super-slicing dinamis untuk melatih model dasar besar yang melebihi kapasitas satu blok hardware fisik.Pengontrol slice mengatur konfigurasi ulang fisik dalam fabric jaringan Optical Circuit Switch (OCS). Dengan mengonfigurasi ulang OCS secara dinamis, GKE memperluas jaringan Inter-Chip Interconnect (ICI) di seluruh rak hardware independen. Dari perspektif workload, sub-blok gabungan beroperasi sebagai mesh toroidal tunggal. Dalam mesh toroidal, koneksi akan melingkar. Chip di tepi kanan terhubung langsung kembali ke chip di tepi kiri, dan bagian atas terhubung ke bagian bawah. Jika Anda memvisualisasikan pengaturan ini, pengaturan tersebut akan membentuk bentuk torus (bentuk cincin).
Sub-slicing dinamis: mempartisi satu node pool TPU yang telah disediakan sebelumnya menjadi beberapa unit yang lebih kecil dan independen di tingkat workload. Sub-slicing dinamis memungkinkan Anda membuat topologi yang lebih kecil dalam satu sub-blok, khususnya
2x2x1,2x2x2,2x2x4, dan2x4x4. Misalnya, Anda dapat mempartisi sub-blok4x4x4menjadi satu sub-slice2x2x4dan dua sub-slice2x2x2. Konfigurasi ini memerlukan versi 1.36.0-gke.3712000 atau yang lebih baru di saluran Rapid.Dengan sub-slicing dinamis, Anda menjalankan beberapa workload di satu node pool fisik. Misalnya, Anda dapat menjalankan fine-tuning, eksperimen, dan inferensi online secara serentak. Sub-slicing memberikan isolasi listrik dan jaringan antara sub-slice ini, yang membantu mengisolasi kegagalan atau dampak performa antar-workload.
Karakteristik utama konfigurasi slicing dinamis
Konfigurasi slicing dinamis memiliki karakteristik berikut:
- Penyediaan inkremental node pool: slicing dinamis menggunakan penyediaan inkremental, yang merupakan model penyediaan node pool yang fault-tolerant. Model ini mengonversi semua kapasitas TPU Anda menjadi node pool yang terdiri dari grup 16 node VM Ironwood (TPU7x), sehingga Anda dapat terus menyediakan dan memanfaatkan kubus yang bahkan sebagian tidak responsif.
- Slice controller: pengontrol Resource Kustom Kubernetes yang berjalan dalam bidang kontrol GKE yang mengelola slicing dinamis. Pengontrol slice mengelola siklus proses resource kustom Slice, yang mewakili slice dinamis (menangani pembuatan, pemantauan berkelanjutan, dan penghapusan). Fitur ini juga menyebarkan data kondisi infrastruktur (host, ICI, OCS) ke label node untuk membantu mengidentifikasi node kandidat yang responsif.
- Resource kustom slice: mewakili slice logis dan memulai konfigurasi dinamis link antar-node (ICI dan OCS) untuk membentuk topologi TPU yang diminta. Proses ini menggabungkan beberapa sub-blok (super-slicing) atau mengisolasi topologi yang lebih kecil dalam satu sub-blok (sub-slicing). Anda dapat memeriksa progres atau kondisi pembentukan slice dinamis dengan memeriksa kolom status resource kustom Slice.
Persyaratan
Untuk menggunakan slicing dinamis di GKE, Anda harus memenuhi persyaratan berikut:
- Gunakan cluster Standard di saluran Rapid di salah satu versi berikut:
- Untuk konfigurasi super-slicing dinamis (topologi yang sama dengan atau lebih besar dari
4x4x4), gunakan versi 1.35.2-gke.1842000 atau yang lebih baru. - Untuk konfigurasi sub-slicing dinamis (topologi yang lebih kecil
dari
4x4x4), gunakan versi 1.36.0-gke.3712000 atau yang lebih baru.
- Untuk konfigurasi super-slicing dinamis (topologi yang sama dengan atau lebih besar dari
- Gunakan versi Ironwood (TPU7x).
- Gunakan image Container-Optimized OS untuk node Anda.
- Untuk menggunakan penyediaan inkremental, gunakan pemesanan mode Semua Kapasitas. Mode All Capacity adalah fitur yang diaktifkan oleh TPU Cluster Director.
- Untuk sub-slicing dinamis, pastikan node Anda memiliki peristiwa pemeliharaan yang tertunda. Pantau instance Anda untuk mengetahui peristiwa pemeliharaan yang tertunda. Jika ada node Anda yang memiliki peristiwa pemeliharaan tertunda dengan waktu berakhir antara 18 September 2026 dan 30 September 2026, Anda harus memicu peristiwa pemeliharaan host secara manual pada node tersebut sebelum dapat menggunakan sub-slicing.
Menggunakan penjadwal untuk slicing dinamis
Untuk menggunakan slicing dinamis, Anda dapat menggunakan salah satu opsi berikut:
- Gunakan penjadwal Anda sendiri untuk mengelola resource kustom Slice. Opsi ini berguna jika Anda memiliki persyaratan penjadwalan yang kompleks atau jika Anda ingin mengintegrasikan slicing dinamis dengan infrastruktur penjadwalan yang ada. Untuk memulai, lihat Menggunakan slicing dinamis dengan penjadwal kustom.
- Gunakan penjadwal untuk membuat resource kustom Slice secara otomatis. Anda dapat mengonfigurasi Kueue dan Topology Aware Scheduling (TAS) untuk otomatis membuat resource kustom Slice. Untuk memulai, lihat Menjadwalkan slice dinamis dengan Kueue dan TAS.
Langkah berikutnya
- Minta kapasitas TPU dalam mode All Capacity.
- Menjadwalkan slice dinamis dengan Kueue dan TAS.
- Gunakan slicing dinamis dengan penjadwal kustom.
- Men-deploy workload Cloud TPU dengan slicing dinamis di Cluster Toolkit.