Функция cuda.current_device
Функция cuda.current_device возвращает индекс текущего устройства CUDA,
которое используется для операций с тензорами и моделями.
Индекс устройства - это целое число, начиная с нуля,
которое соответствует порядковому номеру GPU в системе.
Функция не принимает никаких параметров и возвращает целое число.
Синтаксис
torch.cuda.current_device()
Пример
Давайте получим индекс текущего устройства CUDA:
import torch
if torch.cuda.is_available():
device_id = torch.cuda.current_device()
print(device_id)
Результат выполнения кода:
0
Функция вернула индекс текущего устройства. Если в системе доступна только одна видеокарта, будет возвращён ноль.
Пример
Получим индекс текущего устройства и выведем его название:
import torch
if torch.cuda.is_available():
device_id = torch.cuda.current_device()
device_name = torch.cuda.get_device_name(device_id)
print(device_id, device_name)
Результат выполнения кода:
0 "NVIDIA GeForce RTX 3080"
Пример
Сменим текущее устройство и проверим, как изменяется индекс:
import torch
if torch.cuda.is_available():
torch.cuda.set_device(1)
device_id = torch.cuda.current_device()
print(device_id)
Результат выполнения кода:
1
Функция вернула новый индекс после смены устройства. Обратите внимание, что для использования устройства с индексом 1 необходимо, чтобы оно было доступно.
Смотрите также
-
функцию
is_available,
которая проверяет доступность CUDA -
функцию
device_count,
которая возвращает количество доступных устройств CUDA -
функцию
set_device,
которая устанавливает текущее устройство -
функцию
get_device_name,
которая возвращает название устройства по его индексу