Перенос на видеокарту в TensorFlow
Если видеокарта доступна, тензор
можно создать внутри контекста
device с именем карты.
Сначала проверим, есть ли
в системе устройства типа GPU:
import tensorflow as tf
gpus = tf.config.list_physical_devices('GPU')
print(gpus)
# выведет []
При пустом списке карт расчёт остаётся на процессоре. Тот же тензор создадим в ветке для GPU или для CPU и выведем строку устройства:
import tensorflow as tf
gpus = tf.config.list_physical_devices('GPU')
if gpus:
with tf.device('/GPU:0'):
values = tf.constant([1.0, 2.0])
else:
with tf.device('/CPU:0'):
values = tf.constant([1.0, 2.0])
print(values.device)
# выведет /job:localhost/replica:0/task:0/device:CPU:0
Создайте вектор из чисел
3.0 и 4.0 на процессоре
и выведите, где он размещён.
Проверьте наличие видеокарт
и создайте скаляр 5.0
на первой карте, если она есть,
иначе на процессоре.
Выведите устройство тензора.
Сложите два тензора 1.0
и 2.0, созданных
в одном контексте процессора,
и выведите устройство суммы.