Back to the benchmarking per commit.

So currently I have fired a community TeamCity Edition here 
http://arrow-publi-1wwtu5dnaytn9-2060566241.us-east-1.elb.amazonaws.com and 
dedicated pool of two Skylake bare metal machines (Intel(R) Core(TM) i7-6700 
CPU @ 3.40GHz) This can go to up to 4 if needed. 
Then the machines are prepared for benchmarking in the following way:
- In BIOS/Setup power saving features are disabled
- Machines are locked for access using pam_access
- Max frequency is set through  cpupower  and in /etc/sysconfig/cpupower
- All services that are not needed switched off: > uptime 23:15:17 up 26 days, 
23:24,  1 user,  load average: 0.00, 0.00, 0.00
- Transparent huge pages set on demand cat 
/sys/kernel/mm/transparent_hugepage/enabled
always [madvise] never
- audit control switched off auditctl -e 0
- Memory clean added to launch scripts echo 3 > /proc/sys/vm/drop_caches
- pstate=disable added to the kernel config

This config is giving relatively clean and not noisy machine. 
Commits in master trigger build and ctest -L benchmarks. Output is parsed.

What is missing:
* Where should our Codespeed database reside? I can fire-up a VM and put it 
there, or if you have other preferences let's discuss.
* What address should it have?
* How to make it available to all developers? Do we want to integrate into CI 
or not?
* What is the standard benchmark output? I suppose Googlebench, but lets state 
that.
* My interest is the C++ benchmarks only for now. Do we need to track all 
benchmarks?
* What is the process of adding benchmarks? 

Anything else for short term?

-Areg.





Reply via email to