禁用 CUDA PTX 到二进制 JIT 编译

Disable CUDA PTX-to-binary JIT compilation

有没有办法在 运行 应用程序时禁用 PTX 代码到 GPU 程序集的即时编译?

在某些情况下,人们希望 运行 支持 GPU 的应用程序处于 CPU-only 模式。如果应用程序足够大,并且它是该版本可执行文件的第一个 运行,则 JIT 过程可能需要很长时间(在我公司的 CI/CD 个案例中很常见)

CUDA 运行时将遵循 environment variable 来确定 PTX JIT 是否会发生。以下应防止代码中出现任何 JIT activity:

CUDA_DISABLE_PTX_JIT=1 ./my_executable