| 148 | } |
| 149 | |
| 150 | void Launch() |
| 151 | { |
| 152 | if (!capture_ok || !instance) { |
| 153 | return; |
| 154 | } |
| 155 | auto err = cudaGraphLaunch(instance, ngs_cuda_stream); |
| 156 | if (err != cudaSuccess) |
| 157 | std::cerr << "[CudaGraph] cudaGraphLaunch FAILED: " |
| 158 | << cudaGetErrorString(err) << std::endl; |
| 159 | } |
| 160 | |
| 161 | bool IsValid() const { return capture_ok && instance != nullptr; } |
| 162 | cudaGraph_t GetGraph() const { return graph; } |