Skip to content

Latest commit

 

History

History
31 lines (26 loc) · 1.89 KB

howtobenchmark.md

File metadata and controls

31 lines (26 loc) · 1.89 KB

How to benchmark

Producing stable performance results is a quite tricky task. First of all, make sure that (all points are critical for stable performance results):

  • The computer you are using is as much clean as possible. No browser is running, no background updates, no deamons / services (like databases, antivirus, background email fetching and so on).
  • There is no other users logged in to the computer.
  • Intel SpeedStep / SpeedShift / Turbo technologies are turned off (check your BIOS settings).
  • Disable CPU scaling (instructions)
  • You are NOT running from Visual Studio or another IDE (open separate console).
  • The benchmark process is pinned to a single CPU core and this is not #0 core. It is important to get rid of task switching between CPU cores, so pin your process. In some systems OS preferably occupies core #0, benchmark should avoid to struggle with OS for resources. For windows follow this instructions to pin process to core. For linux use taskset and KMP_AFFINITY.
  • Disable address space layout randomization
  • Align code during compile time or runtime.
echo 0 | sudo tee /proc/sys/kernel/randomize_va_space
  • It is preferable to use runlevel 1 for linux systems to make sure that no services is running and no more users is connected.

additional links: