У мене в нетбуку є 2 GPU. Як я можу знати, яким саме я користуюся в будь-який момент?
У мене в нетбуку є 2 GPU. Як я можу знати, яким саме я користуюся в будь-який момент?
Відповіді:
Я щойно пережив пекло, намагаючись змусити свою дискретну графіку працювати в Ubuntu, і відповідати на ці запитання постійно було складним завданням, оскільки згаданий раніше метод lspci іноді може сказати, що обидва [VGA controller]
Я думаю, що наступна команда повинна вказувати на ваш активний чіп:
$ glxinfo|egrep "OpenGL vendor|OpenGL renderer"
OpenGL vendor string: Intel Open Source Technology Center
OpenGL renderer string: Mesa DRI Intel(R) Sandybridge Mobile
Для мене це говорить про те, що моя графіка Intel працює на шоу. Якщо ви використовуєте чіп nvidia, а ви використовуєте bumblebee
пакет, ви можете поставити optirun
перед цим рядком, і він повинен сказати вам, що ви використовуєте чіп NVidia (optirun в основному говорить комп'ютеру використовувати дискретний чіп запускати будь-яку команду, що слідує, але все ще використовується інтегрована мікросхема)
$ optirun glxinfo|egrep "OpenGL vendor|OpenGL renderer"
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: GeForce GT 555M/PCIe/SSE2
glxheads
також розповідає корисну інформацію про те, яка відеокарта використовується (здебільшого повторює glxinfo у більш компактній та легкій для читання формі tho), і вона дає приємне відображення обертового трикутника.
Щоб перевірити, який GPU в даний час командує (це означає, що це активний контролер VGA), введіть
lspci -vnnn | perl -lne 'print if /^\d+\:.+(\[\S+\:\S+\])/' | grep VGA
Будь-який контролер з [VGA controller]
кінцем - це ваш активний GPU. Інші вимкнені. У наступному прикладі карта Intel активна, поки nVidia не використовується:
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)
nvidia-settings
GUI
У Ubuntu 15.10, після того, як я встановив nvidia-352
і графічний процесор, здається, працює:
nvidia-settings
показує щось на кшталт:
Зверніть увагу, як це показано:
GPU 0 - (NVS 5400M)
де NVS 5400M
моя модель GPU.
Тоді, якщо я буду стріляти glxgears
, використання GPU переходить до> 90%.
Тож я очікую, що якби у вас було кілька графічних процесорів, ви могли б бачити, скільки кожного з них використовується одночасно.
nvidia-352
- це версія драйвера / пакету Ubuntu n, кожна версія підтримує багато графічних процесорів, як зазначено на офіційному веб-сайті: nvidia.com/Download/driverResults.aspx/90279/en-uames NVS 5400M - це модель GPU: en.wikipedia .org / wiki / List_of_Nvidia_graphics_processing_units
nvidia-smi -L
Це дало мені те, що я хотів. Ця команда показує перелік графічних процесорів, присутніх на вашій машині. Це може допомогти вам зрозуміти, які з них є активними.
тут отримана команда з потоку: Ubuntu Box з декількома картами NVIDIA GPU | devtalk.nvidia.com
Яку ОС ви використовуєте? Якщо ви використовуєте lspci на більшості машин Linux, ви отримуєте список своїх ПК-пристроїв, просто натисніть на графічні пристрої, і вони повинні з'являтися на обох. Після цього просто перевірте конфігурацію на кожному з них, ви повинні побачити деталі up / on / active чи щось подібне.
nvidia-smi
дуже корисно, але часом я виявив, що воно не завжди включає все. Здається, що при збої процесів вони не завжди перераховані.
sudo lsof /dev/nvidia*
завжди працював на мене. Він також працюватиме без sudo
, але показуватиме лише процеси, які належать вам. Якщо ви працюєте на багатокористувацькій машині або використовуєте докер, ви, мабуть, отримаєте кращі результати sudo
.
Якщо ви побачите невідповідність між двома командами, ви можете розглянути kill
додаткові процеси, знайдені в lsof
.
VGA controller
в кінці?