The timer class currently performs non-atomic operations, which leads to issues when using multi-threading within the library, for example with openMP tasks. Making the operations atomic or somehow building per-thread timing constructs should mitigate this problem.
Here's one of the errors I get:
blr-lu-exp3d: /home/acb10922qh/gitrepos/useful-tsubame-benchmarks/hmatrix-benchmarks/hicma-yokotalab/src/util/timer.cpp:73: void hicma::timing::Timer::start(): Assertion `!running' failed.
The timer class currently performs non-atomic operations, which leads to issues when using multi-threading within the library, for example with openMP tasks. Making the operations atomic or somehow building per-thread timing constructs should mitigate this problem.
Here's one of the errors I get: