我有一个 MATLAB mex 库,可以在运行时加载特定于问题的 cubin 文件。这个 mex 函数被 MATLAB 调用了几百次。当我调用 cuModuleLoad 时,CUDA 是否每次都重新加载内核?还是以某种方式缓存?如果没有,有没有办法在两者之间保留加载的模块?我目前没有调用 cuModuleUnload。
似乎 CUDA 上下文只为 MATLAB 进程创建了一次,因为只有第一次调用库很慢。随后对 mex 库的 matlab 函数调用速度很快。所以我想我可以假设相同的 CUDA 上下文正在被重用。