Tentang TPU di GKE


Halaman ini memperkenalkan Cloud TPU dan menunjukkan tempat untuk menemukan informasi terkait penggunaan Cloud TPU dengan Google Kubernetes Engine (GKE). Tensor Processing Unit (TPU) adalah sirkuit terintegrasi khusus aplikasi (ASIC) Google yang dikembangkan secara khusus dan digunakan untuk mempercepat workload machine learning yang menggunakan framework seperti TensorFlow, PyTorch, dan JAX.

Sebelum menggunakan TPU di GKE, sebaiknya selesaikan jalur pembelajaran berikut:

  1. Pelajari cara kerja akselerator machine learning dengan Pengantar Cloud TPU.
  2. Pelajari ketersediaan versi TPU saat ini dengan arsitektur sistem Cloud TPU.

Untuk mempelajari cara menyiapkan Cloud TPU di GKE, lihat referensi berikut:

Manfaat menggunakan TPU di GKE

GKE memberikan dukungan penuh untuk pengelolaan siklus proses VM TPU, termasuk membuat, mengonfigurasi, dan menghapus VM TPU. GKE juga mendukung Spot VM dan menggunakan Cloud TPU yang dicadangkan. Manfaat menggunakan TPU di GKE meliputi:

  • Lingkungan operasional yang konsisten: Satu platform untuk semua machine learning dan workload lainnya.
  • Upgrade otomatis: GKE mengotomatiskan update versi yang mengurangi overhead operasional.
  • Load balancing: GKE mendistribusikan latensi pengurangan beban dan meningkatkan keandalan.
  • Penskalaan responsif: GKE menskalakan resource TPU secara otomatis untuk memenuhi kebutuhan workload Anda.
  • Pengelolaan resource: Dengan Kueue, sistem antrean tugas berbasis Kubernetes, Anda dapat mengelola resource di beberapa tenant dalam organisasi menggunakan antrean, preemption, prioritas, dan pembagian wajar.

Terminologi yang terkait dengan TPU di GKE

Dokumen ini menggunakan terminologi berikut terkait TPU:

  • Jenis TPU: jenis Cloud TPU, seperti v5e.
  • Slice TPU: Kumpulan chip TPU yang saling terhubung.
  • Topologi TPU: Jumlah dan pengaturan fisik TPU chip dalam slice TPU.
  • Node slice TPU host tunggal: satu atau beberapa node TPU independen. TPU yang terpasang pada VM tidak terhubung satu sama lain melalui interkoneksi berkecepatan tinggi.
  • Node slice TPU multi-host: dua node TPU yang saling terhubung atau lebih. TPU yang terpasang pada VM terhubung melalui interkoneksi berkecepatan tinggi. Node TPU multi-host memiliki karakteristik berikut:
    • Atomik: GKE memperlakukan semua node yang saling terhubung sebagai satu unit. Selama operasi penskalaan, GKE menskalakan seluruh kumpulan node menjadi 0 dan membuat node baru. Jika sebuah mesin dalam grup gagal atau dihentikan, GKE akan membuat ulang seluruh kumpulan node sebagai unit baru.
    • Tidak dapat diubah: Anda tidak dapat menambahkan node baru secara manual ke kumpulan node yang saling terhubung.

Cara kerja TPU di GKE

Pengelolaan resource dan prioritas Kubernetes memperlakukan VM TPU sama seperti jenis VM lainnya. Anda meminta chip TPU menggunakan nama resource google.com/tpu:

    resources:
        requests:
          google.com/tpu: 4
        limits:
          google.com/tpu: 4

Saat menggunakan TPU di GKE, Anda harus mempertimbangkan karakteristik TPU berikut:

  • VM TPU dapat mengakses hingga 8 chip TPU.
  • Slice TPU berisi chip TPU dalam jumlah tetap yang bergantung pada jenis mesin TPU yang Anda pilih.
  • Jumlah google.com/tpu yang diminta harus sama dengan jumlah total chip yang tersedia di TPU node. Container apa pun di Pod GKE yang meminta TPU harus menggunakan semua TPU chip dalam node. Jika tidak, Deployment akan gagal karena GKE tidak dapat menggunakan sebagian resource TPU. Misalnya, lihat skenario berikut:
    • Jenis mesin ct5l-hightpu-8t memiliki satu node TPU dengan 8 chip TPU. Satu Pod GKE yang memerlukan delapan chip TPU dapat di-deploy di node, tetapi dua Pod GKE yang memerlukan empat chip TPU masing-masing tidak dapat di-deploy pada sebuah node.
    • Jenis mesin ct5lp-hightpu-4t dengan topologi 2x4 berisi dua node TPU dengan masing-masing empat chip, total delapan chip TPU. Pod GKE yang memerlukan delapan chip TPU tidak dapat di-deploy di node mana pun dalam kumpulan node ini, tetapi dua Pod yang memerlukan empat chip TPU dapat di-deploy di kedua node di kumpulan node.
    • TPU v5e dengan topologi 4x4 memiliki 16 chip dalam empat node. Workload GKE Autopilot yang memilih konfigurasi ini harus meminta empat chip di setiap replika, untuk maksimal empat replika.
  • Dalam cluster Standar, beberapa Pod Kubernetes dapat dijadwalkan pada VM TPU, tetapi hanya satu container di setiap Pod yang dapat mengakses chip TPU.
  • Setiap cluster Standar harus memiliki setidaknya satu kumpulan node non-TPU untuk membuat Pod sistem kube, seperti kube-dns.
  • Secara default, node TPU memiliki taint google.com/tpu yang mencegah Pod non-TPU dijadwalkan padanya. Taint tidak menjamin resource TPU digunakan sepenuhnya. Ini memungkinkan Anda untuk menjalankan workload yang tidak menggunakan TPU pada node non-TPU, sehingga mengosongkan komputasi di TPU node untuk kode yang menggunakan TPU.
  • GKE mengumpulkan log yang dikeluarkan oleh container yang berjalan di VM TPU. Untuk mempelajari lebih lanjut, lihat Logging.
  • Metrik penggunaan TPU, seperti performa runtime, tersedia di Cloud Monitoring. Untuk mempelajari lebih lanjut, lihat Kemampuan observasi dan metrik.

Merencanakan konfigurasi TPU

Untuk menggunakan TPU di cluster GKE, Anda harus menentukan parameter berikut:

  • Jenis TPU: berbagai jenis TPU memiliki kemampuan yang berbeda seperti rasio harga-performa, throughput pelatihan, dan latensi penayangan. VM tempat TPU terpasang memiliki kapasitas CPU dan memori yang berbeda.
  • Topologi: tata letak chip dalam jenis TPU. Setiap jenis TPU mendukung tata letak chip 2D atau 3D dan pengaturan tertentu. Pilih topologi yang cocok dengan persyaratan paralelisme model Anda.
  • Interkonektivitas TPU: Jenis dan topologi TPU menentukan apakah Anda mendapatkan TPU di beberapa node yang memiliki interkoneksi berkecepatan tinggi. Ini menentukan apakah Anda menginginkan node slice TPU host tunggal atau multi-host.

    • Untuk model berskala besar, gunakan node slice TPU multi-host
    • Untuk model berskala kecil, gunakan node slice TPU host tunggal

Memilih konfigurasi TPU untuk mode GKE Autopilot

Dalam Autopilot, Anda memilih jenis TPU dan topologi, lalu menentukannya dalam manifes Kubernetes. GKE mengelola penyediaan node dengan TPU dan penjadwalan workload Anda.

Ketersediaan TPU di GKE Autopilot

TPU tersedia di region Google Cloud tertentu. Untuk menggunakan jenis TPU di workload GKE, cluster Anda harus berada di region yang didukung untuk jenis tersebut. Untuk mengetahui detailnya, lihat Region dan zona TPU dalam dokumentasi Cloud TPU.

Memilih jenis TPU di Autopilot

Jenis TPU Jumlah vCPU Memori (GiB) Jumlah NUMA node Chip TPU maksimum dalam satu slice
TPU v5p (Pratinjau)
tpu-v5p-slice
208 448 2 6.144
TPU v5e
tpu-v5-lite-podslice
24-224 tahun 48-384 tahun 1 256
TPU v5e (khusus host tunggal)
tpu-v5-lite-device
24-224 tahun 48-384 tahun 1 hingga 2 8
TPU v4
tpu-v4-podslice
240 407 2 4.096

Tinjau spesifikasi dan harga chip dalam dokumentasi Cloud TPU untuk membantu Anda memutuskan versi yang akan digunakan.

Memilih topologi untuk Autopilot

Topologi adalah tata letak fisik chip dalam irisan TPU. Bergantung pada jenis TPU, topologinya memiliki dua atau tiga dimensi. Setelah Anda menentukan jenis TPU, pilih topologi yang didukung oleh jenis TPU tersebut. Persyaratan paralelisme model akan membantu Anda menentukan topologi. Produk dari topologi ini adalah jumlah {i>chip<i} dalam irisan tersebut. Contoh:

  • 2x2x2 adalah slice TPU v4 multi-host 8-chip
  • 2x2 adalah slice TPU v5e host tunggal 4-chip

Topologi yang Anda pilih untuk jenis TPU menentukan apakah Anda mendapatkan node slice TPU satu atau multi-host. Jika topologi tertentu mendukung irisan host tunggal dan multi-host, jumlah chip TPU yang diminta beban kerja Anda akan menentukan jenis host yang Anda dapatkan. Misalnya, TPU v5e (tpu-v5-lite-podslice) mendukung topologi 2x4 sebagai host tunggal dan multi-host. Jika meminta 4 chip dalam beban kerja, Anda akan mendapatkan node multi-host yang memiliki 4 chip. Jika meminta 8 chip dalam beban kerja, Anda akan mendapatkan node host tunggal yang memiliki 8 chip.

Tabel berikut menjelaskan topologi yang didukung di setiap jenis TPU dan jumlah chip, jumlah node, dan jenis host:

Jenis TPU Topologi Chip TPU dalam satu irisan Jumlah node Jenis host Notes
TPU v5p (Pratinjau)
tpu-v5p-slice
2x2x1 4 1 Host tunggal

Topologi kustom untuk lebih dari 64 chip didukung. Kondisi berikut berlaku:

  • Untuk lebih dari 64 chip, {A}, {B}, dan {C} harus kelipatan 4
  • Topologi terbesar adalah 16x16x24
  • Nilainya harus {A}{B}{C}, seperti 8x12x16.
2x2x2 8 2 Multi-host
2x2x4 16 4 Multi-host
2x4x4 32 8 Multi-host
4x4x4 64 16 Multi-host
{A}x{B}x{C} A*B*C (A*B*C/4)1 Multi-host
TPU v5e
tpu-v5-lite-podslice
1x1 1 1 Host tunggal Topologi kustom tidak didukung.
2x2 4 1
2x4 8 1
2x4 2 1 Multi-host
4x4 16 4
4x8 32 8
8x8 64 16
8x16 128 32
16x16 256 64
TPU v5e (khusus host tunggal)
tpu-v5-lite-device
1x1 1 1 Host tunggal Topologi kustom tidak didukung
2x2 4 1
2x4 8 1
TPU v4
tpu-v4-podslice
2x2x1 4 1 Host tunggal

Topologi kustom untuk lebih dari 64 chip didukung. Kondisi berikut berlaku:

  • Untuk lebih dari 64 chip, {A}, {B}, dan {C} harus kelipatan 4
  • Topologi terbesar adalah 12x16x16
  • Nilainya harus {A}{B}{C}, seperti 8x12x16.
2x2x2 8 2 Multi-host
2x2x4 16 4 Multi-host
2x4x4 32 8 Multi-host
4x4x4 64 16 Multi-host
{A}x{B}x{C} A*B*C (A*B*C/4)1 Multi-host
  1. Dihitung dengan produk topologi dibagi empat.

Setelah memilih jenis dan topologi TPU, tentukan keduanya dalam manifes beban kerja Anda. Untuk mengetahui petunjuknya, lihat Men-deploy workload TPU di GKE Autopilot.

Memilih konfigurasi TPU untuk mode GKE Standar

Bagian berikut menjelaskan karakteristik TPU yang Anda evaluasi saat merencanakan dan menyiapkan workload TPU di GKE. Untuk mengetahui detail tentang versi yang tersedia, jenis mesin, topologi yang valid, dan jumlah chip-nya, lihat Pemetaan konfigurasi TPU dalam dokumen ini.

Ketersediaan TPU dalam mode GKE Standar

Tabel berikut mencantumkan ketersediaan TPU bergantung pada jenis dan versi mesin:

Versi TPU Jenis mesin yang dimulai dengan Versi GKE minimum Ketersediaan Zone
TPU v4 ct4p- 1.26.1-gke.1500 Tersedia Secara Umum us-central2-b
TPU v5e ct5l- 1.27.2-gke.2100 Tersedia Secara Umum europe-west4-b
us-central1-a
TPU v5e ct5lp- 1.27.2-gke.2100 Tersedia Secara Umum europe-west4-a1
us-central1-a1
us-east1-c
us-east5-b1
us-west1-c
us-west4-a
us-west4-b1
TPU v5p ct5p- 1.28.3-gke.1024000 Pratinjau us-east1-d
us-east5-a
us-east5-c
  1. Saat membuat TPU v5e dengan jenis mesin yang dimulai dengan ct5lp- di salah satu zona europe-west4-a, us-central1-a, us-east5-b, atau us-west4-b, kumpulan node TPU v5e host tunggal tidak didukung. Dengan kata lain, saat membuat kumpulan node TPU v5e di salah satu zona ini, hanya jenis mesin ct5lp-hightpu-4t dengan topologi minimal 2x4 atau lebih besar yang didukung. Untuk membuat TPU v5e host tunggal di us-central1 atau europe-west4, pilih zona us-central1-a atau europe-west4-b, lalu gunakan jenis mesin yang dimulai dengan ct5l- seperti ct5l-hightpu-1t, ct5l-hightpu-4t, atau ct5l-hightpu-8t. Untuk membuat TPU v5e host tunggal di region us-west4, pilih zona us-west4-a dan gunakan jenis mesin yang dimulai dengan ct5lp- seperti ct5lp-hightpu-1t. Perlu diperhatikan bahwa jenis mesin yang dimulai dengan ct5l- memerlukan kuota yang berbeda dibandingkan jenis mesin yang dimulai dengan ct5lp-.

Bagian berikut menjelaskan karakteristik TPU yang Anda evaluasi saat merencanakan dan menyiapkan workload TPU di GKE. Untuk mengetahui detail tentang versi yang tersedia, jenis mesin, topologi yang valid, dan jumlah chip-nya, lihat Pemetaan konfigurasi TPU dalam dokumen ini.

Machine type

Jenis mesin yang mendukung resource TPU mengikuti konvensi penamaan yang menyertakan versi TPU dan jumlah chip per node seperti ct<version>-hightpu-<node-chip-count>t. Misalnya, jenis mesin ct5lp-hightpu-1t mendukung TPU v5e dan berisi total satu TPU chip.

Topologi

Topologi mendefinisikan pengaturan fisik TPU dalam irisan TPU. GKE menyediakan potongan TPU dalam topologi dua atau tiga dimensi, bergantung pada versi TPU. Anda menentukan topologi sebagai jumlah chip TPU di setiap dimensi:

  • Untuk TPU v4 dan v5p yang dijadwalkan di kumpulan node slice TPU multi-host, Anda menentukan topologi dalam 3 tuple ({A}x{B}x{C}), misalnya 4x4x4. Produk {A}x{B}x{C} menentukan jumlah chip dalam node pool. Misalnya, Anda dapat menentukan topologi kecil yang lebih kecil dari 64 chip dengan bentuk topologi seperti 2x2x2,2x2x4, atau 2x4x4. Jika Anda menggunakan topologi yang lebih besar dari 64 chip, nilai yang Anda tetapkan ke {A},{B}, dan {C} harus memenuhi kondisi berikut:

    • {A},{B}, dan {C} adalah kelipatan empat.
    • Topologi terbesar yang didukung untuk v4 adalah 12x16x16 dan v5p adalah 16x16x24.
    • Nilai yang ditetapkan mempertahankan pola A ≤ B ≤ C. Misalnya 4x4x8 atau 8x8x8.

Pemetaan konfigurasi TPU

Gunakan tabel berikut untuk menentukan jenis mesin TPU dan topologi yang akan digunakan berdasarkan kasus penggunaan Anda:

  • Untuk pelatihan atau inferensi model berskala kecil, gunakan TPU v4 atau TPU v5e dengan kumpulan node slice TPU host tunggal.
  • Untuk pelatihan atau inferensi model berskala besar, gunakan TPU v4 atau TPU v5e dengan pool node slice TPU multi-host.
Versi TPU Machine type Topologi Jumlah TPU chip Jumlah VM Jenis node pool
TPU v4 ct4p-hightpu-4t 2x2x1 4 1 Host tunggal
2x2x2 8 2 Multi-host
2x2x4 16 4 Multi-host
2x4x4 32 8 Multi-host
{A}x{B}x{C} A*B*C (A*B*C/4)1 Multi-host
TPU v5p ct5p-hightpu-4t 2x2x1 4 1 Host tunggal
2x2x2 8 2 Multi-host
2x2x4 16 4 Multi-host
2x4x4 32 8 Multi-host
{A}x{B}x{C} A*B*C (A*B*C/4)1 Multi-host
TPU v5e ct5l-hightpu-1t 1x1 1 1 Host tunggal
ct5l-hightpu-4t 2x2 4 1 Host tunggal
ct5l-hightpu-8t 2x4 8 1 Host tunggal
ct5lp-hightpu-1t 1x1 1 1 Host tunggal
ct5lp-hightpu-4t 2x2 4 1 Host tunggal
ct5lp-hightpu-8t 2x4 8 1 Host tunggal
ct5lp-hightpu-4t 2x4 8 2 Multi-host
4x4 16 4 Multi-host
4x8 32 8 Multi-host
8x8 64 16 Multi-host
8x16 128 32 Multi-host
16x16 256 64 Multi-host
  1. Dihitung dengan produk topologi dibagi empat.

Karakteristik TPU v5e

Mesin TPU v5e memiliki karakteristik teknis berikut:

Jenis mesin Jumlah vCPU Memori (GB) Jumlah node NUMA Kemungkinan di-preempt
ct5l-hightpu-1t 24 48 1 Lebih tinggi
ct5l-hightpu-4t 112 192 1 Sedang
ct5l-hightpu-8t 224 384 2 Lebih rendah
ct5lp-hightpu-1t 24 48 1 Lebih tinggi
ct5lp-hightpu-4t 112 192 1 Sedang
ct5lp-hightpu-8t 224 384 1 Rendah

Karakteristik TPU v4 dan v5p

Mesin TPU v4p dan v5p memiliki karakteristik teknis berikut:

Machine type Jumlah vCPU Memori (GB) Jumlah node NUMA
ct4p-hightpu-4t 240 407 2
ct5p-hightpu-4t 208 448 2

Pemesanan TPU

Reservasi TPU tersedia saat membeli komitmen. Semua reservasi TPU dapat digunakan dengan GKE.

Saat membuat kumpulan node TPU, gunakan flag --reservation dan --reservation-affinity=specific untuk menggunakan instance TPU yang dicadangkan.

Penskalaan otomatis TPU di GKE

GKE mendukung Tensor Processing Unit (TPU) untuk mempercepat workload machine learning. Kumpulan node slice TPU host tunggal dan kumpulan node slice TPU multi-host mendukung penskalaan otomatis dan penyediaan otomatis.

Dengan flag --enable-autoprovisioning di cluster GKE, GKE membuat atau menghapus kumpulan node slice TPU host tunggal atau multi-host dengan versi TPU dan topologi yang memenuhi persyaratan workload yang tertunda.

Saat Anda menggunakan --enable-autoscaling, GKE menskalakan kumpulan node berdasarkan jenisnya, sebagai berikut:

  • Kumpulan node slice TPU host tunggal: GKE menambahkan atau menghapus node TPU di kumpulan node yang ada. Kumpulan node dapat berisi sejumlah node TPU antara nol dan ukuran maksimum kumpulan node seperti yang ditentukan oleh tanda --max-nodes dan tanda --total-max-nodes. Saat kumpulan node diskalakan, semua node TPU di kumpulan node memiliki jenis mesin dan topologi yang sama. Untuk mempelajari cara membuat kumpulan node slice TPU host tunggal lebih lanjut, lihat Membuat kumpulan node.

  • Kumpulan node slice TPU multi-host: GKE meningkatkan skala kumpulan node secara atomik dari nol hingga jumlah node yang diperlukan untuk memenuhi topologi TPU. Misalnya, dengan kumpulan node TPU dengan jenis mesin ct5lp-hightpu-4t dan topologi 16x16, kumpulan node tersebut berisi 64 node. Autoscaler GKE memastikan bahwa kumpulan node ini memiliki tepat 0 atau 64 node. Saat melakukan penskalaan kembali, GKE akan mengeluarkan semua pod terjadwal, dan menghabiskan seluruh kumpulan node hingga nol. Untuk mempelajari lebih lanjut cara membuat kumpulan node slice TPU multi-host, lihat Membuat kumpulan node.

Batasan

  • Untuk reservasi kapasitas, Anda harus menggunakan pemesanan tertentu.
  • Alokasi biaya dan pengukuran penggunaan GKE tidak mencakup data apa pun tentang penggunaan atau biaya TPU v4 yang dicadangkan.
  • TPU v5p dan v5e tidak mendukung riptide/streaming gambar di us-east5.
  • Penskalaan otomatis TPU v5p didukung di cluster GKE dengan bidang kontrol yang menjalankan setidaknya 1.29.2-gke.1035000 atau setidaknya 1.28.7-gke.1020000.

Pertimbangan penjadwalan workload

TPU memiliki karakteristik unik yang memerlukan penjadwalan dan pengelolaan beban kerja khusus di Kubernetes. Bagian berikut menjelaskan praktik terbaik penjadwalan.

CPU

Bagian ini tidak berlaku untuk cluster Autopilot karena GKE menempatkan setiap Pod TPU di node-nya sendiri.

Untuk menjadwalkan beban kerja di CPU yang ada di VM TPU, pastikan Pod GKE dapat menoleransi taint google.com/tpu. Jika Anda ingin beban kerja di-deploy ke node tertentu, gunakan pemilih node.

Pengelolaan resource dan prioritas Kubernetes memperlakukan VM TPU sama seperti jenis VM lainnya. Untuk memberikan prioritas penjadwalan kepada Pod yang memerlukan TPU dibandingkan Pod lain pada node yang sama, mintalah CPU atau memori maksimum untuk Pod TPU tersebut. Pod prioritas rendah harus melakukan hal berikut:

  1. Tetapkan permintaan memori dan CPU yang rendah untuk memastikan node memiliki resource yang dapat dialokasikan yang cukup untuk workload TPU. Untuk mempelajari lebih lanjut, baca artikel Cara Kubernetes menerapkan permintaan dan batas resource.
  2. Tetapkan tanpa batas CPU (tidak terbatas) untuk memastikan bahwa Pod dapat melakukan burst untuk menggunakan semua siklus yang tidak digunakan.
  3. Tetapkan batas memori tinggi untuk memastikan bahwa Pod dapat menggunakan paling banyak memori yang tidak terpakai sekaligus menjaga stabilitas node.

Jika Pod Kubernetes tidak meminta CPU dan memori (sekalipun meminta TPU), Kubernetes akan menganggapnya sebagai upaya terbaik, dan tidak ada jaminan bahwa pod tersebut memerlukan CPU dan memori apa pun. Hanya Pod yang secara eksplisit meminta CPU dan memori yang memiliki jaminan tersebut. Untuk mengetahui informasi selengkapnya, lihat Pengelolaan Resource untuk Pod dan Container.

Untuk mempelajari lebih lanjut, lihat Praktik terbaik Kubernetes: Permintaan resource dan batas.

Mengurangi gangguan workload

Jika Anda menggunakan TPU untuk melatih model machine learning dan workload Anda terganggu, semua pekerjaan yang dilakukan seak checkpoint terakhir akan hilang. Untuk mengurangi kemungkinan bahwa workload terganggu, lakukan langkah berikut:

  • Tetapkan prioritas yang lebih tinggi untuk Tugas ini daripada semua Tugas lain: Jika resource langka, penjadwal GKE akan mendahului Tugas dengan prioritas lebih rendah untuk menjadwalkan Tugas dengan prioritas lebih tinggi. Hal ini juga memastikan bahwa beban kerja yang berprioritas lebih tinggi menerima semua resource yang diperlukannya (hingga total resource yang tersedia dalam cluster). Untuk mempelajari lebih lanjut, baca Prioritas dan preemption Pod.
  • Mengonfigurasi pengecualian pemeliharaan: Pengecualian pemeliharaan adalah jangka waktu yang tidak berulang saat pemeliharaan otomatis dilarang. Untuk mempelajari lebih lanjut, lihat Pengecualian pemeliharaan.
  • Gunakan Pod dengan waktu proses yang diperpanjang di Autopilot: Gunakan Pod dengan waktu proses yang diperpanjang selama masa tenggang hingga tujuh hari sebelum GKE menghentikan Pod Anda untuk penurunan skala atau upgrade node.

Menangani gangguan akibat pemeliharaan node

Semua node GKE, termasuk yang menghosting VM TPU, terkena peristiwa pemeliharaan atau gangguan lain yang mungkin menyebabkan penonaktifan node. Anda dapat mengurangi gangguan pada beban kerja yang berjalan di cluster GKE dengan bidang kontrol yang menjalankan versi 1.29.1-gke.1425000 atau yang lebih baru. GKE memberi tahu node tentang adanya penonaktifan dalam waktu dekat dengan mengirimkan sinyal SIGTERM ke node hingga lima menit sebelum penghapusan. Jika beban kerja Anda menggunakan framework ML seperti MaxText, Pax, atau JAX dengan Orbax, beban kerja tersebut dapat menangkap sinyal SIGTERM dan memulai proses checkpoint.

Anda dapat mengonfigurasi GKE untuk menghentikan beban kerja ML Anda secara halus dengan waktu notifikasi maksimum. Dalam manifes Pod, tetapkan kolom spec.terminationGracePeriodSeconds ke 300 detik (lima menit). GKE melakukan upaya terbaik untuk menghentikan Pod ini dengan baik dan menjalankan tindakan penghentian yang Anda tentukan, misalnya, menyimpan status pelatihan. GKE mengikuti konfigurasi apa pun hingga lima menit untuk setelan PodDisruptionBudget atau terminationGracePeriodSeconds.

Kolom spec.terminationGracePeriodSeconds hanya menangani gangguan yang disebabkan oleh peristiwa pemeliharaan dan defragmentasi yang terjadi pada non-preemptible VM. GKE tidak menangani gangguan yang tidak disengaja, seperti kegagalan hardware.

Untuk mempelajari lebih lanjut, lihat Mengonfigurasi penghentian halus node TPU.

Memaksimalkan pemanfaatan TPU

Untuk memaksimalkan investasi dalam TPU, jadwalkan campuran prioritas Tugas dan antrekan untuk memaksimalkan waktu operasi TPU. Jika ingin penjadwalan dan preemption tingkat Tugas, Anda harus menggunakan add-on untuk Kubernetes yang mengatur Tugas ke dalam antrean. Sebaiknya gunakan Kueue untuk kasus penggunaan tersebut.

Langkah selanjutnya