torch.cuda
Этот пакет добавляет поддержку типов тензоров CUDA, которые реализуют те же функции, что и тензоры на CPU, но они используют GPU для вычислений.
Он инициализируется лениво, поэтому вы всегда можете его импортировать и использовать is_available(), чтобы определить, поддерживает ли ваша система CUDA.
Семантика CUDA содержит больше подробностей о работе с CUDA.
StreamContext
| Менеджер контекста, который выбирает заданный поток. |
can_device_access_peer
| Проверяет, возможен ли доступ к peer между двумя устройствами. |
current_blas_handle
| Возвращает указатель cublasHandle_t на текущую ручку cuBLAS. |
current_device
| Возвращает индекс текущего выбранного устройства. |
current_stream
| Возвращает текущий выбранный |
default_stream
| Возвращает значение по умолчанию |
device
| Менеджер контекста, который изменяет выбранное устройство. |
device_count
| Возвращает количество доступных GPU. |
device_of
| Менеджер контекста, который изменяет текущее устройство на устройство данного объекта. |
get_arch_list
| Возвращает список архитектур CUDA, для которых скомпилирована эта библиотека. |
get_device_capability
| Получает возможности cuda устройства. |
get_device_name
| Получает имя устройства. |
get_device_properties
| Получает свойства устройства. |
get_gencode_flags
| Возвращает флаги NVCC gencode, с которыми была скомпилирована эта библиотека. |
get_sync_debug_mode
| Возвращает текущее значение режима отладки для операций синхронизации cuda. |
init
| Инициализирует состояние CUDA PyTorch. |
ipc_collect
| Принудительно собирает память GPU после ее освобождения с помощью CUDA IPC. |
is_available
| Возвращает булево значение, указывающее, доступна ли в данный момент CUDA. |
is_initialized
| Возвращает, было ли инициализировано состояние CUDA PyTorch. |
memory_usage
| Возвращает процент времени за последний период выборки, в течение которого глобальная (устройства) память считывалась или записывалась. |
set_device
| Устанавливает текущее устройство. |
set_stream
| Устанавливает текущий поток. Это оберточный API для установки потока. |
set_sync_debug_mode
| Устанавливает режим отладки для операций синхронизации cuda. |
stream
| Обёртка вокруг менеджера контекста StreamContext, который выбирает заданный поток. |
synchronize
| Ожидает завершения всех ядер во всех потоках на устройстве CUDA. |
utilization
| Возвращает процент времени за последний период выборки, в течение которого одно или несколько ядер выполнялось на GPU, как указано в |
temperature
| Возвращает среднюю температуру датчика GPU в градусах Цельсия. |
power_draw
| Возвращает среднее потребление энергии датчика GPU в мВт (милливаттах). |
clock_rate
| Возвращает тактовую частоту SM GPU в Гц (Герцах) за последний период выборки, как указано в |
OutOfMemoryError
| Исключение, которое возникает, когда в CUDA закончилась память. |
Генератор случайных чисел
get_rng_state
| Возвращает состояние генератора случайных чисел указанной GPU в виде ByteTensor. |
get_rng_state_all
| Возвращает список ByteTensor, представляющих состояния генераторов случайных чисел всех устройств. |
set_rng_state
| Устанавливает состояние генератора случайных чисел указанной GPU. |
set_rng_state_all
| Устанавливает состояние генератора случайных чисел всех устройств. |
manual_seed
| Устанавливает seed для генерации случайных чисел для текущей GPU. |
manual_seed_all
| Устанавливает seed для генерации случайных чисел на всех GPU. |
seed
| Устанавливает seed для генерации случайных чисел на случайное число для текущей GPU. |
seed_all
| Устанавливает seed для генерации случайных чисел на случайное число на всех GPU. |
initial_seed
| Возвращает текущий seed генератора случайных чисел текущей GPU. |
Коллективы коммуникации
Транслирует тензор на указанные устройства GPU. | |
Транслирует последовательность тензоров на указанные GPU. | |
Суммирует тензоры с нескольких GPU. | |
Рассыпывает тензор по нескольким GPU. | |
Собрать тензоры с нескольких устройств GPU. |
Потоки и события
Stream
| Обёртка вокруг потока CUDA. |
ExternalStream
| Обёртка вокруг внешне выделенного потока CUDA. |
Event
| Обёртка вокруг события CUDA. |
Графы (бета)
is_current_stream_capturing
| Возвращает True, если захват графа CUDA происходит в текущем потоке CUDA, в противном случае — False. |
graph_pool_handle
| Возвращает непрозрачный маркер, представляющий идентификатор пула памяти графа. |
CUDAGraph
| Обёртка вокруг графа CUDA. |
graph
| Менеджер контекста, который захватывает работу CUDA в объект |
make_graphed_callables
| Принимает вызываемые объекты (функции или |
Управление памятью CUDA
empty_cache
| Освобождает все свободные кэшированные данные, которые сейчас хранятся в кэширующем выделенном блоке памяти, так что эти данные могут быть использованы в другом приложении GPU и отображаются в |
list_gpu_processes
| Возвращает удобочитаемый вывод запущенных процессов и их использования памяти GPU для заданного устройства. |
mem_get_info
| Возвращает общую свободную и общую память GPU для заданного устройства, используя cudaMemGetInfo. |
memory_stats
| Возвращает словарь статистики выделения памяти CUDA для заданного устройства. |
memory_summary
| Возвращает удобочитаемый вывод текущих статистических данных выделения памяти для заданного устройства. |
memory_snapshot
| Возвращает снимок состояния выделения памяти CUDA на всех устройствах. |
memory_allocated
| Возвращает текущий объём занимаемой памяти GPU тензорами в байтах для заданного устройства. |
max_memory_allocated
| Возвращает максимальный объём занимаемой памяти GPU тензорами в байтах для заданного устройства. |
reset_max_memory_allocated
| Сбрасывает начальную точку отслеживания максимального объёма занимаемой памяти GPU тензорами для заданного устройства. |
memory_reserved
| Возвращает текущий объём управляемой кэширующим выделенным блоком памяти GPU в байтах для заданного устройства. |
max_memory_reserved
| Возвращает максимальный объём управляемой кэширующим выделенным блоком памяти GPU в байтах для заданного устройства. |
set_per_process_memory_fraction
| Устанавливает долю памяти для процесса. |
memory_cached
| Устарело; см. |
max_memory_cached
| Устарело; см. |
reset_max_memory_cached
| Сбрасывает начальную точку отслеживания максимального объёма управляемой кэширующим выделенным блоком памяти GPU для заданного устройства. |
reset_peak_memory_stats
| Сбрасывает статистику "пика", отслеживаемую выделением памяти CUDA. |
caching_allocator_alloc
| Выполняет выделение памяти с помощью выделения памяти CUDA. |
caching_allocator_delete
| Удаляет память, выделенную с помощью выделения памяти CUDA. |
get_allocator_backend
| Возвращает строку, описывающую активный бэкенд выделения памяти, установленный с помощью |
CUDAPluggableAllocator
| Выделение памяти CUDA, загруженное из файла so. |
change_current_allocator
| Изменяет текущее используемое выделение памяти на предоставленное. |
Расширение NVIDIA Tools (NVTX)
Описывает мгновенное событие, произошедшее в определенный момент. | |
Добавляет диапазон в стек вложенных диапазонов. | |
Удаляет диапазон из стека вложенных диапазонов. |
Jiterator (бета)
Создание CUDA-ядра, сгенерированного jiterator, для элементной операции. | |
Создание CUDA-ядра, сгенерированного jiterator, для элементной операции, поддерживающей возврат одного или нескольких результатов. |
Потоковый санитайзер (прототип)
CUDA Sanitizer — это прототип инструмента для обнаружения ошибок синхронизации между потоками в PyTorch. См. документацию для получения информации о том, как его использовать.
© 2024, PyTorch Contributors
PyTorch has a BSD-style license, as found in the LICENSE file.
https://pytorch.org/docs/2.1/cuda.html