This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
RE: [patch] Improve prefetch heuristics
- From: "Fang, Changpeng" <Changpeng dot Fang at amd dot com>
- To: Christian Borntraeger <borntraeger at de dot ibm dot com>, "gcc-patches at gcc dot gnu dot org" <gcc-patches at gcc dot gnu dot org>
- Cc: "rguenther at suse dot de" <rguenther at suse dot de>, "sebpop at gmail dot com" <sebpop at gmail dot com>
- Date: Thu, 29 Apr 2010 14:00:53 -0500
- Subject: RE: [patch] Improve prefetch heuristics
- References: <1C13CD442679CE45A2E80AE9251D7EF9220E4107@SAUSEXMBP01.amd.com> <201004291259.20904.borntraeger@de.ibm.com>
Christian:
Thanks for you comments. I am going to add #ifndef for the newly
Added parameters.
Thanks,
Changpeng
-----Original Message-----
From: Christian Borntraeger [mailto:borntraeger@de.ibm.com]
Sent: Thursday, April 29, 2010 3:59 AM
To: gcc-patches@gcc.gnu.org
Cc: Fang, Changpeng; rguenther@suse.de; sebpop@gmail.com
Subject: Re: [patch] Improve prefetch heuristics
Am Dienstag 27 April 2010 20:53:40 schrieb Fang, Changpeng:
> Hi,
> The attached patches enhanced the current gcc software prefetch heuristics.
> We have done some performance evaluations on cpu2006 on a 2.6GHz phenom
> System with ubuntu 9.10.
These patches look sane and seem to produce good code on s390 as well.
I am currently looking at tuning the current prefetch code for s390 and I had to override some of the parameters in our backend(e.g. our l1-cache-line-size is 256) to improve the behaviour of the prefetch code.
I dont think that I really have to change your new parameters for s390, but making them configurable like most of the other ones in tree-ssa-loop-prefetch.c might be a good idea.
So, what do you think about changing patch 6 and 7 so that
#define TRIP_COUNT_TO_AHEAD_RATIO 2
and
#define PREFETCH_MIN_LOOP_TRIP_COUNT 5
looks more like the other parameters in prefetch, e.g.
#ifndef PREFETCH_TRIP_COUNT_TO_AHEAD_RATIO
#define PREFETCH_TRIP_COUNT_TO_AHEAD_RATIO 2
#endif
#ifndef PREFETCH_MIN_LOOP_TRIP_COUNT
#define PREFETCH_MIN_LOOP_TRIP_COUNT 5
#endif
Christian