| bird | https://twitter.com/sunitram |
| git | https://github.com/martinus |
| web | https://martin.ankerl.com |
| bird | https://twitter.com/sunitram |
| git | https://github.com/martinus |
| web | https://martin.ankerl.com |
I have a problem with benchmarking in Linux. It uses lots of threads, and benchmark results fluctuate a lot. This seems to be caused by Address Space Layout Randomization (ASLR), when I disable it I get very consistent benchmark results. The graph shows two histograms of the runtimes of multiple runs.
Can any Linux / C++ / Intel expert explain why ASLR can have such a huge impact? #cpp #linux #intel
All done on an intel i7, kernel 6.0.15-300.fc37.x86_64
Working on an alternative std::vector implementation that's not contiguous and can be the base for my ankerl::unordered_dense::map. https://github.com/martinus/unordered_dense
The big advantage is it doesn't have allocation spikes. Surprisingly, insertion is faster because no elements have to be moved around #cpp