Gregory Kramida
Gregory Kramida
The conditions for computing different level set alignment terms (and to use voxel at all) must be configurable instead of preprocessor-controlled to enable tuning.
Confirm that exact comparison failure for line 193 (currently, commented) of Test_WarpGradient_CUDA_VBH is caused by numerical discrepancies between CPU & CUDA, nothing more.
This would mean that if we keep SDF units as 1.0 = 10 voxels, we would need to adjust the grid spacing accordingly.
Static methods of classes in Traversal and Reduction APIs should all accept lambdas or functions directly instead of function objects / functors.
Warp gradient functors should use cache on a firstprivate basis with OpenMP for all voxel/warp access operations.
nstead of making "partial" specialized templated classes, rely on template-driven if conditions and compiler optimizations in "primary" templated engine classes.
[This is a non-critical, composite issue, meant to be done gradually, over time, and via other issues as well] Create separate issues for some of these and address one at...
CPU compilation should be optional. Some people will only need to use the CUDA version.
Metacoding should probably offer its own namespace instead of polluting the global namespace with various functions. It's not entirely clear what to do with templated functions yet, but one potential...
This gets rid of yet another Boost library, the Boost.Test library -- extremely outdated and archaic, albeit very stable - in favor of a much newer and feature-complete Catch2 framework...