Skip to content

feat: improve trace setup reuse and benchmarking support - #102

Merged
tobre1 merged 15 commits into
mainfrom
benchmark
Sep 1, 2026
Merged

tobre1 merged 15 commits into
mainfrom
benchmark

Conversation

@tobre1

@tobre1 tobre1 commented Sep 1, 2026

Copy link
Copy Markdown
Member
  • Add explicit commitGeometry() support for CPU disk and triangle tracing, with cached Embree scene/boundary setup and invalidation when geometry, boundary conditions, or source direction change.
  • Improve tracing performance by removing virtual geometry dispatch, templating the trace kernel on concrete geometry types, using stack-backed disk hit storage, and parallelizing output reductions.
  • Add configurable max backface-hit handling and expose new trace statistics for backface hits and average disk hits.
  • Fix free-flight scattering by sampling and updating a physical free-flight distance across ray segments.
  • Add GPU benchmarking support behind VIENNARAY_BENCHMARK, including trace-count tracking APIs and CMake/OptiX rebuild plumbing.
  • Split source generation into separate getOrigin() and getDirection() APIs, and update tests/examples accordingly.

@tobre1
tobre1 merged commit 537f368 into main Sep 1, 2026
6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant