HI,@saudet
Issue Description
First of all, javacpp-cuda runs excellently and provides very friendly support for CUDA kernel function calls — it’s an incredibly useful and reliable tool for Java-based CUDA development!
I’m currently planning to implement a Java version of the CUDA DSL Triton based on javacpp-cuda. However, I’ve encountered a critical limitation: many core CUDA handle classes in javacpp-cuda only have constructors exposed, and most of their essential class API functions are not publicly accessible.
This blocks the development of advanced CUDA-based DSLs in Java, as we need full access to the native CUDA APIs for these core types.
Request
Please expose all common and critical API functions for the following core CUDA handle classes in javacpp-cuda:
CUmod_st (CUDA module)
CUfunc_st (CUDA function/kernel)
CUctx_st (CUDA context)
CUstream_st (CUDA stream)
_nvrtcProgram (NVRTC program)
These are fundamental types for low-level CUDA and NVRTC operations, and full API exposure is essential for building Java-based CUDA DSLs (like Triton) and advanced heterogeneous computing applications.
Use Case
This API expansion will enable:
Full Java-side implementation of the CUDA Triton DSL
Advanced control of CUDA modules, functions, contexts, streams, and NVRTC programs from Java
Broader application of javacpp-cuda in high-performance computing and GPU programming scenarios
Thank you for your great work on javacpp-cuda! Exposing these core APIs will greatly unlock its potential for advanced CUDA development in Java.
HI,@saudet
Issue Description
First of all, javacpp-cuda runs excellently and provides very friendly support for CUDA kernel function calls — it’s an incredibly useful and reliable tool for Java-based CUDA development!
I’m currently planning to implement a Java version of the CUDA DSL Triton based on javacpp-cuda. However, I’ve encountered a critical limitation: many core CUDA handle classes in javacpp-cuda only have constructors exposed, and most of their essential class API functions are not publicly accessible.
This blocks the development of advanced CUDA-based DSLs in Java, as we need full access to the native CUDA APIs for these core types.
Request
Please expose all common and critical API functions for the following core CUDA handle classes in javacpp-cuda:
CUmod_st (CUDA module)
CUfunc_st (CUDA function/kernel)
CUctx_st (CUDA context)
CUstream_st (CUDA stream)
_nvrtcProgram (NVRTC program)
These are fundamental types for low-level CUDA and NVRTC operations, and full API exposure is essential for building Java-based CUDA DSLs (like Triton) and advanced heterogeneous computing applications.
Use Case
This API expansion will enable:
Full Java-side implementation of the CUDA Triton DSL
Advanced control of CUDA modules, functions, contexts, streams, and NVRTC programs from Java
Broader application of javacpp-cuda in high-performance computing and GPU programming scenarios
Thank you for your great work on javacpp-cuda! Exposing these core APIs will greatly unlock its potential for advanced CUDA development in Java.