Uh oh!
There was an error while loading. Please reload this page.
Support for NVRTC kernels - #138
Conversation
Signed-off-by: Tim Moon <tmoon@nvidia.com>
NVRTC gives compilation errors at runtime. Everything else compiles and passes tests as expected. Signed-off-by: Tim Moon <tmoon@nvidia.com>
NVRTC kernel compiles, runs, and passes tests with FP32. Signed-off-by: Tim Moon <tmoon@nvidia.com>
Signed-off-by: Tim Moon <tmoon@nvidia.com>
Added utility header for CUDA Runtime API. Optimized concat_strings function. Signed-off-by: Tim Moon <tmoon@nvidia.com>
Signed-off-by: Tim Moon <tmoon@nvidia.com>
Signed-off-by: Tim Moon <tmoon@nvidia.com>
Signed-off-by: Tim Moon <tmoon@nvidia.com>
…UDA header dir Signed-off-by: Tim Moon <tmoon@nvidia.com>
Signed-off-by: Tim Moon <tmoon@nvidia.com>
Signed-off-by: Tim Moon <tmoon@nvidia.com>
Signed-off-by: Tim Moon <tmoon@nvidia.com>
Signed-off-by: Tim Moon <tmoon@nvidia.com>
Signed-off-by: Tim Moon <tmoon@nvidia.com>
| # See LICENSE for license information. | ||
| # Function to convert file to C++ header with string | ||
| function(convert_file_to_string_header file_ string_header string_name) |
Signed-off-by: Tim Moon <tmoon@nvidia.com>
Signed-off-by: Tim Moon <tmoon@nvidia.com>
Evaluating FP8 transposes on an H100 SXM for square matrices with nice dims (power of two or halfway between powers of two) and ugly dims (primes 20, 40, ..., 400): The NVRTC kernel gets better performance than the baseline with small sizes (dim<2k), although we are clearly hitting up against kernel launch overheads. I do observe a ~1% perf regression at large scale though. We see the generalized implementation gets much worse perf than the NVRTC kernel, likely due to the large amount of bounds checking, but the baseline implementation doesn't support these sizes at all. |
Uh oh!
There was an error while loading. Please reload this page.
Signed-off-by: Tim Moon <tmoon@nvidia.com>
Review suggestion from @nouiz Signed-off-by: Tim Moon <tmoon@nvidia.com>
Signed-off-by: Tim Moon <tmoon@nvidia.com>
Signed-off-by: Tim Moon <tmoon@nvidia.com>
Signed-off-by: Tim Moon <tmoon@nvidia.com>
Signed-off-by: Tim Moon <tmoon@nvidia.com>
Signed-off-by: Tim Moon <tmoon@nvidia.com>
Signed-off-by: Tim Moon <tmoon@nvidia.com>
Signed-off-by: Tim Moon <tmoon@nvidia.com>
Signed-off-by: Tim Moon <tmoon@nvidia.com>
Signed-off-by: Tim Moon <tmoon@nvidia.com>
Signed-off-by: Tim Moon <tmoon@nvidia.com>
Signed-off-by: Tim Moon <tmoon@nvidia.com>
timmoon10
commented
Apr 26, 2023
/te-ci |
Signed-off-by: Tim Moon <tmoon@nvidia.com>
timmoon10
commented
May 13, 2023
/te-ci |
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Check build-time CUDA include path for run-time CUDA headers. Handle case where CUDA context is initially uninitialized. Signed-off-by: Tim Moon <tmoon@nvidia.com>
timmoon10
commented
May 17, 2023
/te-ci |


This PR adds basic support for run-time compilation of kernels with the goals of reducing binary size, reducing compilation time, and enabling more configurable kernel optimizations.
Changes:
transposeusing similar perf optimizations as Use 4B vector loads/stores in cast-transpose kernel for small matrices #101Tasks:
Future work: