[libc-commits] [libc] [libc] Add Kernel Resource Usage to nvptx-loader (PR #97503)

via libc-commits libc-commits at lists.llvm.org
Sun Jul 14 18:12:56 PDT 2024


================
@@ -229,6 +229,43 @@ CUresult launch_kernel(CUmodule binary, CUstream stream,
   return CUDA_SUCCESS;
 }
 
+void print_kernel_resources(CUmodule binary, const char *kernel_name) {
+  CUfunction function;
+  if (CUresult err = cuModuleGetFunction(&function, binary, kernel_name))
+    handle_error(err);
+  int num_regs;
+  if (CUresult err =
+          cuFuncGetAttribute(&num_regs, CU_FUNC_ATTRIBUTE_NUM_REGS, function))
+    handle_error(err);
+  printf("%6s registers: %d\n", kernel_name, num_regs);
+}
+
+void print_resources(void *image) {
----------------
jameshu15869 wrote:

Ah, so you still want kernels to launch normally, right? I think I misinterpreted one of your other comments and made this a separate thing (e.g. `nvptx-loader --print-resource-usage` just prints the registers without running the kernel

https://github.com/llvm/llvm-project/pull/97503


More information about the libc-commits mailing list