Maxim Kuvyrkov wrote: > [Adding ARM maintainers to CC] > > On Oct 21, 2014, at 9:44 AM, Sebastian Pop <seb...@gmail.com> wrote: > > > Hi Maxim, > > > > Maxim Kuvyrkov wrote: > >> Thanks, benchmarking results are welcome! AArch64 doesn't use reg_pressure > >> scheduling by default. Use "-fsched-pressure > >> --param=sched-pressure-algorithm=2" to enable same thing as on ARM. I > >> would > >> imagine C++ and Fortran floating-point code to be most affected. > > > > On aarch64 I only see perf improvements with your patch: no perf > > degradations on > > all the tests that I have run. > > > > base0: r216447, -O3 > > base1: r216447, -O3 -fsched-pressure --param=sched-pressure-algorithm=2 > > patch: r216447 + your patch, -O3 -fsched-pressure > > --param=sched-pressure-algorithm=2 > > > > patch vs. base1 is only an improvement. > > > > base1 vs. base0 has a few good improvements, and some small degradations: > > your > > patch improves the perf for one of the degradations to the point it is > > better > > now with -fsched-pressure --param=sched-pressure-algorithm=2 than at -O3. > > > > Could we turn on "-fsched-pressure --param=sched-pressure-algorithm=2" by > > default for aarch64? > > These are great results, yay! Sebastian, what benchmarks did you run?
I have run Geekbench and some other benchmarks. > We need to see improvements on spec2k / spec2k6 to enable register-pressure > scheduling on AArch64 by default. The current understanding is that AArch64 I don't have the data for spec2k / spec2k6. > has enough registers to not benefit from pressure-aware scheduling. On the > other hand, one could argue that cores with more complex pipelines (e.g., A57) > might not benefit from pipeline-oriented scheduling either, and, therefore, > scheduling for register pressure can provide a better win. I have seen the improvements on A57. Sebastian