bug-gnubg
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Bug-gnubg] Vectorizing 3rd step


From: Øystein Johansen
Subject: Re: [Bug-gnubg] Vectorizing 3rd step
Date: Thu, 21 Apr 2005 17:22:32 +0200
User-agent: Mozilla Thunderbird 0.8 (Windows/20040913)

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

macherius wrote:
|       /* __m128  swapLo */ vec0 = _mm_shuffle_ps(vec2,vec2,
| _MM_SHUFFLE(2,3,0,1));
|       /* __m128  sumLo */ vec1 = _mm_add_ps(vec2, vec0);
|       /*__m128  swapHi */ vec0 = _mm_shuffle_ps(vec1,vec1,
| _MM_SHUFFLE(1,1,3,3));
|       /*__m128  sum */ vec2 = _mm_add_ps(vec1,vec0);
|       _mm_store_ss (&r, vec2);
| }

| The trick is in the last few lines.

Sure I remove the sum and the union stuff and replace it with these
lines. (I do not unroll). And it gains a lot! I'm now at 30500 evals/sec.

- -Øystein
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.4 (MingW32)
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org

iD8DBQFCZ8U46kDTFPhwyqYRAghxAJ0Q67UeWWjXCHIhd8zFBxGCuTSp1wCeLXp3
oKDSWHtUGvuGtSJmfLcX3uw=
=3T0W
-----END PGP SIGNATURE-----





reply via email to

[Prev in Thread] Current Thread [Next in Thread]