[PATCH][ARM] Switch to default sched pressure algorithm
Christophe Lyon
christophe.lyon@linaro.org
Tue Jul 30 09:29:00 GMT 2019
On Mon, 29 Jul 2019 at 18:49, Wilco Dijkstra <Wilco.Dijkstra@arm.com> wrote:
>
> Currently the Arm backend selects the alternative sched pressure algorithm.
> The issue is that this doesn't take register pressure into account, and so
> it causes significant additional spilling on Arm where there are only 14
> allocatable registers. SPEC2006 shows significant codesize reduction
> with the default pressure algorithm, so switch back to that. PR77308 shows
> ~800 fewer instructions.
>
> SPECINT2006 is ~0.6% faster on Cortex-A57 together with the other DImode
> patches. Overall SPEC codesize is 1.1% smaller.
>
Hi Wilco,
Do you know which benchmarks were used when this was checked-in?
It isn't clear from https://gcc.gnu.org/ml/gcc-patches/2012-07/msg00706.html
Thanks,
Christophe
> Bootstrap & regress OK on arm-none-linux-gnueabihf --with-cpu=cortex-a57
>
> ChangeLog:
> 2019-07-29 Wilco Dijkstra <wdijkstr@arm.com>
>
> * config/arm/arm.c (arm_option_override): Don't override sched
> pressure algorithm.
>
> --
>
> diff --git a/gcc/config/arm/arm.c b/gcc/config/arm/arm.c
> index 81286cadf32f908e045d704128c5e06842e0cc92..628cf02f23fb29392a63d87f561c3ee2fb73a515 100644
> --- a/gcc/config/arm/arm.c
> +++ b/gcc/config/arm/arm.c
> @@ -3575,11 +3575,6 @@ arm_option_override (void)
> if (use_neon_for_64bits == 1)
> prefer_neon_for_64bits = true;
>
> - /* Use the alternative scheduling-pressure algorithm by default. */
> - maybe_set_param_value (PARAM_SCHED_PRESSURE_ALGORITHM, SCHED_PRESSURE_MODEL,
> - global_options.x_param_values,
> - global_options_set.x_param_values);
> -
> /* Look through ready list and all of queue for instructions
> relevant for L2 auto-prefetcher. */
> int param_sched_autopref_queue_depth;
>
More information about the Gcc-patches
mailing list