Hi GCC devs,

In LLVM we have been carrying out nightly runs of SPEC CPU 2017 and 
llvm-test-suite[1] for Clang on RISC-V hardware. We’ve been using it to find 
areas of improvement and to track performance regressions. 

Recently we've also extended it to build and test GCC nightly, which is 
available to view here: https://cc-perf.igalia.com/db_default/v4/nts/machine/2.

We’re using LNT[2] for this which will flag any changes in code size or 
execution time from the previous run. It also collects profiling data so you 
can click on a benchmark run and see where the cycles are spent alongside the 
disassembly. 

Some specifics: 
- The hardware tested is a Banana Pi BPI-F3 16GB, i.e. spacemit-x60
- The tested configuration is -march=rva22u64_v -O3 -flto
- To reduce noise the tests are run 3 times and the minimum time is taken. Only 
one test is run at a time, pinned to a core with ASLR disabled.
- In order to get the tests to finish running in a day, we are only testing the 
SPEC rate tests on the train datasets.

We’ve found this to be a useful resource so we thought it was worth sharing 
over on this mailing list. We hope you will find it useful too.

For the curious, it’s also possible to see the comparison between GCC and Clang 
here: https://cc-perf.igalia.com/db_default/v4/nts/3?compare_to=4. You are 
beating us in quite a few benchmarks, so we have some catching up to do ;)

Luke Lau
Compiler engineer at Igalia

[1]: https://github.com/llvm/llvm-test-suite
[2]: https://llvm.org/docs/lnt/

Reply via email to