with instalar como python environment-variables tensorflow

python - instalar - Tensorflow establece CUDA_VISIBLE_DEVICES dentro de jupyter



install tensorflow windows (2)

Tengo dos GPU y me gustaría ejecutar dos redes diferentes a través de ipynb simultáneamente, sin embargo, el primer portátil siempre asigna ambas GPU.

Usando CUDA_VISIBLE_DEVICES, puedo ocultar dispositivos para archivos de Python, sin embargo, no estoy seguro de cómo hacerlo dentro de una computadora portátil.

¿Hay alguna forma de ocultar diferentes GPU en los portátiles que se ejecutan en el mismo servidor?


Puede establecer variables de entorno en el cuaderno utilizando os.environ . Haga lo siguiente antes de inicializar TensorFlow para limitar TensorFlow a la primera GPU.

import os os.environ["CUDA_DEVICE_ORDER"]="PCI_BUS_ID" # see issue #152 os.environ["CUDA_VISIBLE_DEVICES"]="0"

Puede verificar que tenga los dispositivos correctos visibles para TF

from tensorflow.python.client import device_lib print device_lib.list_local_devices()

Tiendo a usarlo desde un módulo de utilidad como notebook_util

import notebook_util notebook_util.pick_gpu_lowest_memory() import tensorflow as tf


Puedes hacerlo más rápido sin importar nada simplemente usando magics :

%env CUDA_DEVICE_ORDER=PCI_BUS_ID %env CUDA_VISIBLE_DEVICES=0

Tenga en cuenta que todas las variables env son cadenas, por lo que no es necesario usar " . Puede verificar que la variable env esté configurada ejecutando: %env <name_of_var> . O verifíquelas todas con %env .