Hey folks. I’ve fiddled around with modifying OptiX examples in various places in the past, but I’m creating my first from-scratch OptiX 7-based renderer.
Going off of the various SDK examples, I’ve pieced together something that tries to do the following:
createContext(); buildAccelStructures(); createModules(); createProgramGroups(); createPipeline(); createShaderBindingTable();
I aggresively check for errors on every OptiX call, and there appear to be no problems leading up to createPipeline, where optixPipelineCreate fails with error 7251 (Pipeline Link Error). I am printing logs associated with all applicable calls as well, and don’t see any actionable feedback.
Here is the sum total of all the logs I get:
[ KNOBS]: All knobs on default.
[ 4][ DISK CACHE]: Opened database: “/var/tmp/OptixCache_bbudge/cache7.db”
[ 4][ DISK CACHE]: Cache data size: “865.3 KiB”
[ 4][ DISKCACHE]: Cache hit for key: ptx-3276-keycb2650c8fac8c52f6f29923d9b42165c-sm_75-rtc1-drv450.57
[ 4][ DISKCACHE]: Cache hit for key: ptx-97173-key36914a701f564668683c332351ea2f74-sm_75-rtc1-drv450.57
[ 2][COMPILE FEEDBACK]: COMPILE ERROR: failed to create pipeline
Info: Pipeline has 2 module(s), 4 entry function(s), 2 trace call(s), 0 continuation callable call(s), 0 direct callable call(s), 136 basic block(s) in entry functions, 2577 instruction(s) in entry functions, 14 non-entry function(s), 84 basic block(s) in non-entry functions, 1268 instruction(s) in non-entry functions
F1215 12:02:50.397285 172993024 OptiXRenderer.cpp:222] Check failed: resultCode == OPTIX_SUCCESS (7251 vs. 0) Pipeline link error
*** Check failure stack trace: ***
What would be a good strategy for narrowing down the bug?