Memecahkan masalah VM GPU


Halaman ini menunjukkan cara menyelesaikan masalah untuk VM yang berjalan di Compute Engine yang memiliki GPU terpasang.

Jika Anda mencoba membuat VM dengan GPU terpasang dan mendapatkan error, tinjau Memecahkan masalah error ketersediaan resource dan Memecahkan masalah saat membuat dan mengupdate VM.

Memecahkan masalah VM GPU menggunakan NVIDIA DCGM

NVIDIA Data Center GPU Manager (DCGM) adalah serangkaian alat untuk mengelola dan memantau GPU pusat data NVIDIA di lingkungan cluster.

Jika Anda ingin menggunakan DCGM untuk memecahkan masalah di lingkungan GPU, selesaikan hal berikut:

  • Pastikan Anda menggunakan driver NVIDIA terbaru yang direkomendasikan untuk model GPU yang terpasang ke VM Anda. Untuk meninjau versi driver, lihat Versi driver NVIDIA yang direkomendasikan.
  • Pastikan Anda menginstal DCGM versi terbaru. Untuk menginstal versi terbaru, lihat Penginstalan DCGM.

Mendiagnosis masalah

Saat Anda menjalankan perintah diagnostik dcgmi, masalah yang dilaporkan oleh alat diagnostik akan menyertakan langkah berikutnya untuk mengambil tindakan terkait masalah tersebut. Contoh berikut menunjukkan output yang dapat ditindaklanjuti dari perintah dcgmi diag -r memory -j.

{
  ........
   "category":"Hardware",
   "tests":[
      {
         "name":"GPU Memory",
         "results":[
            {
               "gpu_id":"0",
               "info":"GPU 0 Allocated 23376170169
bytes (98.3%)",
               "status":"Fail",
               ""warnings":[
                  {
                     "warning":"Pending page
retirements together with a DBE were detected on GPU 0. Drain the GPU and reset it or reboot the node to resolve this issue.",
                     "error_id":83,
                     "error_category":10,
                     "error_severity":6
                  }
               ]
            }
  .........

Dari cuplikan output sebelumnya, Anda dapat melihat bahwa GPU 0 memiliki penghentian halaman yang tertunda yang disebabkan oleh error yang tidak dapat dipulihkan. Output memberikan error_id unik dan saran tentang proses debug masalah. Untuk contoh output ini, sebaiknya Anda menghabiskan GPU dan memulai ulang VM. Pada umumnya, mengikuti petunjuk di bagian output ini dapat membantu menyelesaikan masalah.

Membuka kasus dukungan

Jika tidak dapat menyelesaikan masalah dengan menggunakan panduan yang diberikan oleh output dari pemrosesan diagnostik dcgmi, Anda dapat membuka kasus dukungan. Saat membuka kasus dukungan, Anda harus memberikan informasi berikut:

  1. Perintah yang dijalankan dan output yang ditampilkan.
  2. File log yang relevan seperti log diagnostik dan mesin host. Untuk mengumpulkan file log yang diperlukan, Anda dapat menjalankan skrip gather-dcgm-logs.sh.

    Untuk penginstalan default di sistem berbasis Debian dan RPM, skrip ini berada di /usr/local/dcgm/scripts.

  3. Untuk kegagalan dcgmi diag, berikan file statistik untuk plugin yang gagal. File statistik menggunakan konvensi penamaan berikut: stats_PLUGIN_NAME.json.

    Misalnya, jika plugin pcie gagal, sertakan file bernama stats_pcie.json.

  4. Informasi sistem dan status driver NVIDIA. Untuk mengumpulkan informasi ini, Anda dapat menjalankan skrip nvidia-bug-report.sh.

    Menjalankan skrip ini juga membantu proses debug tambahan jika masalahnya disebabkan oleh dependensi NVIDIA lainnya, bukan bug di DCGM itu sendiri.

  5. Detail tentang perubahan terbaru yang dilakukan pada lingkungan Anda sebelum kegagalan.

Pesan Xid

Setelah membuat VM yang telah memasang GPU, Anda harus menginstal driver perangkat NVIDIA di VM GPU agar aplikasi Anda dapat mengakses GPU. Namun, terkadang driver ini menampilkan pesan error.

Pesan Xid adalah laporan error dari driver NVIDIA yang dicetak ke log kernel atau log aktivitas sistem operasi untuk VM Linux Anda. Pesan ini ditempatkan dalam file /var/log/messages.

Untuk informasi selengkapnya tentang pesan Xid termasuk kemungkinan penyebabnya, lihat dokumentasi NVIDIA.

Bagian berikut memberikan panduan tentang cara menangani beberapa pesan Xid yang dikelompokkan berdasarkan jenis yang paling umum: error memori GPU, error GPU System Processor (GSP), dan error akses memori ilegal.

Error memori GPU

Memori GPU adalah memori yang tersedia di GPU yang dapat digunakan untuk penyimpanan data sementara. Memori GPU dilindungi dengan Error Correction Code, ECC, yang mendeteksi dan mengoreksi error bit tunggal (SBE) serta mendeteksi dan melaporkan Error Bit Ganda (DBE).

Sebelum rilis GPU NVIDIA A100, penghentian halaman dinamis didukung. Untuk rilis GPU NVIDIA A100 dan yang lebih baru (seperti NVIDIA H100), pemulihan error pemetaan ulang baris diperkenalkan. ECC diaktifkan secara default. Google sangat merekomendasikan agar ECC tetap diaktifkan.

Berikut adalah error memori GPU umum dan solusi yang disarankan.

Pesan error Xid Resolusi
Xid 48: Double Bit ECC
  1. Hentikan workload Anda.
  2. Hapus dan buat ulang VM. Jika error berlanjut, laporkan kasus ke Cloud Customer Care.
Xid 63: ECC page retirement or row remapping recording event
  1. Hentikan workload Anda.
  2. Reset GPU.
Xid 64: ECC page retirement or row remapper recording failure

Dan pesan tersebut berisi informasi berikut:

Xid 64: All reserved rows for bank are remapped
  1. Hentikan workload Anda.
  2. Hapus dan buat ulang VM. Jika error berlanjut, laporkan kasus ke Cloud Customer Care.

Jika Anda mendapatkan minimal dua pesan Xid berikut secara bersamaan:

  • Xid 48
  • Xid 63
  • Xid 64

Dan pesan tersebut berisi informasi berikut:

Xid XX: row remap pending
  1. Hentikan workload Anda.
  2. Reset GPU. Mereset GPU memungkinkan proses pemetaan ulang baris dan penghentian halaman untuk menyelesaikan dan memperbaiki GPU.
Xid 92: High single-bit ECC error rate Pesan Xid ini ditampilkan setelah driver GPU memperbaiki error yang dapat diperbaiki, dan tidak akan memengaruhi beban kerja Anda. Pesan Xid ini hanya bersifat informasi. Anda tidak perlu melakukan tindakan apa pun.
Xid 94: Contained ECC error
  1. Hentikan workload Anda.
  2. Reset GPU.
Xid 95: Uncontained ECC error
  1. Hentikan workload Anda.
  2. Reset GPU.

Error GSP

GPU System Processor (GSP) adalah mikrokontroler yang berjalan di GPU dan menangani beberapa fungsi pengelolaan hardware tingkat rendah.

Pesan error Xid Resolusi
Xid 119: GSP RPC timeout
  1. Hentikan workload Anda.
  2. Hapus dan buat ulang VM. Jika error berlanjut, kumpulkan laporan bug NVIDIA dan ajukan kasus ke Cloud Customer Care.
Xid 120: GSP error

Error akses memori ilegal

Xid berikut ditampilkan saat aplikasi memiliki masalah akses memori yang ilegal:

  • Xid 13: Graphics Engine Exception
  • Xid 31: GPU memory page fault

Error akses memori ilegal biasanya disebabkan oleh workload Anda yang mencoba mengakses memori yang sudah dibebaskan atau tidak diizinkan. Hal ini dapat disebabkan oleh masalah seperti dereferensi pointer yang tidak valid, atau array di luar batas.

Untuk mengatasi masalah ini, Anda perlu men-debug aplikasi. Untuk men-debug aplikasi, Anda dapat menggunakan cuda-memcheck dan CUDA-GDB.

Dalam beberapa kasus yang sangat jarang terjadi, degradasi hardware dapat menyebabkan error akses memori yang ilegal ditampilkan. Untuk mengidentifikasi apakah masalahnya ada pada hardware Anda, gunakan NVIDIA Data Center GPU Manager (DCGM). Anda dapat menjalankan dcgmi diag -r 3 atau dcgmi diag -r 4 untuk menjalankan berbagai tingkat cakupan dan durasi pengujian. Jika Anda mengidentifikasi bahwa masalahnya ada pada hardware, ajukan kasus ke Cloud Customer Care.

Pesan error Xid umum lainnya

Pesan error Xid Resolusi
Xid 74: NVLINK error
  1. Hentikan workload Anda.
  2. Reset GPU.
Xid 79: GPU has fallen off the bus

Artinya, driver tidak dapat berkomunikasi dengan GPU.

Mulai ulang VM.

Mereset GPU

Beberapa masalah mungkin mengharuskan Anda mereset GPU. Untuk mereset GPU, selesaikan langkah-langkah berikut:

  • Untuk VM N1, G2, dan A2, mulai ulang VM dengan menjalankan sudo reboot.
  • Untuk VM A3, jalankan sudo nvidia-smi --gpu-reset.
    • Untuk sebagian besar VM Linux, file yang dapat dieksekusi nvidia-smi terletak di direktori /var/lib/nvidia/bin.
    • Untuk node GKE, file yang dapat dieksekusi nvidia-smi terletak di direktori /home/kubernetes/bin/nvidia.

Jika error terus berlanjut setelah mereset GPU, Anda harus menghapus dan membuat ulang VM.

Jika error berlanjut setelah penghapusan dan pembuatan ulang, ajukan kasus ke Cloud Customer Care untuk memindahkan VM ke tahap perbaikan.

Langkah selanjutnya

Tinjau jenis mesin GPU.