Replies: 2 comments
-
Sounds like a great idea! I've used this in my PhD project code and I've found that these mircobenchmarks often double as integration tests. For instance, a benchmark where you evaluate a right-hand side vector and Jacobian is a nice example test that let's you exercise core parts of the code and at the same time measures the performance of such a fundamental building block. I even generated some plots for papers directly from this output. For me personally, I believe this would be very helpful to quantify bottlenecks in 4C and see if we can improve them with a better discretization design/deal.II (see #506). edit: I added the link to googlebenchmark to your post. |
Beta Was this translation helpful? Give feedback.
-
Moved to #611 |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Every once in a while, I want to micro-benchmark some submodules in 4C (Currently #583). I either use quick-bench.com (often annyoing to copy all needed code snippets and sometimes even impossible), or I have a local patch that adds Google Benchmark to 4C (often annoying to get the old patch to work).
I would suggest add Google Benchmark infrastructure in 4C (similar to unit tests) and run the benchmark in ctest (with some option to reduce the number of iterations). Running the benchmarks is not for monitoring performance (rather difficult to achieve in the CI), but only for testing that everything works.
Any thoughts on this?
https://github.com/google/benchmark
Beta Was this translation helpful? Give feedback.
All reactions