11GB GPU RAM 및 nvidia-smi를 사용하면 프로세스가 나열되지 않습니다.

11GB GPU RAM 및 nvidia-smi를 사용하면 프로세스가 나열되지 않습니다.

내 GPU #0에서는 11341MiB의 GPU RAM이 사용되고 프로세스가 나열되지 않습니다 nvidia-smi. 이것이 어떻게 가능하며 어떻게 기억을 되돌릴 수 있습니까?

Thu Aug 18 14:27:58 2016
+------------------------------------------------------+
| NVIDIA-SMI 352.63     Driver Version: 352.63         |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| Fan  Temp  Perf  Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
|   0  GeForce GTX TIT...  Off  | 0000:02:00.0     Off |                  N/A |
| 29%   61C    P2    71W / 250W |  11341MiB / 12287MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+
|   1  GeForce GTX TIT...  Off  | 0000:03:00.0     Off |                  N/A |
| 22%   42C    P0    71W / 250W |     23MiB / 12287MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+
|   2  GeForce GTX TIT...  Off  | 0000:82:00.0     Off |                  N/A |
| 22%   35C    P0    69W / 250W |     23MiB / 12287MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+
|   3  GeForce GTX TIT...  Off  | 0000:83:00.0     Off |                  N/A |
|  0%   33C    P0    60W / 250W |     23MiB / 12287MiB |      0%      Default |
+-------------------------------+----------------------+----------------------+

+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
|  GPU       PID  Type  Process name                               Usage      |
|=============================================================================|
|  No running processes found                                                 |
+-----------------------------------------------------------------------------+

플래그를 사용하여 Theano Python 스크립트를 시작했는데 lib.cnmem=0.9, 이는 GPU 메모리의 11341MiB를 사용하는 이유를 설명합니다(CNMeM 라이브러리"딥 러닝 프레임워크가 CUDA 메모리를 관리하는 데 도움이 되는 간단한 라이브러리입니다." ). 하지만 스크립트를 종료하고 GPU 메모리가 해제되기를 기대합니다.

  • pkill -9 python도움이 되지 sudo nvidia-smi --gpu-reset -i 0않았습니다.
  • sudo fuser -v /dev/nvidia*원하지 않는 프로세스는 표시되지 않습니다.

저는 GeForce GTX Titan Maxwell과 Ubuntu 14.04.4 LTS x64를 사용하고 있습니다.

답변1

프로세스를 임의로 종료하는 데 사용하는 것은 kill -9매우 나쁜 생각 이며 상황을 망칠 수 있습니다. SIGKILL또는 신호 9는 아무것도 완료하지 않고 프로세스 실행을 즉시 중지하고 적절하게 종료합니다. 이 경우 스크립트가 종료되면 RAM이 확보되지 않을 수 있습니다. 귀하의 경우 메모리를 회수하는 유일한 방법은 GPU를 재설정하거나 GPU nvidia-smi --gpu-reset를 사용할 수 없는 경우 재부팅하는 것입니다.

다음에 단순히 프로그램을 중지해야 하는 경우 인수 없이 kill을 사용하면 프로그램이 실제로 이를 처리하고 종료할 수 있도록 보다 친숙한 신호인 을 SIGTERM보낼 것입니다 . 다른 신호에 응답하지 않는 작업을 중지하고 최후의 수단으로만 사용해야 합니다.SIGTERMSIGKILL

관련 정보