OPTIX_COMPILE_DEBUG_LEVEL_FULL and OPTIX_COMPILE_DEBUG_LEVEL_FULL incompatible with new drivers

Hi,

I am a developer of the Mitsuba 2 renderer and I have just recently upgraded my system / GPU driver in order to work with Optix 7.1.0.

Before making any changes, I wanted to double check that our current codebase still runs with the latest driver. It is compiled with the Optix 7.0.0 header (OPTIX_VERSION 70000, OPTIX_ABI_VERSION 22).

When running some of our tests in DEBUG mode, I get the following error:

COMPILE ERROR: Debug level OPTIX_COMPILE_DEBUG_LEVEL_FULL requires optimization level OPTIX_COMPILE_OPTIMIZATION_LEVEL_0.

which is thrown by the call to optixModuleCreateFromPTX:

... 
OptixModuleCompileOptions module_compile_options = {};
module_compile_options.optLevel   = OPTIX_COMPILE_OPTIMIZATION_LEVEL_0;
module_compile_options.debugLevel = OPTIX_COMPILE_DEBUG_LEVEL_FULL;
...

rt_check(optixModuleCreateFromPTX(
        context,
        &module_compile_options,
        &pipeline_compile_options,
        (const char *)optix_rt_ptx,
        optix_rt_ptx_size,
        optix_log_buffer,
        &optix_log_buffer_size,
        &module
    ));

Looking at the Optix 7.1.0 release notes, I noticed that the values of those enum have changed. Although I expected to still be able to run our codebase compiled for Optix 7.0.0 with the latest driver.

Could you please let me know if the changes made on those enums necessitate some changes in our codebase even for the older version of Optix. Or is this a bug in the driver itsefl?

Thanks!

Yes, that’s a known issue introduced in recent drivers. It should be fixed in upcoming drivers again.

As workaround you could use debugLevel = OPTIX_COMPILE_DEBUG_LEVEL_INEINFO or a different optimization level.
There isn’t too much useful debug info except for the line info remaining in the current final kernels, which is something also being worked on.

I have just recently upgraded my system / GPU driver in order to work with Optix 7.1.0.

Hmm, bad timing? ;-)
On the OptiX download site the OptiX SDK 7.2.0 is already announced to happen this week and that requires a newer display driver. Not sure if the fix already made it into that.
Tomorrow is a GTC presentation about new features in OptiX 7.2.0.

Thanks for your quick response.

We will go with this workaround for now.

Looking forward to hear more about OptiX 7.2.0!