it-swarm-id.com

Bagaimana cara memeriksa GPU mana yang aktif di Linux?

Saya memiliki 2 GPU di netbook saya. Bagaimana saya tahu yang mana yang sebenarnya saya gunakan pada saat tertentu?

80
LanceBaynes

Saya baru saja melewati masa-masa sulit mencoba mendapatkan grafik diskrit saya untuk bekerja di Ubuntu dan menjawab pertanyaan-pertanyaan ini selalu merupakan tantangan, karena metode lspci yang disebutkan sebelumnya kadang-kadang dapat mengatakan bahwa keduanya adalah [VGA controller]

Saya pikir perintah berikut ini akan memberi Anda indikasi chip aktif Anda:

$ glxinfo|egrep "OpenGL vendor|OpenGL renderer"
OpenGL vendor string: Intel Open Source Technology Center
OpenGL renderer string: Mesa DRI Intel(R) Sandybridge Mobile

Bagi saya ini memberitahu saya bahwa grafik intel saya menjalankan pertunjukan. Jika Anda menggunakan chip nvidia, dan Anda menggunakan paket bumblebee, Anda dapat meletakkan optirun di depan baris itu dan itu akan memberi tahu Anda bahwa Anda menjalankan chip NVidia (optirun pada dasarnya memberitahu komputer untuk menggunakan chip diskrit untuk menjalankan perintah apa pun yang mengikuti, tetapi yang lainnya masih menggunakan chip terintegrasi)

$ optirun glxinfo|egrep "OpenGL vendor|OpenGL renderer"
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: GeForce GT 555M/PCIe/SSE2

glxheads juga memberi tahu Anda beberapa informasi berguna tentang kartu grafis mana yang sedang digunakan (kebanyakan mengulangi glxinfo dalam bentuk yang lebih ringkas dan mudah dibaca), dan memberi Anda rendering yang bagus dari segitiga yang berputar.

51
Nickolai

Untuk memeriksa GPU mana yang saat ini dalam perintah (itu berarti yang merupakan pengontrol VGA aktif) ketik

lspci -vnnn | Perl -lne 'print if /^\d+\:.+(\[\S+\:\S+\])/' | grep VGA

Pengontrol apa saja dengan [VGA controller] pada akhirnya adalah GPU Anda saat ini aktif. Yang lain dimatikan. Dalam contoh berikut kartu Intel aktif sedangkan nVidia tidak digunakan:

00:02.0 VGA compatible controller [0300]: Intel Corporation Core Processor
Integrated Graphics Controller [8086:0046] (rev 02) (prog-if 00 [VGA 
controller])
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GF108 [GeForce
GT 540M] [10de:0df4] (rev ff) (prog-if ff)
20
ubuntudroid
nvidia-smi -L

Ini memberi saya apa yang saya inginkan. Perintah ini menunjukkan daftar GPU yang ada di mesin Anda. Ini dapat membantu Anda mengetahui mana yang aktif.

dapatkan perintah dari utas di sini: Kotak Ubuntu dengan beberapa Kartu GPU NVIDIA | devtalk.nvidia.com

9
Hardhik

nvidia-settings GUI

Di Ubuntu 15.10, setelah saya menginstal nvidia-352 dan GPU tampaknya berfungsi:

nvidia-settings

menunjukkan sesuatu seperti:

enter image description here

Perhatikan bagaimana tampilannya:

GPU 0 - (NVS 5400M)

dimana NVS 5400M adalah model GPU saya.

Lalu jika saya menjalankan glxgears, penggunaan GPU mencapai> 90%.

Jadi saya berharap jika Anda memiliki banyak GPU, Anda dapat melihat berapa banyak masing-masing GPU digunakan pada satu waktu.

OS apa yang Anda gunakan? Jika Anda menggunakan lspci pada sebagian besar mesin linux Anda mendapatkan daftar perangkat pci Anda, cukup grep untuk perangkat grafis dan itu akan muncul keduanya. Setelah itu baru saja memeriksa konfigurasi masing-masing, Anda harus melihat detail up/on/active atau sesuatu seperti itu.

1
baweaver

nvidia-smi sangat berguna, tetapi kadang-kadang saya menemukan bahwa itu tidak selalu mencakup semuanya. Sepertinya saat proses macet mereka tidak selalu terdaftar.

Sudo lsof /dev/nvidia* selalu bekerja untuk saya. Ini juga akan berfungsi tanpa Sudo, tetapi hanya akan menampilkan proses yang Anda miliki. Jika Anda bekerja pada mesin multi-pengguna atau menggunakan buruh pelabuhan, Anda mungkin akan mendapatkan hasil yang lebih baik dengan Sudo.

Jika Anda melihat perbedaan antara 2 perintah, Anda mungkin ingin mempertimbangkan killing proses tambahan yang ditemukan dengan lsof.

0
Rick Smith