In the video (of Fall GTC) referenced in this post:
on “Curve Adaptive Splitting” for the flags
OPTIX_BUILD_FLAG_PREFER_FAST_TRACE and OPTIX_BUILD_FLAG_PREFER_FAST_BUILD
as exception only this flag :
OPTIX_BUILD_FLAG_ALLOW_UPDATE is specified and nothing on them in the docs Types
I tried out both “Curve Adaptive Splitting” settings on curves in my OptiX7.4-based Win10-App using OPTIX_BUILD_FLAG_ALLOW_COMPACTION.
With OPTIX_BUILD_FLAG_PREFER_FAST_TRACE everything succeeds,
but when using OPTIX_BUILD_FLAG_PREFER_FAST_BUILD
in OptixAccelBuildOptions.buildFlags on creating a GAS it fails
in both cases (with and without compaction):
[ERROR]: Error recording event to prevent concurrent launches on the same OptixPipeline (CUDA error string: misaligned address, CUDA error code: 716)
Error recording resource event on user stream (CUDA error string: misaligned address, CUDA error code: 716)
Optix call (optixLaunch( state.pipeline, state.stream, reinterpret_cast(state.d_params), sizeof(Params), &state.sbt, (int)image_width, (int)image_height, 1 )) failed with code 7900 (line 6884)
But if flag OPTIX_BUILD_FLAG_PREFER_FAST_BUILD is not set, then it succeeds
with and without compaction.
Is this a limitation ? or maybe its a misconception in my code?
With “succeed” I mean, that the intersection types linear, quadratic, and cubic build, run and give same visual output as on OptiX 7.3.0 (yet I only use test colors)
My System: OptiX 7.4.0 SDK CUDA 11.4.3 GTX 1050 2GB Win10PRO 64bit (version 21H1; build 19043.1237) 8GB RAM device driver: 512.15 VS2019 v16.11.13 (toolkit v142) MDL SDK 2020.1.2 Windows SDK 10.0.19041.0