Я пытаюсь запустить пример кода TensorFlow (2.2) на databricks / GPU (p2.xlarge) со средой как:
6.6 ML, spark 2.4.5, GPU, Scala 2.11
Keras version : 2.2.5
nvidia-smi
NVIDIA-SMI 440.64.00 Driver Version: 440.64.00 CUDA Version: 10.2
Я проверил https://docs.databricks.com/applications/deep-learning/single-node-training/tensorflow.html#install -tensorflow-22 -on-databricks-runtime-66-ml & language-GPU
Но я не хочу запускать команды оболочки каждый раз при перезапуске кластеров графических процессоров Databricks.
итак, я установленный TensorFlow из пользовательского интерфейса библиотек данных
tensorflow==2.2.*
Я не указываю, что это для GPU или CPU. Я предполагаю, что по умолчанию он предназначен для графического процессора.
Я обнаружил, что код python3 выполняется только на процессорах, а не на графическом процессоре.
import tensorflow as tf
physical_devices = tf.config.list_physical_devices()
physical_devices : [PhysicalDevice(name='/physical_device:CPU:0', device_type='CPU'), PhysicalDevice(name='/physical_device:XLA_CPU:0', device_type='XLA_CPU'), PhysicalDevice(name='/physical_device:XLA_GPU:0', device_type='XLA_GPU')]
visible_devices = tf.config.get_visible_devices()
visible devices: [PhysicalDevice(name='/physical_device:CPU:0', device_type='CPU')]
tf.test.gpu_device_name() # return empty string
is_built_with_cuda: True
is_built_with_gpu_support: True
is_built_with_rocm: False
is_built_with_xla: True
get_soft_device_placement : True
Я пытаюсь установить 'XLA_GPU 'видимые для среды выполнения ML:
# https://www.tensorflow.org/api_docs/python/tf/config/set_visible_devices
# set GPU visible for TF runtime
physical_devices = tf.config.list_physical_devices('XLA_GPU')
try:
# enable first GPU
tf.config.set_visible_devices(physical_devices[0], 'XLA_GPU') # exception here !!!
logical_devices = tf.config.list_logical_devices('XLA_CPU')
# Logical device was created for first GPU
assert len(logical_devices) == len(physical_devices)
except:
# Invalid device or cannot modify virtual devices once initialized.
print('Invalid device or cannot modify virtual devices once initialized.')
Но у меня есть исключение.
Как включить графический процессор, чтобы код TF мог работать на нем?
спасибо