ExternalStream
-
class torch.cuda.ExternalStream(stream_ptr, device=None, **kwargs)[исходный код] -
Оболочка для внешнего выделенного потока CUDA.
Этот класс используется для обёртывания потоков, выделенных в других библиотеках, чтобы упростить обмен данными и взаимодействие между библиотеками.
Примечание
Этот класс не управляет жизненным циклом потока; пользователь несёт ответственность за то, чтобы используемый поток оставался активным, пока применяется этот класс.
- Параметры:
-
-
stream_ptr (int) – целочисленное представление значения
cudaStream_t, выделенного извне. - device (torch.device or int, необязательно) – устройство, на котором изначально был выделен поток. Если устройство указано неверно, последующие запуски с использованием этого потока могут завершиться ошибкой.
-
stream_ptr (int) – целочисленное представление значения
-
query()[исходный код] -
Проверить, завершена ли вся отправленная работа.
- Возвращает:
-
Логическое значение, указывающее, завершены ли все ядра в этом потоке.
- Тип возвращаемого значения:
-
record_event(event=None)[исходный код] -
Записать событие.
- Параметры:
-
event (Event, torch.Event, необязательно) – событие для записи. Если не указано, будет выделено новое.
- Возвращает:
-
Записанное событие.
-
synchronize()[исходный код] -
Дождаться завершения всех ядер в этом потоке.
Примечание
Это оболочка для
cudaStreamSynchronize(); дополнительную информацию см. в документации по потокам CUDA.
-
wait_event(event)[исходный код] -
Заставить всю будущую работу, отправленную в поток, ожидать события.
- Параметры:
-
event (Event, torch.Event) – событие, которого нужно дождаться.
Примечание
Это оболочка для
cudaStreamWaitEvent(); дополнительную информацию см. в документации по потокам CUDA.Эта функция возвращает управление, не дожидаясь
event: затрагиваются только будущие операции.
-
wait_stream(stream)[исходный код] -
Синхронизироваться с другим потоком.
Вся будущая работа, отправленная в этот поток, будет ожидать завершения всех ядер, отправленных в указанный поток к моменту вызова.
- Параметры:
-
stream (Stream, torch.Stream) – поток для синхронизации.
Примечание
Эта функция возвращает управление, не дожидаясь ядер, поставленных в очередь в
stream: затрагиваются только будущие операции.
© 2026, PyTorch Contributors
PyTorch has a BSD-style license, as found in the LICENSE file.
https://docs.pytorch.org/docs/2.14/generated/torch.cuda.ExternalStream.html