This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [Patch, libgfortran] PR21468 Vectorizing matmul, other perf improvements


Thomas Koenig wrote:
On Sun, Nov 13, 2005 at 05:52:37PM +0200, Janne Blomqvist wrote:



Another thing that it does is enabling -funroll-loops for matmul_* and
matmull_*. This is actually a bigger performance booster than
vectorizing, almost doubling performance.


I fear that this may be platform-dependant.  Loop unrolling may
be a big win for architectures with many registers, while on
architectures with few registers, such as i686, it may cause
performance degradation.

I doubt it would be worth while to try to discriminate between ancient CPUs which lack hardware register renaming and those of the last 6 years which have that feature. CPUs like P-III and later do very well in pipelining code which assigns independent data to the same named register.
For CPUs with many registers but no hardware renaming, like Itanium, it seems unpredictable whether gcc -frename-registers will accomplish the desired optimization.



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]