Функция distributed.is_available
Функция distributed.is_available проверяет,
доступна ли поддержка распределенных вычислений в текущей сборке PyTorch.
Функция не принимает никаких параметров и возвращает
логическое значение True или False.
Эта проверка полезна перед вызовом других функций модуля
distributed, чтобы избежать ошибок
в средах без поддержки распределенного обучения.
Синтаксис
torch.distributed.is_available()
Пример
Проверим, доступна ли поддержка распределенных вычислений в стандартной сборке PyTorch:
import torch
available = torch.distributed.is_available()
print(available)
Результат выполнения кода:
True
Пример
Используем проверку для безопасной инициализации группы процессов только в том случае, если распределенные вычисления поддерживаются:
import torch
if torch.distributed.is_available():
torch.distributed.init_process_group(backend='gloo')
print("Process group initialized")
else:
print("Distributed not available")
Результат выполнения кода:
"Process group initialized"
Пример
Функция distributed.is_available
позволяет обойти код распределенного обучения
в окружениях, где эта функциональность недоступна:
import torch
if not torch.distributed.is_available():
print("Running in single-process mode")
else:
print("Distributed backend is ready")
Результат выполнения кода:
"Running in single-process mode"
Смотрите также
-
функцию
is_initialized,
которая проверяет, инициализирована ли группа процессов -
функцию
is_nccl_available,
которая проверяет доступность бэкенда NCCL -
функцию
is_gloo_available,
которая проверяет доступность бэкенда Gloo -
функцию
is_mpi_available,
которая проверяет доступность бэкенда MPI