This directory contains examples of using google-benchmark to benchmark functions.
One routine can be used to run a family of benchmarks by passing in a range of
arguments through the benchmarking state. In the render_benchmark.cc
example,
arguments are used to vary the number of spheres rendered, the number of cameras
in the scene, and the image dimensions. For more info see:
https://github.com/google/benchmark#passing-arguments
By default google-benchmark outputs times in nanoseconds. In the
render_benchmark.cc
example it is manually set to milliseconds. For more info
see: https://github.com/google/benchmark#setting-the-time-unit.
Fixtures can be used in a similar fashion to gtest. In the
render_benchmark.cc
example it is used for common render set up. For more
info see: https://github.com/google/benchmark#fixtures.
- render_benchmark.cc: Benchmark program to help characterize the relative costs of different RenderEngine implementations with varying scene complexity and rendering. It is designed so users can assess the relative cost of the renderers on their own hardware configuration, aiding in design decisions for understanding the cost of renderer choice.
- mesh_intersection_benchmark.cc: Benchmark program to evaluate bounding volume hierarchy impact on mesh-mesh intersections across varying mesh attributes and overlaps. It is targeted toward developers during the process of optimizing the performance of hydroelastic contact and may be removed once sufficient work has been done in that effort.