René's URL Explorer Experiment


Title: CUDA Guards — PyTorch main documentation

Description: CUDA device and stream guards in PyTorch C++ — CUDAGuard, CUDAStreamGuard, and CUDAMultiStreamGuard.

Keywords:

direct link

Domain: docs.pytorch.org


Hey, it has json ld scripts:
    {
       "@context": "https://schema.org",
       "@type": "Article",
       "name": "CUDA Guards",
       "headline": "CUDA Guards",
       "description": "CUDA device and stream guards in PyTorch C++ \u2014 CUDAGuard, CUDAStreamGuard, and CUDAMultiStreamGuard.",
       "url": "/api/cuda/guards.html",
       "articleBody": "CUDA Guards# CUDA guards are RAII wrappers that set a CUDA device or stream as the current context and automatically restore the previous context when the guard goes out of scope. CUDAGuard# struct CUDAGuard# A variant of DeviceGuard that is specialized for CUDA. It accepts integer indices (interpreting them as CUDA devices) and is a little more efficient than DeviceGuard (it compiles to straight line cudaSetDevice/cudaGetDevice calls); however, it can only be used from code that links against CUDA directly. Public Functions explicit CUDAGuard() = delete# No default constructor; see Note [Omitted default constructor from RAII]. inline explicit CUDAGuard(DeviceIndex device_index)# Set the current CUDA device to the passed device index. inline explicit CUDAGuard(Device device)# Sets the current CUDA device to the passed device. Errors if the passed device is not a CUDA device. CUDAGuard(const CUDAGuard\u0026) = delete# CUDAGuard \u0026operator=(const CUDAGuard\u0026) = delete# CUDAGuard(CUDAGuard \u0026\u0026other) = delete# CUDAGuard \u0026operator=(CUDAGuard \u0026\u0026other) = delete# ~CUDAGuard() = default# inline void set_device(Device device)# Sets the CUDA device to the given device. Errors if the given device is not a CUDA device. inline void reset_device(Device device)# Sets the CUDA device to the given device. Errors if the given device is not a CUDA device. (This method is provided for uniformity with DeviceGuard). inline void set_index(DeviceIndex device_index)# Sets the CUDA device to the given device index. inline Device original_device() const# Returns the device that was set upon construction of the guard. inline Device current_device() const# Returns the last device that was set via set_device, if any, otherwise the device passed during construction. Example: #include \u003cc10/cuda/CUDAGuard.h\u003e { c10::cuda::CUDAGuard guard(1); // Switch to device 1 // All CUDA operations here run on device 1 auto tensor = torch::zeros({2, 2}, torch::device(torch::kCUDA)); } // Previous device is restored CUDAStreamGuard# struct CUDAStreamGuard# A variant of StreamGuard that is specialized for CUDA. See CUDAGuard for when you can use this. Public Functions explicit CUDAStreamGuard() = delete# No default constructor, see Note [Omitted default constructor from RAII]. inline explicit CUDAStreamGuard(Stream stream)# Set the current CUDA device to the device associated with the passed stream, and set the current CUDA stream on that device to the passed stream. Errors if the Stream is not a CUDA stream. ~CUDAStreamGuard() = default# CUDAStreamGuard(const CUDAStreamGuard\u0026) = delete# Copy is disallowed. CUDAStreamGuard \u0026operator=(const CUDAStreamGuard\u0026) = delete# CUDAStreamGuard(CUDAStreamGuard \u0026\u0026other) = delete# Move is disallowed, as CUDAStreamGuard does not have an uninitialized state, which is required for moves on types with nontrivial destructors. CUDAStreamGuard \u0026operator=(CUDAStreamGuard \u0026\u0026other) = delete# inline void reset_stream(Stream stream)# Resets the currently set stream to the original stream and the currently set device to the original device. Then, set the current device to the device associated with the passed stream, and set the current stream on that device to the passed stream. Errors if the stream passed is not a CUDA stream. NOTE: this implementation may skip some stream/device setting if it can prove that it is unnecessary. WARNING: reset_stream does NOT preserve previously set streams on different devices. If you need to set streams on multiple devices on CUDA, use CUDAMultiStreamGuard instead. inline CUDAStream original_stream() const# Returns the CUDA stream that was set at the time the guard was constructed. inline CUDAStream current_stream() const# Returns the most recent CUDA stream that was set using this device guard, either from construction, or via set_stream. inline Device current_device() const# Returns the most recent CUDA device that was set using this device guard, either from construction, or via set_device/reset_device/set_index. inline Device original_device() const# Returns the CUDA device that was set at the most recent reset_stream(), or otherwise the device at construction time. Example: #include \u003cc10/cuda/CUDAGuard.h\u003e auto stream = c10::cuda::getStreamFromPool(); { c10::cuda::CUDAStreamGuard guard(stream); // Operations here use the specified stream } // Previous stream is restored OptionalCUDAGuard# struct OptionalCUDAGuard# A variant of OptionalDeviceGuard that is specialized for CUDA. See CUDAGuard for when you can use this. Public Functions explicit OptionalCUDAGuard() = default# Create an uninitialized OptionalCUDAGuard. inline explicit OptionalCUDAGuard(std::optional\u003cDevice\u003e device_opt)# Set the current CUDA device to the passed Device, if it is not nullopt. inline explicit OptionalCUDAGuard(std::optional\u003cDeviceIndex\u003e device_index_opt)# Set the current CUDA device to the passed device index, if it is not nullopt. OptionalCUDAGuard(const OptionalCUDAGuard\u0026) = delete# OptionalCUDAGuard \u0026operator=(const OptionalCUDAGuard\u0026) = delete# OptionalCUDAGuard(OptionalCUDAGuard \u0026\u0026other) = delete# OptionalCUDAGuard \u0026operator=(OptionalCUDAGuard \u0026\u0026other) = delete# ~OptionalCUDAGuard() = default# inline void set_device(Device device)# Sets the CUDA device to the given device, initializing the guard if it is not already initialized. Errors if the given device is not a CUDA device. inline void reset_device(Device device)# Sets the CUDA device to the given device, initializing the guard if it is not already initialized. Errors if the given device is not a CUDA device. (This method is provided for uniformity with OptionalDeviceGuard). inline void set_index(DeviceIndex device_index)# Sets the CUDA device to the given device index, initializing the guard if it is not already initialized. inline std::optional\u003cDevice\u003e original_device() const# Returns the device that was set immediately prior to initialization of the guard, or nullopt if the guard is uninitialized. inline std::optional\u003cDevice\u003e current_device() const# Returns the most recent device that was set using this device guard, either from construction, or via set_device, if the guard is initialized, or nullopt if the guard is uninitialized. inline void reset()# Restore the original CUDA device, resetting this guard to uninitialized state. Example: c10::cuda::OptionalCUDAGuard guard; if (use_cuda) { guard.set_device(0); } // Guard only switches device if set_device was called OptionalCUDAStreamGuard# struct OptionalCUDAStreamGuard# A variant of OptionalStreamGuard that is specialized for CUDA. See CUDAGuard for when you can use this. Public Functions explicit OptionalCUDAStreamGuard() = default# Create an uninitialized guard. inline explicit OptionalCUDAStreamGuard(Stream stream)# Set the current CUDA device to the device associated with the passed stream, and set the current CUDA stream on that device to the passed stream. Errors if the Stream is not a CUDA stream. inline explicit OptionalCUDAStreamGuard(std::optional\u003cStream\u003e stream_opt)# Set the current device to the device associated with the passed stream, and set the current stream on that device to the passed stream, if the passed stream is not nullopt. OptionalCUDAStreamGuard(const OptionalCUDAStreamGuard\u0026) = delete# Copy is disallowed. OptionalCUDAStreamGuard \u0026operator=(const OptionalCUDAStreamGuard\u0026) = delete# OptionalCUDAStreamGuard(OptionalCUDAStreamGuard \u0026\u0026other) = delete# OptionalCUDAStreamGuard \u0026operator=(OptionalCUDAStreamGuard \u0026\u0026other) = delete# ~OptionalCUDAStreamGuard() = default# inline void reset_stream(Stream stream)# Resets the currently set CUDA stream to the original stream and the currently set device to the original device. Then, set the current device to the device associated with the passed stream, and set the current stream on that device to the passed stream. Initializes the guard if it was not previously initialized. inline std::optional\u003cCUDAStream\u003e original_stream() const# Returns the CUDA stream that was set at the time the guard was most recently initialized, or nullopt if the guard is uninitialized. inline std::optional\u003cCUDAStream\u003e current_stream() const# Returns the most recent CUDA stream that was set using this stream guard, either from construction, or via reset_stream, if the guard is initialized, or nullopt if the guard is uninitialized. inline void reset()# Restore the original CUDA device and stream, resetting this guard to uninitialized state. CUDAMultiStreamGuard# struct CUDAMultiStreamGuard# A variant of MultiStreamGuard that is specialized for CUDA. Public Functions inline explicit CUDAMultiStreamGuard(ArrayRef\u003cCUDAStream\u003e streams)# CUDAMultiStreamGuard(const CUDAMultiStreamGuard\u0026) = delete# Copy is disallowed. CUDAMultiStreamGuard \u0026operator=(const CUDAMultiStreamGuard\u0026) = delete# CUDAMultiStreamGuard(CUDAMultiStreamGuard \u0026\u0026other) = delete# CUDAMultiStreamGuard \u0026operator=(CUDAMultiStreamGuard \u0026\u0026other) = delete# ~CUDAMultiStreamGuard() = default# Example: at::cuda::CUDAStream stream0 = at::cuda::getStreamFromPool(false, 0); at::cuda::CUDAStream stream1 = at::cuda::getStreamFromPool(false, 1); { at::cuda::CUDAMultiStreamGuard multi_guard({stream0, stream1}); // stream0 is current on device 0, stream1 on device 1 } // Both streams restored",
       "author": {
         "@type": "Organization",
         "name": "PyTorch Contributors",
         "url": "https://pytorch.org"
       },
       "image": "https://pytorch.org/docs/stable/_static/img/pytorch_seo.png",
       "mainEntityOfPage": {
         "@type": "WebPage",
         "@id": "/api/cuda/guards.html"
       },
       "datePublished": "2023-01-01T00:00:00Z",
       "dateModified": "2023-01-01T00:00:00Z"
     }
 

docsearch:languageen
llm:site-typedocumentation
llm:frameworkPyTorch
llm:descriptionCUDA device and stream guards in PyTorch C++ — CUDAGuard, CUDAStreamGuard, and CUDAMultiStreamGuard.
llm:navigation-filehttps://pytorch.org/docs/stable/llms.txt
llm:sitemaphttps://pytorch.org/docs/stable/sitemap.xml
llm:versionmain
llm:projectPyTorch
llm:page-typedocumentation
og:imagehttps://docs.pytorch.org/docs/stable/_static/img/pytorch_seo.png
None3

Links:

Skip to main contenthttps://docs.pytorch.org/cppdocs/api/cuda/guards.html#main-content
Home https://docs.pytorch.org/cppdocs/index.html
mainhttps://docs.pytorch.org/cppdocs/index.html
Installing C++ Distributions of PyTorch https://docs.pytorch.org/cppdocs/installing.html
The C++ Frontend https://docs.pytorch.org/cppdocs/frontend.html
C++ API Reference https://docs.pytorch.org/cppdocs/api/index.html
ATen: Tensor Library https://docs.pytorch.org/cppdocs/api/aten/index.html
C10: Core Utilities https://docs.pytorch.org/cppdocs/api/c10/index.html
Autograd: Automatic Differentiation https://docs.pytorch.org/cppdocs/api/autograd/index.html
CUDA Support https://docs.pytorch.org/cppdocs/api/cuda/index.html
XPU Support https://docs.pytorch.org/cppdocs/api/xpu/index.html
Neural Network Modules (torch::nn) https://docs.pytorch.org/cppdocs/api/nn/index.html
Optimizers (torch::optim) https://docs.pytorch.org/cppdocs/api/optim/index.html
Data Loading (torch::data) https://docs.pytorch.org/cppdocs/api/data/index.html
Serialization (torch::serialize) https://docs.pytorch.org/cppdocs/api/serialize/index.html
Torch Library API https://docs.pytorch.org/cppdocs/api/library/index.html
Torch Stable API https://docs.pytorch.org/cppdocs/api/stable/index.html
FAQ https://docs.pytorch.org/cppdocs/faq.html
Go to pytorch.org https://pytorch.org
Xhttps://x.com/PyTorch
GitHubhttps://github.com/pytorch/pytorch
PyTorch Forumhttps://discuss.pytorch.org/
PyPihttps://pypi.org/project/torch/
mainhttps://docs.pytorch.org/cppdocs/index.html
Installing C++ Distributions of PyTorch https://docs.pytorch.org/cppdocs/installing.html
The C++ Frontend https://docs.pytorch.org/cppdocs/frontend.html
C++ API Reference https://docs.pytorch.org/cppdocs/api/index.html
ATen: Tensor Library https://docs.pytorch.org/cppdocs/api/aten/index.html
C10: Core Utilities https://docs.pytorch.org/cppdocs/api/c10/index.html
Autograd: Automatic Differentiation https://docs.pytorch.org/cppdocs/api/autograd/index.html
CUDA Support https://docs.pytorch.org/cppdocs/api/cuda/index.html
XPU Support https://docs.pytorch.org/cppdocs/api/xpu/index.html
Neural Network Modules (torch::nn) https://docs.pytorch.org/cppdocs/api/nn/index.html
Optimizers (torch::optim) https://docs.pytorch.org/cppdocs/api/optim/index.html
Data Loading (torch::data) https://docs.pytorch.org/cppdocs/api/data/index.html
Serialization (torch::serialize) https://docs.pytorch.org/cppdocs/api/serialize/index.html
Torch Library API https://docs.pytorch.org/cppdocs/api/library/index.html
Torch Stable API https://docs.pytorch.org/cppdocs/api/stable/index.html
FAQ https://docs.pytorch.org/cppdocs/faq.html
Go to pytorch.org https://pytorch.org
Xhttps://x.com/PyTorch
GitHubhttps://github.com/pytorch/pytorch
PyTorch Forumhttps://discuss.pytorch.org/
PyPihttps://pypi.org/project/torch/
ATen: Tensor Libraryhttps://docs.pytorch.org/cppdocs/api/aten/index.html
Tensor Classhttps://docs.pytorch.org/cppdocs/api/aten/tensor.html
Tensor Creationhttps://docs.pytorch.org/cppdocs/api/aten/creation.html
Tensor Indexinghttps://docs.pytorch.org/cppdocs/api/aten/indexing.html
Tensor Accessorshttps://docs.pytorch.org/cppdocs/api/aten/accessors.html
C10: Core Utilitieshttps://docs.pytorch.org/cppdocs/api/c10/index.html
Device and DeviceTypehttps://docs.pytorch.org/cppdocs/api/c10/device.html
Device Guardshttps://docs.pytorch.org/cppdocs/api/c10/guards.html
Streamshttps://docs.pytorch.org/cppdocs/api/c10/streams.html
Core Typeshttps://docs.pytorch.org/cppdocs/api/c10/types.html
Utilitieshttps://docs.pytorch.org/cppdocs/api/c10/utilities.html
Autograd: Automatic Differentiationhttps://docs.pytorch.org/cppdocs/api/autograd/index.html
Gradient Computationhttps://docs.pytorch.org/cppdocs/api/autograd/gradient.html
Custom Autograd Functionshttps://docs.pytorch.org/cppdocs/api/autograd/custom_functions.html
Gradient Modeshttps://docs.pytorch.org/cppdocs/api/autograd/modes.html
CUDA Supporthttps://docs.pytorch.org/cppdocs/api/cuda/index.html
CUDA Streamshttps://docs.pytorch.org/cppdocs/api/cuda/streams.html
CUDA Guardshttps://docs.pytorch.org/cppdocs/api/cuda/guards.html
CUDA Utility Functionshttps://docs.pytorch.org/cppdocs/api/cuda/utilities.html
XPU Supporthttps://docs.pytorch.org/cppdocs/api/xpu/index.html
XPU Streamshttps://docs.pytorch.org/cppdocs/api/xpu/streams.html
XPU Utility Functionshttps://docs.pytorch.org/cppdocs/api/xpu/utilities.html
Neural Network Modules (torch::nn)https://docs.pytorch.org/cppdocs/api/nn/index.html
Containershttps://docs.pytorch.org/cppdocs/api/nn/containers.html
Convolution Layershttps://docs.pytorch.org/cppdocs/api/nn/convolution.html
Pooling Layershttps://docs.pytorch.org/cppdocs/api/nn/pooling.html
Linear Layershttps://docs.pytorch.org/cppdocs/api/nn/linear.html
Activation Functionshttps://docs.pytorch.org/cppdocs/api/nn/activation.html
Normalization Layershttps://docs.pytorch.org/cppdocs/api/nn/normalization.html
Dropout Layershttps://docs.pytorch.org/cppdocs/api/nn/dropout.html
Embedding Layershttps://docs.pytorch.org/cppdocs/api/nn/embedding.html
Recurrent Layershttps://docs.pytorch.org/cppdocs/api/nn/recurrent.html
Transformer Layershttps://docs.pytorch.org/cppdocs/api/nn/transformer.html
Loss Functionshttps://docs.pytorch.org/cppdocs/api/nn/loss.html
Functional APIhttps://docs.pytorch.org/cppdocs/api/nn/functional.html
Utilitieshttps://docs.pytorch.org/cppdocs/api/nn/utilities.html
Optimizers (torch::optim)https://docs.pytorch.org/cppdocs/api/optim/index.html
Gradient Descent Optimizershttps://docs.pytorch.org/cppdocs/api/optim/gradient_descent.html
Adaptive Learning Rate Optimizershttps://docs.pytorch.org/cppdocs/api/optim/adaptive.html
Second-Order Optimizershttps://docs.pytorch.org/cppdocs/api/optim/second_order.html
Learning Rate Schedulershttps://docs.pytorch.org/cppdocs/api/optim/schedulers.html
Data Loading (torch::data)https://docs.pytorch.org/cppdocs/api/data/index.html
Datasetshttps://docs.pytorch.org/cppdocs/api/data/datasets.html
DataLoaderhttps://docs.pytorch.org/cppdocs/api/data/dataloader.html
Samplershttps://docs.pytorch.org/cppdocs/api/data/samplers.html
Transformshttps://docs.pytorch.org/cppdocs/api/data/transforms.html
Serialization (torch::serialize)https://docs.pytorch.org/cppdocs/api/serialize/index.html
Saving and Loadinghttps://docs.pytorch.org/cppdocs/api/serialize/save_load.html
Archiveshttps://docs.pytorch.org/cppdocs/api/serialize/archives.html
Checkpointshttps://docs.pytorch.org/cppdocs/api/serialize/checkpoints.html
Torch Library APIhttps://docs.pytorch.org/cppdocs/api/library/index.html
Operator Registrationhttps://docs.pytorch.org/cppdocs/api/library/registration.html
Custom Classeshttps://docs.pytorch.org/cppdocs/api/library/custom_classes.html
Library Versioninghttps://docs.pytorch.org/cppdocs/api/library/versioning.html
Torch Stable APIhttps://docs.pytorch.org/cppdocs/api/stable/index.html
Library Registration Macroshttps://docs.pytorch.org/cppdocs/api/stable/registration.html
Stable Operatorshttps://docs.pytorch.org/cppdocs/api/stable/operators.html
Utilitieshttps://docs.pytorch.org/cppdocs/api/stable/utilities.html
https://docs.pytorch.org/cppdocs/index.html
C++ API Referencehttps://docs.pytorch.org/cppdocs/api/index.html
CUDA Supporthttps://docs.pytorch.org/cppdocs/api/cuda/index.html
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#cuda-guards
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#cudaguard
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda9CUDAGuardE
DeviceGuardhttps://docs.pytorch.org/cppdocs/api/c10/guards.html#PyTorchclassc10_1_1_device_guard
DeviceGuardhttps://docs.pytorch.org/cppdocs/api/c10/guards.html#PyTorchclassc10_1_1_device_guard
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda9CUDAGuard9CUDAGuardEv
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda9CUDAGuard9CUDAGuardE11DeviceIndex
Devicehttps://docs.pytorch.org/cppdocs/api/c10/device.html#_CPPv4N3c106DeviceE
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda9CUDAGuard9CUDAGuardE6Device
CUDAGuardhttps://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda9CUDAGuard9CUDAGuardERK9CUDAGuard
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda9CUDAGuard9CUDAGuardERK9CUDAGuard
CUDAGuardhttps://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda9CUDAGuardE
CUDAGuardhttps://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda9CUDAGuardE
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda9CUDAGuardaSERK9CUDAGuard
CUDAGuardhttps://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda9CUDAGuard9CUDAGuardERR9CUDAGuard
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda9CUDAGuard9CUDAGuardERR9CUDAGuard
CUDAGuardhttps://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda9CUDAGuardE
CUDAGuardhttps://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda9CUDAGuardE
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda9CUDAGuardaSERR9CUDAGuard
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda9CUDAGuardD0Ev
Devicehttps://docs.pytorch.org/cppdocs/api/c10/device.html#_CPPv4N3c106DeviceE
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda9CUDAGuard10set_deviceE6Device
Devicehttps://docs.pytorch.org/cppdocs/api/c10/device.html#_CPPv4N3c106DeviceE
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda9CUDAGuard12reset_deviceE6Device
DeviceGuardhttps://docs.pytorch.org/cppdocs/api/c10/guards.html#PyTorchclassc10_1_1_device_guard
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda9CUDAGuard9set_indexE11DeviceIndex
Devicehttps://docs.pytorch.org/cppdocs/api/c10/device.html#_CPPv4N3c106DeviceE
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4NK3c104cuda9CUDAGuard15original_deviceEv
Devicehttps://docs.pytorch.org/cppdocs/api/c10/device.html#_CPPv4N3c106DeviceE
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4NK3c104cuda9CUDAGuard14current_deviceEv
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#cudastreamguard
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda15CUDAStreamGuardE
CUDAGuardhttps://docs.pytorch.org/cppdocs/api/cuda/guards.html#PyTorchstructc10_1_1cuda_1_1_c_u_d_a_guard
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda15CUDAStreamGuard15CUDAStreamGuardEv
Streamhttps://docs.pytorch.org/cppdocs/api/c10/streams.html#_CPPv4N3c106StreamE
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda15CUDAStreamGuard15CUDAStreamGuardE6Stream
Streamhttps://docs.pytorch.org/cppdocs/api/c10/streams.html#PyTorchclassc10_1_1_stream
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda15CUDAStreamGuardD0Ev
CUDAStreamGuardhttps://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda15CUDAStreamGuard15CUDAStreamGuardERK15CUDAStreamGuard
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda15CUDAStreamGuard15CUDAStreamGuardERK15CUDAStreamGuard
CUDAStreamGuardhttps://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda15CUDAStreamGuardE
CUDAStreamGuardhttps://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda15CUDAStreamGuardE
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda15CUDAStreamGuardaSERK15CUDAStreamGuard
CUDAStreamGuardhttps://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda15CUDAStreamGuard15CUDAStreamGuardERR15CUDAStreamGuard
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda15CUDAStreamGuard15CUDAStreamGuardERR15CUDAStreamGuard
CUDAStreamGuardhttps://docs.pytorch.org/cppdocs/api/cuda/guards.html#PyTorchstructc10_1_1cuda_1_1_c_u_d_a_stream_guard
CUDAStreamGuardhttps://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda15CUDAStreamGuardE
CUDAStreamGuardhttps://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda15CUDAStreamGuardE
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda15CUDAStreamGuardaSERR15CUDAStreamGuard
Streamhttps://docs.pytorch.org/cppdocs/api/c10/streams.html#_CPPv4N3c106StreamE
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda15CUDAStreamGuard12reset_streamE6Stream
CUDAMultiStreamGuardhttps://docs.pytorch.org/cppdocs/api/cuda/guards.html#PyTorchstructc10_1_1cuda_1_1_c_u_d_a_multi_stream_guard
CUDAStreamhttps://docs.pytorch.org/cppdocs/api/cuda/streams.html#_CPPv4N3c104cuda10CUDAStreamE
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4NK3c104cuda15CUDAStreamGuard15original_streamEv
CUDAStreamhttps://docs.pytorch.org/cppdocs/api/cuda/streams.html#_CPPv4N3c104cuda10CUDAStreamE
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4NK3c104cuda15CUDAStreamGuard14current_streamEv
Devicehttps://docs.pytorch.org/cppdocs/api/c10/device.html#_CPPv4N3c106DeviceE
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4NK3c104cuda15CUDAStreamGuard14current_deviceEv
Devicehttps://docs.pytorch.org/cppdocs/api/c10/device.html#_CPPv4N3c106DeviceE
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4NK3c104cuda15CUDAStreamGuard15original_deviceEv
reset_stream()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#PyTorchstructc10_1_1cuda_1_1_c_u_d_a_stream_guard_1a5bfaf7c01b9fc05bd44d6f934b68cbc0
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#optionalcudaguard
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda17OptionalCUDAGuardE
OptionalDeviceGuardhttps://docs.pytorch.org/cppdocs/api/c10/guards.html#PyTorchclassc10_1_1_optional_device_guard
CUDAGuardhttps://docs.pytorch.org/cppdocs/api/cuda/guards.html#PyTorchstructc10_1_1cuda_1_1_c_u_d_a_guard
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda17OptionalCUDAGuard17OptionalCUDAGuardEv
OptionalCUDAGuardhttps://docs.pytorch.org/cppdocs/api/cuda/guards.html#PyTorchstructc10_1_1cuda_1_1_optional_c_u_d_a_guard
Devicehttps://docs.pytorch.org/cppdocs/api/c10/device.html#_CPPv4N3c106DeviceE
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda17OptionalCUDAGuard17OptionalCUDAGuardENSt8optionalI6DeviceEE
Devicehttps://docs.pytorch.org/cppdocs/api/c10/device.html#PyTorchstructc10_1_1_device
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda17OptionalCUDAGuard17OptionalCUDAGuardENSt8optionalI11DeviceIndexEE
OptionalCUDAGuardhttps://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda17OptionalCUDAGuard17OptionalCUDAGuardERK17OptionalCUDAGuard
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda17OptionalCUDAGuard17OptionalCUDAGuardERK17OptionalCUDAGuard
OptionalCUDAGuardhttps://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda17OptionalCUDAGuardE
OptionalCUDAGuardhttps://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda17OptionalCUDAGuardE
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda17OptionalCUDAGuardaSERK17OptionalCUDAGuard
OptionalCUDAGuardhttps://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda17OptionalCUDAGuard17OptionalCUDAGuardERR17OptionalCUDAGuard
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda17OptionalCUDAGuard17OptionalCUDAGuardERR17OptionalCUDAGuard
OptionalCUDAGuardhttps://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda17OptionalCUDAGuardE
OptionalCUDAGuardhttps://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda17OptionalCUDAGuardE
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda17OptionalCUDAGuardaSERR17OptionalCUDAGuard
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda17OptionalCUDAGuardD0Ev
Devicehttps://docs.pytorch.org/cppdocs/api/c10/device.html#_CPPv4N3c106DeviceE
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda17OptionalCUDAGuard10set_deviceE6Device
Devicehttps://docs.pytorch.org/cppdocs/api/c10/device.html#_CPPv4N3c106DeviceE
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda17OptionalCUDAGuard12reset_deviceE6Device
OptionalDeviceGuardhttps://docs.pytorch.org/cppdocs/api/c10/guards.html#PyTorchclassc10_1_1_optional_device_guard
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda17OptionalCUDAGuard9set_indexE11DeviceIndex
Devicehttps://docs.pytorch.org/cppdocs/api/c10/device.html#_CPPv4N3c106DeviceE
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4NK3c104cuda17OptionalCUDAGuard15original_deviceEv
Devicehttps://docs.pytorch.org/cppdocs/api/c10/device.html#_CPPv4N3c106DeviceE
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4NK3c104cuda17OptionalCUDAGuard14current_deviceEv
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda17OptionalCUDAGuard5resetEv
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#optionalcudastreamguard
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda23OptionalCUDAStreamGuardE
CUDAGuardhttps://docs.pytorch.org/cppdocs/api/cuda/guards.html#PyTorchstructc10_1_1cuda_1_1_c_u_d_a_guard
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda23OptionalCUDAStreamGuard23OptionalCUDAStreamGuardEv
Streamhttps://docs.pytorch.org/cppdocs/api/c10/streams.html#_CPPv4N3c106StreamE
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda23OptionalCUDAStreamGuard23OptionalCUDAStreamGuardE6Stream
Streamhttps://docs.pytorch.org/cppdocs/api/c10/streams.html#PyTorchclassc10_1_1_stream
Streamhttps://docs.pytorch.org/cppdocs/api/c10/streams.html#_CPPv4N3c106StreamE
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda23OptionalCUDAStreamGuard23OptionalCUDAStreamGuardENSt8optionalI6StreamEE
OptionalCUDAStreamGuardhttps://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda23OptionalCUDAStreamGuard23OptionalCUDAStreamGuardERK23OptionalCUDAStreamGuard
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda23OptionalCUDAStreamGuard23OptionalCUDAStreamGuardERK23OptionalCUDAStreamGuard
OptionalCUDAStreamGuardhttps://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda23OptionalCUDAStreamGuardE
OptionalCUDAStreamGuardhttps://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda23OptionalCUDAStreamGuardE
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda23OptionalCUDAStreamGuardaSERK23OptionalCUDAStreamGuard
OptionalCUDAStreamGuardhttps://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda23OptionalCUDAStreamGuard23OptionalCUDAStreamGuardERR23OptionalCUDAStreamGuard
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda23OptionalCUDAStreamGuard23OptionalCUDAStreamGuardERR23OptionalCUDAStreamGuard
OptionalCUDAStreamGuardhttps://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda23OptionalCUDAStreamGuardE
OptionalCUDAStreamGuardhttps://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda23OptionalCUDAStreamGuardE
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda23OptionalCUDAStreamGuardaSERR23OptionalCUDAStreamGuard
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda23OptionalCUDAStreamGuardD0Ev
Streamhttps://docs.pytorch.org/cppdocs/api/c10/streams.html#_CPPv4N3c106StreamE
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda23OptionalCUDAStreamGuard12reset_streamE6Stream
CUDAStreamhttps://docs.pytorch.org/cppdocs/api/cuda/streams.html#_CPPv4N3c104cuda10CUDAStreamE
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4NK3c104cuda23OptionalCUDAStreamGuard15original_streamEv
CUDAStreamhttps://docs.pytorch.org/cppdocs/api/cuda/streams.html#_CPPv4N3c104cuda10CUDAStreamE
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4NK3c104cuda23OptionalCUDAStreamGuard14current_streamEv
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda23OptionalCUDAStreamGuard5resetEv
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#cudamultistreamguard
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda20CUDAMultiStreamGuardE
ArrayRefhttps://docs.pytorch.org/cppdocs/api/c10/types.html#_CPPv4I0EN3c108ArrayRefE
CUDAStreamhttps://docs.pytorch.org/cppdocs/api/cuda/streams.html#_CPPv4N3c104cuda10CUDAStreamE
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda20CUDAMultiStreamGuard20CUDAMultiStreamGuardE8ArrayRefI10CUDAStreamE
CUDAMultiStreamGuardhttps://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda20CUDAMultiStreamGuard20CUDAMultiStreamGuardERK20CUDAMultiStreamGuard
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda20CUDAMultiStreamGuard20CUDAMultiStreamGuardERK20CUDAMultiStreamGuard
CUDAMultiStreamGuardhttps://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda20CUDAMultiStreamGuardE
CUDAMultiStreamGuardhttps://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda20CUDAMultiStreamGuardE
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda20CUDAMultiStreamGuardaSERK20CUDAMultiStreamGuard
CUDAMultiStreamGuardhttps://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda20CUDAMultiStreamGuard20CUDAMultiStreamGuardERR20CUDAMultiStreamGuard
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda20CUDAMultiStreamGuard20CUDAMultiStreamGuardERR20CUDAMultiStreamGuard
CUDAMultiStreamGuardhttps://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda20CUDAMultiStreamGuardE
CUDAMultiStreamGuardhttps://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda20CUDAMultiStreamGuardE
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda20CUDAMultiStreamGuardaSERR20CUDAMultiStreamGuard
#https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda20CUDAMultiStreamGuardD0Ev
previous CUDA Streams https://docs.pytorch.org/cppdocs/api/cuda/streams.html
next CUDA Utility Functions https://docs.pytorch.org/cppdocs/api/cuda/utilities.html
PyData Sphinx Themehttps://pydata-sphinx-theme.readthedocs.io/en/stable/index.html
previous CUDA Streams https://docs.pytorch.org/cppdocs/api/cuda/streams.html
next CUDA Utility Functions https://docs.pytorch.org/cppdocs/api/cuda/utilities.html
CUDAGuardhttps://docs.pytorch.org/cppdocs/api/cuda/guards.html#cudaguard
c10::cuda::CUDAGuardhttps://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda9CUDAGuardE
CUDAGuard()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda9CUDAGuard9CUDAGuardEv
CUDAGuard()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda9CUDAGuard9CUDAGuardE11DeviceIndex
CUDAGuard()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda9CUDAGuard9CUDAGuardE6Device
CUDAGuard()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda9CUDAGuard9CUDAGuardERK9CUDAGuard
operator=()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda9CUDAGuardaSERK9CUDAGuard
CUDAGuard()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda9CUDAGuard9CUDAGuardERR9CUDAGuard
operator=()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda9CUDAGuardaSERR9CUDAGuard
~CUDAGuard()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda9CUDAGuardD0Ev
set_device()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda9CUDAGuard10set_deviceE6Device
reset_device()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda9CUDAGuard12reset_deviceE6Device
set_index()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda9CUDAGuard9set_indexE11DeviceIndex
original_device()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4NK3c104cuda9CUDAGuard15original_deviceEv
current_device()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4NK3c104cuda9CUDAGuard14current_deviceEv
CUDAStreamGuardhttps://docs.pytorch.org/cppdocs/api/cuda/guards.html#cudastreamguard
c10::cuda::CUDAStreamGuardhttps://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda15CUDAStreamGuardE
CUDAStreamGuard()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda15CUDAStreamGuard15CUDAStreamGuardEv
CUDAStreamGuard()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda15CUDAStreamGuard15CUDAStreamGuardE6Stream
~CUDAStreamGuard()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda15CUDAStreamGuardD0Ev
CUDAStreamGuard()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda15CUDAStreamGuard15CUDAStreamGuardERK15CUDAStreamGuard
operator=()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda15CUDAStreamGuardaSERK15CUDAStreamGuard
CUDAStreamGuard()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda15CUDAStreamGuard15CUDAStreamGuardERR15CUDAStreamGuard
operator=()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda15CUDAStreamGuardaSERR15CUDAStreamGuard
reset_stream()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda15CUDAStreamGuard12reset_streamE6Stream
original_stream()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4NK3c104cuda15CUDAStreamGuard15original_streamEv
current_stream()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4NK3c104cuda15CUDAStreamGuard14current_streamEv
current_device()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4NK3c104cuda15CUDAStreamGuard14current_deviceEv
original_device()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4NK3c104cuda15CUDAStreamGuard15original_deviceEv
OptionalCUDAGuardhttps://docs.pytorch.org/cppdocs/api/cuda/guards.html#optionalcudaguard
c10::cuda::OptionalCUDAGuardhttps://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda17OptionalCUDAGuardE
OptionalCUDAGuard()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda17OptionalCUDAGuard17OptionalCUDAGuardEv
OptionalCUDAGuard()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda17OptionalCUDAGuard17OptionalCUDAGuardENSt8optionalI6DeviceEE
OptionalCUDAGuard()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda17OptionalCUDAGuard17OptionalCUDAGuardENSt8optionalI11DeviceIndexEE
OptionalCUDAGuard()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda17OptionalCUDAGuard17OptionalCUDAGuardERK17OptionalCUDAGuard
operator=()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda17OptionalCUDAGuardaSERK17OptionalCUDAGuard
OptionalCUDAGuard()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda17OptionalCUDAGuard17OptionalCUDAGuardERR17OptionalCUDAGuard
operator=()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda17OptionalCUDAGuardaSERR17OptionalCUDAGuard
~OptionalCUDAGuard()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda17OptionalCUDAGuardD0Ev
set_device()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda17OptionalCUDAGuard10set_deviceE6Device
reset_device()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda17OptionalCUDAGuard12reset_deviceE6Device
set_index()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda17OptionalCUDAGuard9set_indexE11DeviceIndex
original_device()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4NK3c104cuda17OptionalCUDAGuard15original_deviceEv
current_device()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4NK3c104cuda17OptionalCUDAGuard14current_deviceEv
reset()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda17OptionalCUDAGuard5resetEv
OptionalCUDAStreamGuardhttps://docs.pytorch.org/cppdocs/api/cuda/guards.html#optionalcudastreamguard
c10::cuda::OptionalCUDAStreamGuardhttps://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda23OptionalCUDAStreamGuardE
OptionalCUDAStreamGuard()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda23OptionalCUDAStreamGuard23OptionalCUDAStreamGuardEv
OptionalCUDAStreamGuard()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda23OptionalCUDAStreamGuard23OptionalCUDAStreamGuardE6Stream
OptionalCUDAStreamGuard()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda23OptionalCUDAStreamGuard23OptionalCUDAStreamGuardENSt8optionalI6StreamEE
OptionalCUDAStreamGuard()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda23OptionalCUDAStreamGuard23OptionalCUDAStreamGuardERK23OptionalCUDAStreamGuard
operator=()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda23OptionalCUDAStreamGuardaSERK23OptionalCUDAStreamGuard
OptionalCUDAStreamGuard()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda23OptionalCUDAStreamGuard23OptionalCUDAStreamGuardERR23OptionalCUDAStreamGuard
operator=()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda23OptionalCUDAStreamGuardaSERR23OptionalCUDAStreamGuard
~OptionalCUDAStreamGuard()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda23OptionalCUDAStreamGuardD0Ev
reset_stream()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda23OptionalCUDAStreamGuard12reset_streamE6Stream
original_stream()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4NK3c104cuda23OptionalCUDAStreamGuard15original_streamEv
current_stream()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4NK3c104cuda23OptionalCUDAStreamGuard14current_streamEv
reset()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda23OptionalCUDAStreamGuard5resetEv
CUDAMultiStreamGuardhttps://docs.pytorch.org/cppdocs/api/cuda/guards.html#cudamultistreamguard
c10::cuda::CUDAMultiStreamGuardhttps://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda20CUDAMultiStreamGuardE
CUDAMultiStreamGuard()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda20CUDAMultiStreamGuard20CUDAMultiStreamGuardE8ArrayRefI10CUDAStreamE
CUDAMultiStreamGuard()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda20CUDAMultiStreamGuard20CUDAMultiStreamGuardERK20CUDAMultiStreamGuard
operator=()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda20CUDAMultiStreamGuardaSERK20CUDAMultiStreamGuard
CUDAMultiStreamGuard()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda20CUDAMultiStreamGuard20CUDAMultiStreamGuardERR20CUDAMultiStreamGuard
operator=()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda20CUDAMultiStreamGuardaSERR20CUDAMultiStreamGuard
~CUDAMultiStreamGuard()https://docs.pytorch.org/cppdocs/api/cuda/guards.html#_CPPv4N3c104cuda20CUDAMultiStreamGuardD0Ev
Show Source https://docs.pytorch.org/cppdocs/_sources/api/cuda/guards.md.txt
ExecuTorchhttps://docs.pytorch.org/executorch
Helionhttps://docs.pytorch.org/helion
torchaohttps://docs.pytorch.org/ao
kinetohttps://github.com/pytorch/kineto
torchtitanhttps://github.com/pytorch/torchtitan
TorchRLhttps://docs.pytorch.org/rl
torchvisionhttps://docs.pytorch.org/vision
torchaudiohttps://docs.pytorch.org/audio
tensordicthttps://docs.pytorch.org/tensordict
PyTorch on XLA Deviceshttps://docs.pytorch.org/xla
View Docshttps://docs.pytorch.org/docs/stable/index.html
View Tutorialshttps://docs.pytorch.org/tutorials
View Resourceshttps://pytorch.org/resources
Privacy Policyhttps://www.linuxfoundation.org/privacy/
https://www.facebook.com/pytorch
https://twitter.com/pytorch
https://www.youtube.com/pytorch
https://www.linkedin.com/company/pytorch
https://pytorch.slack.com
https://pytorch.org/wechat
Policieshttps://www.linuxfoundation.org/legal/policies
Trademark Usagehttps://www.linuxfoundation.org/trademark-usage
Privacy Policyhttp://www.linuxfoundation.org/privacy
Cookies Policyhttps://opensource.fb.com/legal/cookie-policy
Sphinxhttps://www.sphinx-doc.org/
PyData Sphinx Themehttps://pydata-sphinx-theme.readthedocs.io/en/stable/index.html

Viewport: width=device-width, initial-scale=1


URLs of crawlers that visited me.