From: Jeff Law <law@redhat.com>
To: Luis Machado <luis.machado@linaro.org>, gcc-patches@gcc.gnu.org
Cc: james.greenhalgh@arm.com, Richard.Earnshaw@arm.com
Subject: Re: [PATCH 2/2] Introduce prefetch-dynamic-strides option.
Date: Tue, 01 May 2018 18:31:00 -0000 [thread overview]
Message-ID: <b5e6e0a2-56c7-5840-1404-a6cca868c039@redhat.com> (raw)
In-Reply-To: <1516628770-25036-3-git-send-email-luis.machado@linaro.org>
On 01/22/2018 06:46 AM, Luis Machado wrote:
> The following patch adds an option to control software prefetching of memory
> references with non-constant/unknown strides.
>
> Currently we prefetch these references if the pass thinks there is benefit to
> doing so. But, since this is all based on heuristics, it's not always the case
> that we end up with better performance.
>
> For Falkor there is also the problem of conflicts with the hardware prefetcher,
> so we need to be more conservative in terms of what we issue software prefetch
> hints for.
>
> This also aligns GCC with what LLVM does for Falkor.
>
> Similarly to the previous patch, the defaults guarantee no change in behavior
> for other targets and architectures.
>
> I've regression-tested and bootstrapped it on aarch64-linux. No problems found.
>
> Ok?
>
> 2018-01-22 Luis Machado <luis.machado@linaro.org>
>
> Introduce option to control whether the software prefetch pass should
> issue prefetch hints for non-constant strides.
>
> gcc/
> * config/aarch64/aarch64-protos.h (cpu_prefetch_tune)
> <prefetch_dynamic_strides>: New const unsigned int field.
> * config/aarch64/aarch64.c (generic_prefetch_tune): Update to include
> prefetch_dynamic_strides.
> (exynosm1_prefetch_tune): Likewise.
> (thunderxt88_prefetch_tune): Likewise.
> (thunderx_prefetch_tune): Likewise.
> (thunderx2t99_prefetch_tune): Likewise.
> (qdf24xx_prefetch_tune): Likewise. Set prefetch_dynamic_strides to 0.
> (aarch64_override_options_internal): Update to set
> PARAM_PREFETCH_DYNAMIC_STRIDES.
> * doc/invoke.texi (prefetch-dynamic-strides): Document new option.
> * params.def (PARAM_PREFETCH_DYNAMIC_STRIDES): New.
> * params.h (PARAM_PREFETCH_DYNAMIC_STRIDES): Define.
> * tree-ssa-loop-prefetch.c (should_issue_prefetch_p): Account for
> prefetch-dynamic-strides setting.
OK for the trunk.
jeff
next prev parent reply other threads:[~2018-05-01 18:31 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-01-22 13:46 [PATCH 0/2] Add a couple new options to control loop prefetch pass Luis Machado
2018-01-22 14:01 ` [PATCH 1/2] Introduce prefetch-minimum stride option Luis Machado
2018-01-23 9:46 ` Kyrill Tkachov
2018-01-23 13:23 ` Luis Machado
2018-05-01 18:30 ` Jeff Law
2018-05-07 14:10 ` Luis Machado
2018-05-07 15:15 ` H.J. Lu
2018-05-07 15:51 ` Luis Machado
2018-05-14 21:21 ` Luis Machado
2018-05-15 9:59 ` Kyrill Tkachov
2018-05-15 11:21 ` Luis Machado
2018-05-16 9:22 ` Kyrill Tkachov
2018-05-16 11:53 ` Luis Machado
2018-05-22 18:56 ` Luis Machado
2018-05-22 21:21 ` Jeff Law
2018-05-23 20:27 ` H.J. Lu
2018-05-23 22:34 ` Luis Machado
2018-05-23 22:41 ` H.J. Lu
2018-05-23 22:42 ` H.J. Lu
2018-05-23 22:45 ` H.J. Lu
2018-05-23 23:29 ` Luis Machado
2018-05-24 2:51 ` Jeff Law
2018-05-24 12:21 ` Luis Machado
2018-01-22 14:10 ` [PATCH 2/2] Introduce prefetch-dynamic-strides option Luis Machado
2018-01-23 9:53 ` Kyrill Tkachov
2018-01-23 13:32 ` Luis Machado
2018-05-01 18:31 ` Jeff Law [this message]
2018-05-07 14:13 ` Luis Machado
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=b5e6e0a2-56c7-5840-1404-a6cca868c039@redhat.com \
--to=law@redhat.com \
--cc=Richard.Earnshaw@arm.com \
--cc=gcc-patches@gcc.gnu.org \
--cc=james.greenhalgh@arm.com \
--cc=luis.machado@linaro.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).