This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug middle-end/44297] Big spec cpu2006 prefetch regressions on gcc 4.6 on x86
- From: "rakdver at kam dot mff dot cuni dot cz" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 7 Jun 2010 20:24:03 -0000
- Subject: [Bug middle-end/44297] Big spec cpu2006 prefetch regressions on gcc 4.6 on x86
- References: <bug-44297-18740@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #18 from rakdver at kam dot mff dot cuni dot cz 2010-06-07 20:24 -------
Subject: Re: Big spec cpu2006 prefetch regressions
on gcc 4.6 on x86
> ------- Comment #14 from changpeng dot fang at amd dot com 2010-06-07 18:27 -------
> Here is the current status of my investigation:
>
> (1) 465.tonto regression (~9%):
> The regressions mainly comes from loops which have array references with both
> constant (prefetch_mod = 8) and non-constant (prefetch_mod=1) steps. The loops
> are unrolled 8 times, and 8 non-constant step prefetches are inserted into the
> unrolled loops.
>
> The ideal way to solve the problem is to compute the prefetch count considering
> the effect of unrolling, i.e. we should count 8 non-constant step prefetches
> in stead of 1.
>
> (2) 416.gamess regression (~5%):
> The regression is from non-constant-step prefetching for outer loops. I am
> proposing not to do non-constant step prefetching for outer loops to solve the
> problem.
both of these sound reasonable to me,
Zdenek
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=44297