Re: Auto-vectorization: need to know what to expect

2008-03-17 Thread Benoît Jacob
Thanks a lot Michael for the detailed help! Thanks also n8tm, and sorry to have posted on the wrong list. Well that's a lot of food for thought and it'll keep me busy for some time, so thanks again to all, and bye! Benoit On Monday 17 March 2008 20:08:43 Michael Meissner wrote: > However, SSE i

Re: Auto-vectorization: need to know what to expect

2008-03-17 Thread Benoît Jacob
OK. It's nontrivial as this uses a 2500-line c++ template library, but I'll do my best to come up with something self-contained. Cheers, Benoit On Monday 17 March 2008 18:51:57 Daniel Jacobowitz wrote: > On Mon, Mar 17, 2008 at 06:33:23PM +0100, Benoît Jacob wrote: > >

Re: Auto-vectorization: need to know what to expect

2008-03-17 Thread Benoît Jacob
torage.m_data[D.43225_112] I am wondering what to do about all that? Surely there must be documentation about the vectorizer and its messages somewhere but I can't find it? Cheers, Benoit On Monday 17 March 2008 15:59:21 Richard Guenther wrote: > On Mon, Mar 17, 2008 at 3:45 PM, Benoît

Re: Auto-vectorization: need to know what to expect

2008-03-17 Thread Benoît Jacob
Thanks Richard for the answer. It sounds like it's worth betting on gcc's autovectorizer and submitting bug reports -- so expect to hear again from us :) Cheers, Benoît On Monday 17 March 2008 15:59:21 Richard Guenther wrote: > On Mon, Mar 17, 2008 at 3:45 PM, Benoît Jacob <

Auto-vectorization: need to know what to expect

2008-03-17 Thread Benoît Jacob
Dear All, I am currently (co-)developing a Free (GPL/LGPL) C++ library for vector/matrix math. A major decision that we need to take is, what to do regarding vectorization instructions (SSE). Either we rely on GCC to auto-vectorize, or we control explicitly the vectorization using GCC's specia

Re: g++ doesn't unroll a loop it should unroll

2006-12-14 Thread Benoît Jacob
Le jeudi 14 décembre 2006 08:58, Steven Bosscher a écrit : > On 12/14/06, Benoît Jacob <[EMAIL PROTECTED]> wrote: > > I don't understand why you say that. At the language specification level, > > templates come with no inherent speed overhead. All of the template stuff

Re: g++ doesn't unroll a loop it should unroll

2006-12-13 Thread Benoît Jacob
Le mercredi 13 décembre 2006 23:09, Denis Vlasenko a écrit : > C++ doesn't specify that compiler shall unroll loops, so it cannot be > classified as "real" bug. OK, but then, even if I explicitly ask gcc to unroll loops with -funroll-loops, it still doesn't unroll them completely and is still as

Re: g++ doesn't unroll a loop it should unroll

2006-12-13 Thread Benoît Jacob
understood? Benoit Le mercredi 13 décembre 2006 13:12, Steven Bosscher a écrit : > On 12/13/06, Benoît Jacob <[EMAIL PROTECTED]> wrote: > > g++ -DUNROLL -O3 toto.cpp -o toto ---> toto runs in 0.3 seconds > > g++ -O3 toto.cpp -o toto---> toto runs in 1.9 sec

g++ doesn't unroll a loop it should unroll

2006-12-13 Thread Benoît Jacob
Hi, I'm developing a Free C++ template library (1) in which it is very important that certain loops get unrolled, but at the same time I can't unroll them by hand, because they depend on template parameters. My problem is that G++ 4.1.1 (Gentoo) doesn't unroll these loops. I have written a sta