PR #28 added distance tracking on stack to the ray traversal kernels. When trying to use cuBQL in our own downstream app (XDG) which is making use of the OpenMP BVH builder and ShrinkingRayTraversal template the changes made in #28 cause rays that would previously return correct hits to now return misses.
Disabling the distance tracking by setting this line to #define CUBQL_DIST_STACK 0 resolves the issue and i get the expected successful ray hits again. I'm not sure about how to fix it for OpenMP traversal as clearly there is no issue when using the CUDA backend. But in the absence of an actual fix, perhaps the ability to toggle on or off CUBQL_DIST_STACK would be helpful to ensure that OpenMP runtimes can still work?
PR #28 added distance tracking on stack to the ray traversal kernels. When trying to use cuBQL in our own downstream app (XDG) which is making use of the OpenMP BVH builder and
ShrinkingRayTraversaltemplate the changes made in #28 cause rays that would previously return correct hits to now return misses.Disabling the distance tracking by setting this line to
#define CUBQL_DIST_STACK 0resolves the issue and i get the expected successful ray hits again. I'm not sure about how to fix it for OpenMP traversal as clearly there is no issue when using the CUDA backend. But in the absence of an actual fix, perhaps the ability to toggle on or offCUBQL_DIST_STACKwould be helpful to ensure that OpenMP runtimes can still work?