clovers icon indicating copy to clipboard operation
clovers copied to clipboard

Feature: gather statistics during a render job

Open Walther opened this issue 1 year ago • 0 comments

It would be nice to be able to optionally collect some statistics during a render job.

This could include for example:

  • Time spent at various stages; parsing, initializing, rendering, post-processing
  • Memory usage, allocations and deallocations
  • Counts of certain method calls
  • Counts of rays, objects, acceleration structure details

One promising option for this could be Apache Arrow for the in-memory representation and Parquet for serialization. This could have low overhead at runtime and excellent tooling support for querying and analyzing after serialization to disk.

Another option to consider is leaning more into OpenTelemetry and tracing, creating spans. This would have good support in the observability tooling, including waterfall graphs and seeing the nesting levels. On the other hand, this might be a bad match for a software with such a high event count.

Walther avatar Dec 22 '24 11:12 Walther