Menonaktifkan GPU Khusus untuk Hemat Daya
Categories:
Artikel ini dibagikan bagi teman-teman yang jarang mematikan PC desktop, dan sering bekerja dari jarak jauh ke PC desktop di rumah.
PC utama saya untuk kerja dan gaming adalah mesin yang sama, monitor 4K 144Hz, sehari-hari menggunakan GPU khusus, tampilan operasi biasa lebih halus, tapi konsumsi daya juga jelas lebih besar.
Daya di screenshot berikut termasuk satu mini PC J4125, konsumsi daya sehari-hari sekitar 18W, jadi kesimpulannya mungkin tidak sepenuhnya akurat
Tanpa bermain game, hanya menggerakkan mouse cepat di desktop, daya puncak bisa mencapai 192W

Setelah menonaktifkan GPU khusus, refresh rate turun ke 60Hz, daya puncak turun ke sekitar 120W.

Bekerja dari luar melalui tunnel ke rumah menggunakan host entry-level Tencent, bandwidth kecil, refresh rate remote hanya 30Hz, dalam kasus ini menggunakan GPU khusus tidak bermakna, bisa pertimbangkan beralih ke GPU terintegrasi.
Sebagian besar waktu, saya tidak menggunakan remote desktop langsung, melainkan VS Code Remote Development, keuntungannya tersembunyi, pemakaian bandwidth kecil, pengalaman hampir seperti development lokal.

Saat edit kode biasa, sekitar 72W, dibanding 120W sebelum menonaktifkan GPU khusus, ada efek hemat daya tertentu.

Saat menggunakan remote ssh untuk remote development, bisa gunakan script untuk menonaktifkan GPU khusus.
Script disimpan sebagai switch_dedicate_graphic_cards.ps1, cara pakai switch_dedicate_graphic_cards.ps1 off
# Penggunaan: switch_dedicate_graphic_cards.ps1 on|off
# Dapatkan parameter
$switch = $args[0]
# keluar jika tidak ada parameter yang diberikan
if ($switch -eq $null) {
Write-Host "Penggunaan: switch_dedicate_graphic_cards.ps1 on|off" -ForegroundColor Yellow
exit
}
# Dapatkan perangkat tampilan
$displayDevices = Get-CimInstance -Namespace root\cimv2 -ClassName Win32_VideoController
# Jika tidak ada perangkat tampilan atau hanya satu perangkat tampilan, keluar
if ($displayDevices.Count -le 1) {
Write-Host "Tidak ditemukan perangkat tampilan."
exit
}
# Dapatkan kartu grafis khusus
$dedicatedGraphicCards = $displayDevices | Where-Object { $_.Description -like "*NVIDIA*" }
# Jika tidak ada kartu grafis khusus, keluar
if ($dedicatedGraphicCards.Count -eq 0) {
Write-Host "Tidak ditemukan kartu grafis khusus."
exit
}
# nyalakan atau matikan kartu grafis khusus
if ($switch -eq "on") {
$dedicatedGraphicCards | ForEach-Object { pnputil /enable-device $_.PNPDeviceID }
Write-Host "Kartu grafis khusus dinyalakan."
} elseif ($switch -eq "off") {
$dedicatedGraphicCards | ForEach-Object { pnputil /disable-device $_.PNPDeviceID }
Write-Host "Kartu grafis khusus dimatikan."
} else {
Write-Host "Parameter tidak valid."
Write-Host "Penggunaan: switch_dedicate_graphic_cards.ps1 on|off" -ForegroundColor Yellow
}