Updating the readme file
gitea.matetelki.eu/performance_measuring/master This commit looks good
Details
gitea.matetelki.eu/performance_measuring/master This commit looks good
Details
parent
e10718bcbc
commit
cc2003cf25
@ -1,3 +1,31 @@
|
||||
# performance_measuring
|
||||
|
||||
Scripts and tools to measure performance.
|
||||
Scripts and tools to measure performance.
|
||||
|
||||
This repo meant to be a sandbox.
|
||||
|
||||
## The tested dummy algorithm
|
||||
|
||||
The measured algorithms are 3 variations on *counting the smallest element in a array*.
|
||||
|
||||
* C style, count-as-go: O(n)
|
||||
* C++ `std::min_element` then `std::count`: O(n) + O(n)
|
||||
* C++ `std::sort` then `std::upper_bound`: O(n log n) + O(n)
|
||||
|
||||
## Environment
|
||||
|
||||
The array contains 10k randomly generated integers [0, 1000].
|
||||
|
||||
The machine which generated the results is an [Intel NUC 7CJYH](https://www.intel.com/content/www/us/en/products/boards-kits/nuc/kits/nuc7cjyh.html).
|
||||
|
||||
## Catch2's benchmarking tools
|
||||
|
||||
Using [catch2](https://github.com/catchorg/Catch2), an example output of `performance_measuring_test`:
|
||||
|
||||
![tests.png](https://jenkins.matetelki.eu/job/gitea.matetelki.eu/job/performance_measuring/job/master/lastSuccessfulBuild/artifact/tests.png)
|
||||
|
||||
## Flamegraph
|
||||
|
||||
An interactive [flamegraph](https://github.com/brendangregg/FlameGraph) can be generated to visualize [perf](http://www.brendangregg.com/perf.html)'s measurements, where the callgraph can be traversed.
|
||||
|
||||
![flamegraph.svg](https://jenkins.matetelki.eu/job/gitea.matetelki.eu/job/performance_measuring/job/master/lastSuccessfulBuild/artifact/flamegraph.svg)
|
||||
|
Loading…
Reference in new issue