Memantau performa GPU di VM Windows


Untuk membantu pemanfaatan resource yang lebih baik, Anda dapat melacak tingkat penggunaan GPU instance mesin virtual (VM) Anda.

Setelah mengetahui tingkat penggunaan GPU, Anda dapat melakukan tugas-tugas seperti menyiapkan grup instance terkelola yang dapat digunakan untuk menskalakan resource secara otomatis.

Untuk meninjau metrik GPU menggunakan Cloud Monitoring, selesaikan langkah-langkah berikut:

  1. Di setiap VM, siapkan skrip pelaporan metrik GPU. Skrip ini menginstal agen pelaporan metrik GPU. Agen ini berjalan pada interval di VM untuk mengumpulkan data GPU, dan mengirimkan data ini ke Cloud Monitoring.
  2. Di setiap VM, jalankan skrip.
  3. Pada setiap VM, setel agen pelaporan metrik GPU ke otomatis dimulai saat booting.
  4. Lihat log di Google Cloud Monitoring.

Peran yang diperlukan

Untuk memantau performa GPU di VM Windows, Anda harus memberikan peran Identity and Access Management (IAM) yang diperlukan ke prinsip berikut:

  • Akun layanan yang digunakan oleh instance VM
  • Akun pengguna Anda

Untuk memastikan bahwa Anda dan akun layanan VM memiliki izin yang diperlukan untuk memantau performa GPU di VM Windows, minta administrator untuk memberi Anda dan akun layanan VM peran IAM berikut di project:

Untuk mengetahui informasi selengkapnya tentang cara memberikan peran, lihat Mengelola akses ke project, folder, dan organisasi.

Administrator Anda mungkin juga dapat memberikan izin yang diperlukan kepada Anda dan akun layanan VM melalui peran kustom atau peran bawaan lainnya.

Menyiapkan skrip pelaporan metrik GPU

Persyaratan

Di setiap VM, pastikan Anda memenuhi persyaratan berikut:

Mendownload skrip

Buka terminal PowerShell sebagai administrator, lalu gunakan perintah Invoke-WebRequest untuk mendownload skrip.

Invoke-WebRequest tersedia di PowerShell 3.0 atau yang lebih baru. Google Cloud merekomendasikan agar Anda menggunakan ctrl+v untuk menempelkan blok kode yang disalin.

mkdir c:\google-scripts
cd c:\google-scripts
Invoke-Webrequest -uri https://raw.githubusercontent.com/GoogleCloudPlatform/compute-gpu-monitoring/main/windows/gce-gpu-monitoring-cuda.ps1 -outfile gce-gpu-monitoring-cuda.ps1

Jalankan skrip:

cd c:\google-scripts
.\gce-gpu-monitoring-cuda.ps1

Mengonfigurasi agen agar otomatis dimulai saat booting

Untuk memastikan bahwa agen pelaporan metrik GPU disiapkan untuk dijalankan saat booting sistem, gunakan perintah berikut untuk menambahkan agen ke Windows Task Scheduler.

$Trigger= New-ScheduledTaskTrigger -AtStartup
$Trigger.ExecutionTimeLimit = "PT0S"
$User= "NT AUTHORITY\SYSTEM"
$Action= New-ScheduledTaskAction -Execute "PowerShell.exe" -Argument "C:\google-scripts\gce-gpu-monitoring-cuda.ps1"
$settingsSet = New-ScheduledTaskSettingsSet
# Set the Execution Time Limit to unlimited on all versions of Windows Server
$settingsSet.ExecutionTimeLimit = 'PT0S'
Register-ScheduledTask -TaskName "MonitoringGPUs" -Trigger $Trigger -User $User -Action $Action -Force -Settings $settingsSet

Meninjau metrik di Cloud Monitoring

  1. Di Konsol Google Cloud, buka halaman Metrics Explorer.

    Buka Monitoring

  2. Luaskan menu Select a metric.

  3. Di menu Resource, pilih VM Instance.

  4. Di menu kategori Metric, pilih Custom.

  5. Di menu Metric, pilih metrik yang akan dibuat diagram. Contoh custom/instance/gpu/utilization.

  6. Klik Apply.

    Pemakaian GPU Anda akan menyerupai output berikut:

    Inisiasi Cloud Monitoring.

Metrik yang tersedia

Nama metrik Deskripsi

instance/gpu/utilization

Persentase waktu selama periode sampel terakhir saat satu atau beberapa kernel dieksekusi di GPU.

instance/gpu/memory_utilization

Persentase waktu selama periode sampel terakhir saat memori global (perangkat) sedang dibaca atau ditulis.

instance/gpu/memory_total

Total memori GPU yang diinstal.

instance/gpu/memory_used

Total memori yang dialokasikan oleh konteks aktif.

instance/gpu/memory_used_percent

Persentase total memori yang dialokasikan oleh konteks aktif. Rentang dari 0 hingga 100.

instance/gpu/memory_free

Total memori bebas.

instance/gpu/temperature

Suhu GPU inti dalam Celsius (°C).

Apa langkah selanjutnya?