반응형
Jupyter 내 Tensorflow 세트 CUDA_VISIBLE_DEVICES
두 개의 GPU가 있고 ipynb를 통해 두 개의 서로 다른 네트워크를 동시에 실행하고 싶지만 첫 번째 노트북은 항상 두 GPU를 모두 할당합니다.
CUDA_VISIBLE_DEVICES를 사용하여 파이썬 파일에 대한 장치를 숨길 수 있지만 노트북 내에서 그렇게하는 방법을 잘 모르겠습니다.
어쨌든 동일한 서버에서 실행되는 노트북에 다른 GPU를 숨길 수 있습니까?
를 사용하여 노트북에서 환경 변수를 설정할 수 있습니다 os.environ
. TensorFlow를 초기화하기 전에 다음을 수행하여 TensorFlow를 첫 번째 GPU로 제한합니다.
import os
os.environ["CUDA_DEVICE_ORDER"]="PCI_BUS_ID" # see issue #152
os.environ["CUDA_VISIBLE_DEVICES"]="0"
TF에 올바른 장치가 표시되는지 다시 확인할 수 있습니다.
from tensorflow.python.client import device_lib
print device_lib.list_local_devices()
나는 notebook_util 과 같은 유틸리티 모듈에서 사용하는 경향이 있습니다.
import notebook_util
notebook_util.pick_gpu_lowest_memory()
import tensorflow as tf
매직 을 사용하여 가져 오기없이 더 빠르게 할 수 있습니다 .
%env CUDA_DEVICE_ORDER=PCI_BUS_ID
%env CUDA_VISIBLE_DEVICES=0
모든 env 변수는 문자열이므로 사용할 필요가 없습니다 "
. 다음을 실행하여 env-variable이 설정되었는지 확인할 수 있습니다 %env <name_of_var>
.. 또는 모두 %env
.
참고 URL : https://stackoverflow.com/questions/37893755/tensorflow-set-cuda-visible-devices-within-jupyter
반응형
'Programing' 카테고리의 다른 글
STL 컨테이너를 필터링하는 현대적인 방법? (0) | 2020.11.20 |
---|---|
JAX-RS 웹 서비스에서 교차 도메인 요청을 사용하는 방법은 무엇입니까? (0) | 2020.11.20 |
Query if Android database exists! (0) | 2020.11.19 |
하단을 제외하고 선형 레이아웃 주위에 테두리를 추가하는 방법은 무엇입니까? (0) | 2020.11.19 |
ScrollView 레이아웃이 전체 화면을 채우지 않습니다. (0) | 2020.11.19 |