Seti@Home optimized science apps and information

Optimized Seti@Home apps => Discussion Forum => Topic started by: Win95GUI on 31 Jan 2011, 05:28:46 pm

Title: AVX Optimized App Development
Post by: Win95GUI on 31 Jan 2011, 05:28:46 pm
Hey all,
I just wanted to see if anyone was working on employing the AVX extensions into a future build.  There have been questions/comments flying about at S@H about this.  And yes, I am aware of the chipset bug that has surfaced recently.

Todd
Title: Re: AVX Optimized App Development
Post by: BANZAI56 on 31 Jan 2011, 10:09:13 pm
It will be interesting to watch and see how this will progress.

I say that as we're still watching the progress and development of the GPU apps.


Lots of talented folks here and y'all have my appreciation and thanks for what you do!
Title: Re: AVX Optimized App Development
Post by: Win95GUI on 01 Feb 2011, 01:17:25 am
Please see this thread at S@H if you are interested in receiving hardware to develop this application.  Of course this stuff will still be mine and I do want it returned in a reasonable timeframe following the development efforts.  Or I could put it out there on the internet for your usage as long as need be.

http://setiathome.berkeley.edu/forum_thread.php?id=63033

Todd
Title: Re: AVX Optimized App Development
Post by: _heinz on 01 Feb 2011, 08:16:46 pm
Hi,
if you have not seen it AVX is in preparation.
Together with the ATOM build I worked on it since a while.
http://lunatics.kwsn.net/2-windows/optimized-sources.msg35172.html#msg35172

heinz
Title: Re: AVX Optimized App Development
Post by: Frizz on 14 Feb 2011, 03:27:46 pm
AFAIK Jason is working on supporting AVX.

From what I understood the only improvement in Intels version of AVX, besides non-destructive instructions, will basically only be to extend the 4 float operations to 4 double operations.

AMD (Bulldozer) will allow to use AVX in a more flexible way: Either do 4 x double, or 8 x float operations in parallel. And Bulldozer will support XOP and FMA4.

I always thought I get a Sandy Bridge system as soon as it becomes available. But after the most recent facts + rumours (benchmarks) I will wait for Bulldozer and compare both platforms.

Question (for Jason?): It seems a lot of guys at the S@H forum have high hopes in AVX. But do you really think we get such a tremendous speed up? I mean, does MB really use so much double precision?
Title: Re: AVX Optimized App Development
Post by: Jason G on 14 Feb 2011, 04:05:29 pm
Question (for Jason?): It seems a lot of guys at the S@H forum have high hopes in AVX. But do you really think we get such a tremendous speed up? I mean, does MB really use so much double precision?

AVX supports  256 bit vectors of single floats AFAIK, and there are ample execution units in Sandy bridge to handle the operations in parallel.  The problem is existing core hard code is coded for 128 bit, so requires a recode to 256 bit.  Relying on compilers to do that does not work.  Putting something in hardware to attempt to parallel those 128 bit ops is a nice idea, but dependencies won't allow full parallelism there, as you rarely get 2 128 bit vector operations in a row that are not dependent somehow.  The required changes are algorithmic high level code ones.

As is, even 128bit vectors in SSE are challenging to program for 'properly', mostly due to the diversity of architectures which vary significantly in memory/cache subsystem.  Poorly coded SSE+ tends to stall cache anyway ( e.g. crappy codec tearing  ;) ).  That will only get harder as Processors keep doubling performance every so often, where RAM only gets ~10% faster in the same timeframe.  You mitigate that with cache management, and *most* code doesn't do that well at all.

Since the Intel and AMD patent sharing stuff is back on, and the CPUs show a remarkable convergence in some key aspects, especially memory subsystem,  It should be easier to juggle things into line for more portable hand vectorised code.  3 operand instructions, combined with less code to worry about for the new class of machines should see things go further.

So Summing up, naieve compiler based 'optimisation', will not get the job done.  There's a lot of work to do to extract the potential of both architectures.
Jason
Title: Re: AVX Optimized App Development
Post by: Frizz on 14 Feb 2011, 04:23:10 pm
So Summing up, naieve compiler based 'optimisation', will not get the job done.  There's a lot of work to do to extract the potential of both architectures.

Yes, I was thinking about hand optimized code (like it's already used in the Lunatics apps). My question was more: Will there really be any substantial advantage using AVX(Intel flavour)?

AFAIK Intel (Sandy Bridge) will not be able to split an FPU. So if they are running non-AVX code, their 8 256-bit FPUs are 8 128-bit FPUs. For Bulldozer, when they run non-AVX code, they have 16 128-bit FPUs.

So the only real benefit of AVX(Intel) will be that they can do 8 256-bit(double) instead of 8 128-bit(float) with SSE.

Hence my question: Is there really so much double precision code in MB?
Title: Re: AVX Optimized App Development
Post by: Jason G on 14 Feb 2011, 04:36:54 pm
Yes, I was thinking about hand optimized code (like it's already used in the Lunatics apps). My question was more: Will there really be any substantial advantage using AVX(Intel flavour)?

AFAIK Intel (Sandy Bridge) will not be able to split an FPU. So if they are running non-AVX code, their 8 256-bit FPUs are 8 128-bit FPUs. For Bulldozer, when they run non-AVX code, they have 16 128-bit FPUs.

That splitting into extra 128 bit FPUs was what I was angling at, with the mention of dependancies.   Let's look at the dechirp from Astropulse for a clear example:

Quote
  #if TWINDECHIRP
   #define NUMPERPAGE 1024 // 4096/sizeof(float)
   static const __m128 NEG_S = {-0.0f, 0.0f, -0.0f, 0.0f};

   if (negredy != dm) {
     unsigned int kk, tlbmsk = fft_len*2-1;
     __m128 tmp1, tmp2, tmp3;
     float* tinP = temp_in_neg[0];

     for (kk=0; kk<fft_len*2; kk += NUMPERPAGE) {
      tlbt1 = dataP[(kk+NUMPERPAGE)&tlbmsk]; // TLB priming
      tlbt2 = chirpP[(kk+NUMPERPAGE)&tlbmsk]; // TLB priming
      // prefetch entire blocks, one 32 byte P3 cache line per loop
      for (i=kk+8; i<kk+NUMPERPAGE; i+=8) {     
      _mm_prefetch((char*)&dataP, _MM_HINT_NTA);
      _mm_prefetch((char*)&chirpP, _MM_HINT_NTA);
      }                                         
      // process 4 floats per loop               
      for (i=kk; i<kk+NUMPERPAGE; i+=4) {       
        tmp1=_mm_load_ps(&chirpP);            //  s,  c
        tmp2=_mm_load_ps(&dataP);             //  i,  r
        tmp3=tmp1;                               
        tmp1=_mm_movehdup_ps(tmp1);              //  s,  s
        tmp3=_mm_moveldup_ps(tmp3);              //  c,  c
        tmp1=_mm_xor_ps(tmp1, NEG_S);            //  s, -s
        tmp3=_mm_mul_ps(tmp3, tmp2);             // ic, rc
        tmp2=_mm_shuffle_ps(tmp2, tmp2, 0xb1);   //  r,  i
        tmp1=_mm_mul_ps(tmp1, tmp2);             // rs,-is
        tmp2=tmp1;                               
        tmp2=_mm_add_ps(tmp2, tmp3);             
        _mm_store_ps(&tinP, tmp2);            // ic+rs, rc-is
        tmp3=_mm_sub_ps(tmp3, tmp1);             
        _mm_store_ps(&tempP, tmp3);           // ic-rs, rc+is
      }                                         
     } //kk                                         
     negredy = dm;
   }

Here you have dependant sequences of 128 bit instructions.  You must recode this entirely for 256 bit by hand.

Leaving this as is, since the majority of the 'legacy' 128 bit operations must done in sequence to arrive at the correct answers, trying to execute more in parallel must be done at a higher level via a rewrite of the innemost loop,  changing i+=4 to i+=8.  Architectural improvements will make this 'legacy' code faster indeed, but nowhere near if it were rewritten to take advantage of 256 bit wide vectors & 3 operand instructions.

16x or 8x 32 bit wide FPUs working on this code would be starving either way, since the elaborate & slow mechanisms there are more to do with memory speed and triggering cache prefetches etc.

You could expect a pure AVX variant to have exactly half as many cache misses, due to exactly half the number of load requests.
Title: Re: AVX Optimized App Development
Post by: Frizz on 14 Feb 2011, 04:51:47 pm
I think we need a phone conference ... or a beer ... or both  ;D ... we are talking at cross purposes.

Let me put my question this way: AVX (Intel flavour) will not improve performance compared to existing SSE code, since all AVX does is extend 128bit(float) to 256bit(double). And we are not using much double precision in MB and AP. No?

Title: Re: AVX Optimized App Development
Post by: Raistmer on 14 Feb 2011, 04:53:54 pm
@Frizz
Check your arithmetic.
SSE allows only 4 float instructions per register, not 8.
Title: Re: AVX Optimized App Development
Post by: Frizz on 14 Feb 2011, 04:57:57 pm
@Frizz
Check your arithmetic.
SSE allows only 4 float instructions per register, not 8.

Darn ... I had 4 first, then later modified it to 8 ... got confused with number of registers vs. floating point numbers per register ;)

Point is:

- AVX (Intel flavour) doesn't double the number of operations - only doubles the width of the register files (128 -> 256)

- AVX (AMD flavour) allows to split, so effectively doubles the number of operations performed in parallel compared to SSE.
Title: Re: AVX Optimized App Development
Post by: Raistmer on 14 Feb 2011, 04:59:52 pm
Maybe, I'm not looked into AVX ISA yet, I just reading and making corrections ;)
Title: Re: AVX Optimized App Development
Post by: Jason G on 14 Feb 2011, 05:04:54 pm
@Frizz
Check your arithmetic.
SSE allows only 4 float instructions per register, not 8.

Darn ... I had 4 first, then later modified it to 8  ;)

Point is:

- AVX (Intel flavour) doesn't double the number of operations - only doubles the width of the register files (128 -> 256)

- AVX (AMD flavour) allows to split, so effectively doubles the number of operations performed in parallel compared to SSE.

Which Is what I am saying code dependancies prevent in legacy SSE code, unless the chip has a special magic loop unroller that will change the number of loop interations.
Title: Re: AVX Optimized App Development
Post by: Raistmer on 14 Feb 2011, 05:07:42 pm
AFAIK outlaw made AVX build on SETI forums.
But I didn't see any benchmarks so far... This "just rebuild" approach could give starting point at least, but for now we have no even such point.
Title: Re: AVX Optimized App Development
Post by: Frizz on 14 Feb 2011, 05:11:01 pm
Which Is what I am saying code dependancies prevent in legacy SSE code, unless the chip has a special magic loop unroller that will change the number of loop interations.

I am aware of the fact the the code needs (more) hand optimization, ifdefs for AVX, Intel, AMD , etc. ... and that we don't get this for free (the magic loop unroller that you mentioned *g*).

Point is:

- It won't matter for Intel AVX (we still only have 4 operations in parallel)

- It might (will imho) matter for AMD AVX (we will have 8 operations in parallel)

No?
Title: Re: AVX Optimized App Development
Post by: Raistmer on 14 Feb 2011, 05:14:45 pm
It can depend on how much cycles CPU use to do same operation via AVX register and via XMM register.
Even if it will do same 4 operations speed could be different. Instruction set per se, w/o knowledge about cost of each operation in CPU cycles, means nothing.
Title: Re: AVX Optimized App Development
Post by: Frizz on 14 Feb 2011, 05:27:43 pm
It can depend on how much cycles CPU use to do same operation via AVX register and via XMM register.
Even if it will do same 4 operations speed could be different. Instruction set per se, w/o knowledge about cost of each operation in CPU cycles, means nothing.

Thats true.

Assuming both architectures use about the same amount of CPU cycles, Bulldozer has at least the potential to be 2x faster - compared to "old" SSE. While for Intel it won't matter.

By the way ... I'm still thinking about Jasons comment ("16x or 8x 32 bit wide FPUs working on this code would be starving either way") ... so true. And I still have to get used to it ... what I've learnt from my OpenCL experiments: "Keep the ALUs busy at all cost - avoid memory access" :) ... guess that will be true for SSE/AVX too.
Title: Re: AVX Optimized App Development
Post by: Raistmer on 14 Feb 2011, 05:33:37 pm
yes, good rule. In GPU one have shared memory for direct access managing. For CPU we have only cache and more or less implicit prefetches (quite implicit actually due to hardware prefetching). So CPU memory access avan more tricky ;)
Title: Re: AVX Optimized App Development
Post by: Josef W. Segur on 15 Feb 2011, 12:32:19 am
Sandy Bridge AVX does have 256 bit packed single float operations, basically the VEX.256 encoding is available for all mathematical functions we might use. But I agree with Jason that the difficulty will be getting the data to and from memory. And I think it would be a mistake to believe Intel marketing hype and expect Sandy Bridge to challenge GPUs for S@H processing.

Still, there are parts of the vectorized code which are probably compute bound and will benefit from AVX, such as the MB dechirping. For the stock code, an analyzeFuncs_avx.cpp with dechirping and perhps 8x8 transpose functions would be fairly straightforward.
                                                                                                  Joe
Title: Re: AVX Optimized App Development
Post by: Frizz on 15 Feb 2011, 03:53:08 am
I checked Intels AVX examples on their web page and they really can operate on 8 x float in parallel ... stupid me, what was I thinking?

Sorry for getting confused yesterday ;)

It all comes down to this here:

Intel Sandy Bridge: 1 x 128 bit (SSE) or 1 x 256 bit (AVX) per clock cycle
AMD Bulldozer:      2 x 128 bit (SSE) or 1 x 256 bit (AVX) per clock cycle
Title: Re: AVX Optimized App Development
Post by: Raistmer on 15 Feb 2011, 04:03:54 am
And now, are you sure for "per clock cycle" for both?
AMD is known for very poor initial SSE3 implementation where SSE3 instruction, while supported, took too many cycles (cause internaly they were computed as 2x64 instead of 1x128) to be useful...
Title: Re: AVX Optimized App Development
Post by: Frizz on 15 Feb 2011, 04:55:28 am
And now, are you sure for "per clock cycle" for both?

As sure as I can be without having the actual piece of hardware in my hands  ;)

John Fruehe/AMD (http://blogs.amd.com/work/2010/10/25/the-new-flex-fp/): "The Flex FP unit is built on two 128-bit FMAC units. The FMAC building blocks are quite robust on their own.  Each FMAC can do an FMAC, FADD or a FMUL per cycle."

computerbase.de (http://www.computerbase.de/artikel/prozessoren/2011/test-intel-sandy-bridge/9/): "Bei „Sandy Bridge“ heißt es also: Je Funktionseinheit und Takt können wahlweise 1× 128 Bit (SEE) oder 1× 256 Bit (AVX) breite Befehle verarbeitet werden. Die erwartete Konkurrenz in Form von AMD ist hier geschickter:„Bulldozer“ spricht in einem Zyklus wahlweise volle 256 oder 2× 128 Bit pro Takt an – die Flex-FP genannte Einheit teilen sich jedoch zwei Cores innerhalb eines „Bulldozer“-Moduls."


EDIT: Who knows what will happen to AMD, Bulldozer, etc. in the near future (AMD Pops 5 % On Dell Takeover Rumor (http://blogs.barrons.com/techtraderdaily/2011/02/14/amd-pops-5-on-dell-takeover-rumor/))
Title: Re: AVX Optimized App Development
Post by: Josef W. Segur on 28 Apr 2011, 08:26:32 pm
I've done some coding using AVX intrinsics for possible addition to the S@H v7 at S@H Beta, and of course here too. But I have not yet succeeded in getting either of the emulation capabilities from Intel working, so I'm just going to post a test here. It's basically the 'optimal function test' section of the stock code separated out, runs like this on my Win2k Pentium-M laptop:

Code: [Select]
=========================================================
Ftst_v7 started.

Optimal function choices:
-------------------------------------------------------
                            name  timing   error
-------------------------------------------------------
                v_BaseLineSmooth (no other)

              v_GetPowerSpectrum 0.00129 0.00000  test
             v_vGetPowerSpectrum 0.00076 0.00000  test
            v_vGetPowerSpectrum2 0.00126 0.00000  test
     v_vGetPowerSpectrumUnrolled 0.00073 0.00000  test
    v_vGetPowerSpectrumUnrolled2 0.00126 0.00000  test
     v_vGetPowerSpectrumUnrolled 0.00073 0.00000  choice

                     v_ChirpData 0.05096 0.00000  test
                   fpu_ChirpData 0.05843 0.00000  test
               fpu_opt_ChirpData 0.05117 0.00000  test
             v_vChirpData_x86_64 0.16249 0.00000  test
               sse1_ChirpData_ak 0.03466 0.00000  test
               sse2_ChirpData_ak 0.02976 0.00000  test
               sse2_ChirpData_ak 0.02976 0.00000  choice

                     v_Transpose 0.12368 0.00000  test
                    v_Transpose2 0.06344 0.00000  test
                    v_Transpose4 0.03413 0.00000  test
                    v_Transpose8 0.05463 0.00000  test
                  v_pfTranspose2 0.06328 0.00000  test
                  v_pfTranspose4 0.03372 0.00000  test
                  v_pfTranspose8 0.05253 0.00000  test
                   v_vTranspose4 0.03367 0.00000  test
                 v_vTranspose4np 0.03455 0.00000  test
                v_vTranspose4ntw 0.02493 0.00000  test
              v_vTranspose4x8ntw 0.02046 0.00000  test
             v_vTranspose4x16ntw 0.02077 0.00000  test
            v_vpfTranspose8x4ntw 0.02486 0.00000  test
              v_vTranspose4x8ntw 0.02046 0.00000  choice

                 FPU opt folding 0.00624 0.00000  test
                  AK SSE folding 0.00266 0.00000  test
                  BH SSE folding 0.00248 0.00000  test
                  BH SSE folding 0.00248 0.00000  choice

                   Test duration   13.79 seconds

Ftst_v7 completed successfully.

That output is appended to a stderr.txt file for each invocation of the program. With an AVX capable CPU and Win7 SP1 there should also be an AVX PowerSpectrum function, two AVX Chirp functions, and two AVX Transpose functions.

It's a 32 bit console mode program, after extracting it from the 7zip archive to a convenient folder you can just double click and it will create a console window with "Ftst_v7 starting...." at the top. In that case when the program finishes its window will close. If you prefer to first open an "MS-DOS prompt" window and run from there you'd see something like:

C:\Test>Ftst_v7_6.91_J28_W32
Ftst_v7 starting....
Ftst_v7 completed, details appended to stderr.txt.

C:\Test>


Assuming it runs and doesn't crash on appropriate systems, I'm interested in seeing whether there's a significant speedup and whether I've gotten the right output data where it should go so the 'error' terms are acceptable.

It runs at normal priority, so won't be impacted by CPU tasks being run by BOINC but GPU tasks with the -hp priority boost some of Raistmer's builds support could affect timings. Just run it several times in that case.
                                                                                                 Joe

Edit: attachment deleted, see later post for an updated test.
Title: Re: AVX Optimized App Development
Post by: Jason G on 28 Apr 2011, 08:45:18 pm
oooh, my wallet just twinged...
Title: Re: AVX Optimized App Development
Post by: arkayn on 28 Apr 2011, 09:44:19 pm
Runs fine on my Q8200
Code: [Select]
=========================================================
Ftst_v7 started.

Optimal function choices:
-------------------------------------------------------
                            name  timing   error
-------------------------------------------------------
                v_BaseLineSmooth (no other)

              v_GetPowerSpectrum 0.00050 0.00000  test
             v_vGetPowerSpectrum 0.00030 0.00000  test
            v_vGetPowerSpectrum2 0.00021 0.00000  test
     v_vGetPowerSpectrumUnrolled 0.00017 0.00000  test
    v_vGetPowerSpectrumUnrolled2 0.00020 0.00000  test
     v_vGetPowerSpectrumUnrolled 0.00017 0.00000  choice

                     v_ChirpData 0.01733 0.00000  test
                   fpu_ChirpData 0.02611 0.00000  test
               fpu_opt_ChirpData 0.01718 0.00000  test
             v_vChirpData_x86_64 0.08318 0.00000  test
               sse1_ChirpData_ak 0.01189 0.00000  test
               sse2_ChirpData_ak 0.01225 0.00000  test
               sse3_ChirpData_ak 0.01158 0.00000  test
               sse3_ChirpData_ak 0.01158 0.00000  choice

                     v_Transpose 0.04329 0.00000  test
                    v_Transpose2 0.02241 0.00000  test
                    v_Transpose4 0.01175 0.00000  test
                    v_Transpose8 0.01840 0.00000  test
                  v_pfTranspose2 0.02277 0.00000  test
                  v_pfTranspose4 0.01191 0.00000  test
                  v_pfTranspose8 0.01807 0.00000  test
                   v_vTranspose4 0.01170 0.00000  test
                 v_vTranspose4np 0.01159 0.00000  test
                v_vTranspose4ntw 0.00818 0.00000  test
              v_vTranspose4x8ntw 0.00862 0.00000  test
             v_vTranspose4x16ntw 0.00624 0.00000  test
            v_vpfTranspose8x4ntw 0.00836 0.00000  test
             v_vTranspose4x16ntw 0.00624 0.00000  choice

                 FPU opt folding 0.00344 0.00000  test
                  AK SSE folding 0.00124 0.00000  test
                  BH SSE folding 0.00121 0.00000  test
                  BH SSE folding 0.00121 0.00000  choice

                   Test duration    6.02 seconds

Ftst_v7 completed successfully.
Title: Re: AVX Optimized App Development
Post by: Jason G on 28 Apr 2011, 10:16:04 pm
Similar result here on the E8400 (of course).  Darn, now I'm CPU shopping  ::)
Title: Re: AVX Optimized App Development
Post by: Josef W. Segur on 28 Apr 2011, 10:42:21 pm
Runs fine on my Q8200
...

Thanks, that's a better basis for comparison since it includes the SSE3 chirp which 'most everyone will see. And although I'm not particularly concerned about the 13 lines of assembly code which checks CPU and OS to decide whether AVX is supported, confirmation that Win7 SP1 by itself isn't enough is good.
                                                                                                 Joe
Title: Re: AVX Optimized App Development
Post by: Josef W. Segur on 29 Apr 2011, 11:17:30 am
From dnolan via PM at NC, result on his i7 2600 w/W7 64 SP1:

Code: [Select]
Ftst_v7 started.
 
Optimal function choices:
-------------------------------------------------------
                            name  timing   error
-------------------------------------------------------
                v_BaseLineSmooth (no other)
 
              v_GetPowerSpectrum 0.00010 0.00000  test
             v_vGetPowerSpectrum 0.00005 0.00000  test
            v_vGetPowerSpectrum2 0.00006 0.00000  test
     v_vGetPowerSpectrumUnrolled 0.00005 0.00000  test
    v_vGetPowerSpectrumUnrolled2 0.00007 0.00000  test
           v_avxGetPowerSpectrum 0.00004 38.07197  test
     v_vGetPowerSpectrumUnrolled 0.00005 0.00000  choice
 
                     v_ChirpData 0.00444 0.00000  test
                   fpu_ChirpData 0.01053 0.00000  test
               fpu_opt_ChirpData 0.00444 0.00000  test
             v_vChirpData_x86_64 0.05060 0.00000  test
               sse1_ChirpData_ak 0.00590 0.00000  test
               sse2_ChirpData_ak 0.00567 0.00000  test
               sse3_ChirpData_ak 0.00556 0.00000  test
                 avx_ChirpData_a 0.00230 0.85637  test
                 avx_ChirpData_b 0.00231 0.85637  test
                     v_ChirpData 0.00444 0.00000  choice
 
                     v_Transpose 0.00270 0.00000  test
                    v_Transpose2 0.00292 0.00000  test
                    v_Transpose4 0.00149 0.00000  test
                    v_Transpose8 0.00271 0.00000  test
                  v_pfTranspose2 0.00161 0.00000  test
                  v_pfTranspose4 0.00149 0.00000  test
                  v_pfTranspose8 0.00313 0.00000  test
                   v_vTranspose4 0.00088 0.00000  test
                 v_vTranspose4np 0.00114 0.00000  test
                v_vTranspose4ntw 0.00716 0.00000  test
              v_vTranspose4x8ntw 0.00298 0.00000  test
             v_vTranspose4x16ntw 0.00085 0.00000  test
            v_vpfTranspose8x4ntw 0.00719 0.00000  test
            v_avxTranspose8x4ntw 0.00299 0.00000  test
            v_avxTranspose8x8ntw 0.00232 9696326.77324  test
             v_vTranspose4x16ntw 0.00085 0.00000  choice
 
                 FPU opt folding 0.00204 0.00000  test
                  AK SSE folding 0.00045 0.00000  test
                  BH SSE folding 0.00043 0.00000  test
                  BH SSE folding 0.00043 0.00000  choice
 
                   Test duration    2.53 seconds
 
Ftst_v7 completed successfully.

Nice speedups on the Chirp functions, but I obviously need to rework data shuffling.
                                                                                                       Joe
Title: Re: AVX Optimized App Development
Post by: Jason G on 29 Apr 2011, 11:44:39 am
Nice speedups on the Chirp functions, but I obviously need to rework data shuffling.

Numbered bottlecaps help with that for me.  Good to see some hints that with work the architecture additions may perform very well.

Jason
Title: Re: AVX Optimized App Development
Post by: Claggy on 29 Apr 2011, 12:35:07 pm
Similar result here on the E8400 (of course).  Darn, now I'm CPU shopping  ::)

This is what an E8500 @ 4.14GHz gets (with Boinc, v7 Seti Beta CPU apps, an NV Seti Cuda MB app and an ATI OpenCL Seti MB app running)(ran it 5 times):

Code: [Select]
Ftst_v7 started.

Optimal function choices:
-------------------------------------------------------
                            name  timing   error
-------------------------------------------------------
                v_BaseLineSmooth (no other)

              v_GetPowerSpectrum 0.00013 0.00000  test
             v_vGetPowerSpectrum 0.00006 0.00000  test
            v_vGetPowerSpectrum2 0.00006 0.00000  test
     v_vGetPowerSpectrumUnrolled 0.00005 0.00000  test
    v_vGetPowerSpectrumUnrolled2 0.00006 0.00000  test
     v_vGetPowerSpectrumUnrolled 0.00005 0.00000  choice

                     v_ChirpData 0.03146 0.00000  test
                   fpu_ChirpData 0.01685 0.00000  test
               fpu_opt_ChirpData 0.02659 0.00000  test
             v_vChirpData_x86_64 0.04977 0.00000  test
               sse1_ChirpData_ak 0.00881 0.00000  test
               sse2_ChirpData_ak 0.00886 0.00000  test
               sse3_ChirpData_ak 0.00829 0.00000  test
               sse3_ChirpData_ak 0.00829 0.00000  choice

                     v_Transpose 0.00389 0.00000  test
                    v_Transpose2 0.00476 0.00000  test
                    v_Transpose4 0.00464 0.00000  test
                    v_Transpose8 0.01212 0.00000  test
                  v_pfTranspose2 0.00397 0.00000  test
                  v_pfTranspose4 0.00477 0.00000  test
                  v_pfTranspose8 0.01263 0.00000  test
                   v_vTranspose4 0.00396 0.00000  test
                 v_vTranspose4np 0.00585 0.00000  test
                v_vTranspose4ntw 0.00690 0.00000  test
              v_vTranspose4x8ntw 0.00649 0.00000  test
             v_vTranspose4x16ntw 0.00532 0.00000  test
            v_vpfTranspose8x4ntw 0.00568 0.00000  test
                     v_Transpose 0.00389 0.00000  choice

                 FPU opt folding 0.00194 0.00000  test
                  AK SSE folding 0.00072 0.00000  test
                  BH SSE folding 0.00071 0.00000  test
                  BH SSE folding 0.00071 0.00000  choice

                   Test duration    4.21 seconds

Ftst_v7 completed successfully.

Claggy
Title: Re: AVX Optimized App Development
Post by: Josef W. Segur on 30 Apr 2011, 11:58:07 pm
I think I figured out most if not all the changes needed, so am attaching a revised test. It will identify itself as "Ftst_v7_J29" at startup, I added one more digit to the timing output, and there's an additional AVX 8x8 transpose function. I'm reasonably certain trying for 8 rows at a time isn't going to be practical even on Sandy Bridge, but it seems worth one more try.
                                                                                                  Joe
Edit: attachment deleted, newer version in later post.
Title: Re: AVX Optimized App Development
Post by: Jason G on 01 May 2011, 12:20:51 am
All legacy functions still good here.  The extra timing digit helps.
Title: Re: AVX Optimized App Development
Post by: Claggy on 01 May 2011, 04:38:57 am
Here's the output from my E8500 @4.14GHz (same conditions as before)

Claggy
Title: Re: AVX Optimized App Development
Post by: arkayn on 01 May 2011, 08:03:16 pm
Q8200, running 4 SETI on CPU and Collatz on GPU.
Title: Re: AVX Optimized App Development
Post by: Miep on 02 May 2011, 07:14:39 am
For what it's worth my T7700 @ 2.40GHz - boinc suspended (starting up)

Edit: J32 output added (boinc running)
Title: Re: AVX Optimized App Development
Post by: Josef W. Segur on 02 May 2011, 04:38:04 pm
Newer version Ftst_v7_J32 attached. I did find another mistake in the AVX chirp functions, hope they're fixed now. Added 4x8 and 4x16 AVX transpose functions.

Although the transposes are at best a lukewarm optimization target, the variety in how different systems respond to different tilings has captured my interest. So J32 does the transpose tests twice, first time as for a chirp/fft pair at FFT length 16, second time is stock standard for a chirp/fft pair at FFT length 16384. I'll also attach stderrs generated here from two runs on my Pentium-M laptop with 1M L2, two runs on a P4 with 256K L2, and two runs on a P3 with 256K L2. With core i[3 | 5 | 7] having 256K L2 there might be some similarities, though the large shared L3 will likely reduce differences.
                                                                                                  Joe
Edit: Gah! Ftst_v7_J32 is withdrawn until I figure out more problems. The AVX chirps still aren't right though they do run, the first of the new transposes crashes on an i7 2600 w/W7 64 SP1 .
Title: Re: AVX Optimized App Development
Post by: Claggy on 02 May 2011, 04:50:42 pm
Here's a run with j32 on my E8500 @4.14Ghz (same conditions as before, Boinc running etc)

Edit: and here's a run on my Atom N450 @1.66GHz (5 times with Boinc running with two r468 AP apps running,
and 5 times with Boinc shut down and no apps running)

Claggy
Title: Re: AVX Optimized App Development
Post by: Josef W. Segur on 02 May 2011, 05:37:30 pm
@ Carola & Claggy: Thanks!
                                                                                             Joe
Title: Re: AVX Optimized App Development
Post by: Jason G on 02 May 2011, 11:42:58 pm
Although the transposes are at best a lukewarm optimization target, the variety in how different systems respond to different tilings has captured my interest.

That was pretty much how the cuda unit tests went.  While poking at seemingly innocuous & straightforward functions, many cans of worms and unexpected similarities cropped up that enabled exploring what was going on underneath.  The end result was a very valuable & clear picture of a set of approaches that would yield decent results, most of which defied optimisation & best practices guides (at least until Volkov demonstrated similar observations & techniques contradicting published material).

WRT AVX, I haven't entirely considered the ramification of the 3 tier cache, and associated hardware prefetch mechanisms etc.  I would expect that to be a major player in the transpose situation described, but don't know if earlier pre-touch (hardware prefetch triggering) cache block techniques, extended to the 3rd tier, would be an effective approach or not.

At some stage I'll have to see if updated Agner describes the hardware prefetch mechanisms in detail in his manuals, though I probably won't get to playing with AVX until I have the cuda SaH_V7 autocorrelations implemented.


Jason
Title: Re: AVX Optimized App Development
Post by: Josef W. Segur on 03 May 2011, 10:56:47 pm
Once more I think I have a test which ought to work on all systems. The crash in the new transpose routines was simple to fix, I'd just brought some logic in from the older 4x8 and 4x16 transposes without noticing that when I made those I was using a different convention for which was the first number. Fixed, and I revised the names of the new routines to the same convention as the old ones.

The chirp accuracy problem should be fixed too, I'd messed up which sine/cosine pairs went with which data samples. In the process of checking that area I coded a second SSE2 chirp function so I could do live testing on my hardware. With the AK_v8 improvements it's nearly 20% faster than the older one on my Pentium-M, is likely to outperform the older SSE3 on other systems, I didn't take time to add a new SSE3 or SSE version yet.
                                                                                                   Joe
Edit: Attachment deleted, newer version in later post.
Title: Re: AVX Optimized App Development
Post by: Jason G on 03 May 2011, 11:08:08 pm
Nothing legacy broke

[Also sse2_ak8 chirp was faster than the others here, and selected ].
Title: Re: AVX Optimized App Development
Post by: arkayn on 04 May 2011, 12:21:49 am
Nothing legacy broke

[Also sse2_ak8 chirp was faster than the others here, and selected ].

On my system as well.
Title: Re: AVX Optimized App Development
Post by: Claggy on 04 May 2011, 12:53:16 am
Nothing legacy broke

[Also sse2_ak8 chirp was faster than the others here, and selected ].
And same here too (on my E8500), (ran it 5 times with Boinc and apps running, and 5 times with Boinc shut down)

Claggy
Title: Re: AVX Optimized App Development
Post by: arkayn on 04 May 2011, 01:21:26 am
Run from the AMD Quad/GTX460 system.

Earlier was the Q8200/HD5830
Title: Re: AVX Optimized App Development
Post by: Josef W. Segur on 04 May 2011, 01:51:40 am
Thanks guys, I do seem to be progressing. I'll attach dnolan's i7 2600 stderr.txt, key info is an AVX version was chosen for all three of the areas I've been working on. Still one transpose to fix or remove, then some study to see if I have the brass to tackle pulse folding without being able to test my own work.
                                                                                                     Joe
Title: Re: AVX Optimized App Development
Post by: Miep on 04 May 2011, 03:58:28 am
For completion: first one boinc running, second one boinc suspended
Title: Re: AVX Optimized App Development
Post by: Claggy on 04 May 2011, 04:27:32 pm
Here's the J34 results for my Atom N450 @1.66Mhz (5 runs with Boinc and 2 apps running, 5 runs with Boinc shut down)

Claggy
Title: Re: AVX Optimized App Development
Post by: Claggy on 04 May 2011, 05:07:39 pm
Here's the J34 run on my C2D T8100 @2.1GHz (5 runs with Boinc and one v7 r246 task running, one AP r409 task running and one collatz_mini 2.05 Cuda task running, then 5 runs of Boinc and apps shut down)

Claggy
Title: Re: AVX Optimized App Development
Post by: Josef W. Segur on 11 May 2011, 01:46:18 am
Here's the latest version, including a fix for the AVX 8x4 transpose plus folding for AVX. The folding is as simple as I could make it, but there's no guarantee it's all correct even so. If it works I'm sure it can be improved.

I dropped the extra set of Transpose tests, there's enough data to thoroughly confuse me already. I may reactivate them later if I have some useful thoughts.
                                                                                                    Joe
Edit: Attachment deleted, newer version in later post.
Title: Re: AVX Optimized App Development
Post by: Jason G on 11 May 2011, 01:54:42 am
All legacy functions... err.. functioning.
Title: Re: AVX Optimized App Development
Post by: arkayn on 11 May 2011, 02:13:11 am
Code: [Select]
=========================================================
Ftst_v7_J34 started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                v_BaseLineSmooth (no other)

              v_GetPowerSpectrum 0.000480 0.00000  test
             v_vGetPowerSpectrum 0.000301 0.00000  test
            v_vGetPowerSpectrum2 0.000327 0.00000  test
     v_vGetPowerSpectrumUnrolled 0.000314 0.00000  test
    v_vGetPowerSpectrumUnrolled2 0.000294 0.00000  test
    v_vGetPowerSpectrumUnrolled2 0.000294 0.00000  choice

                     v_ChirpData 0.019478 0.00000  test
                   fpu_ChirpData 0.025356 0.00000  test
               fpu_opt_ChirpData 0.015757 0.00000  test
             v_vChirpData_x86_64 0.079464 0.00000  test
               sse1_ChirpData_ak 0.011689 0.00000  test
               sse2_ChirpData_ak 0.011893 0.00000  test
              sse2_ChirpData_ak8 0.008098 0.00000  test
               sse3_ChirpData_ak 0.011029 0.00000  test
              sse2_ChirpData_ak8 0.008098 0.00000  choice

                     v_Transpose 0.041660 0.00000  test
                    v_Transpose2 0.025839 0.00000  test
                    v_Transpose4 0.012987 0.00000  test
                    v_Transpose8 0.020351 0.00000  test
                  v_pfTranspose2 0.025092 0.00000  test
                  v_pfTranspose4 0.012726 0.00000  test
                  v_pfTranspose8 0.019991 0.00000  test
                   v_vTranspose4 0.012808 0.00000  test
                 v_vTranspose4np 0.013273 0.00000  test
                v_vTranspose4ntw 0.008225 0.00000  test
              v_vTranspose4x8ntw 0.008911 0.00000  test
             v_vTranspose4x16ntw 0.007548 0.00000  test
            v_vpfTranspose8x4ntw 0.008831 0.00000  test
             v_vTranspose4x16ntw 0.007548 0.00000  choice

                 FPU opt folding 0.003467 0.00000  test
                  AK SSE folding 0.001317 0.00000  test
                  BH SSE folding 0.001285 0.00000  test
                  BH SSE folding 0.001285 0.00000  choice

                   Test duration     6.44 seconds

Ftst_v7 completed successfully.
Title: Re: AVX Optimized App Development
Post by: Miep on 11 May 2011, 04:15:50 am
1st boinc running 2nd snoozed
Title: Re: AVX Optimized App Development
Post by: Claggy on 11 May 2011, 05:48:03 am
@arkayn your posted stderr.txt says Ftst_v7_J34 and not J37

Claggy
Title: Re: AVX Optimized App Development
Post by: Claggy on 11 May 2011, 05:51:12 am
Here'a run on my C2D E8500 @4.14GHz with J37 (5 times with Boinc and apps running and 5 times with Boinc shut down)

Claggy
Title: Re: AVX Optimized App Development
Post by: Fredericx51 on 11 May 2011, 12:16:05 pm
Did some reading about AVX and checked its output with this Test-file.

Whithout BOINC running: sterr.txt :

=========================================================
Ftst_v7_J34 started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                v_BaseLineSmooth (no other)

              v_GetPowerSpectrum 0.000105 0.00000  test
             v_vGetPowerSpectrum 0.000052 0.00000  test
            v_vGetPowerSpectrum2 0.000063 0.00000  test
     v_vGetPowerSpectrumUnrolled 0.000049 0.00000  test
    v_vGetPowerSpectrumUnrolled2 0.000066 0.00000  test
           v_avxGetPowerSpectrum 0.000043 0.00000  test
           v_avxGetPowerSpectrum 0.000043 0.00000  choice

                     v_ChirpData 0.005899 0.00000  test
                   fpu_ChirpData 0.010711 0.00000  test
               fpu_opt_ChirpData 0.005305 0.00000  test
             v_vChirpData_x86_64 0.051195 0.00000  test
               sse1_ChirpData_ak 0.006250 0.00000  test
               sse2_ChirpData_ak 0.005789 0.00000  test
              sse2_ChirpData_ak8 0.003679 0.00000  test
               sse3_ChirpData_ak 0.005621 0.00000  test
                 avx_ChirpData_a 0.001884 0.00000  test
                 avx_ChirpData_b 0.002139 0.00000  test
                 avx_ChirpData_a 0.001884 0.00000  choice

                     v_Transpose 0.002753 0.00000  test
                    v_Transpose2 0.002947 0.00000  test
                    v_Transpose4 0.001516 0.00000  test
                    v_Transpose8 0.002775 0.00000  test
                  v_pfTranspose2 0.001659 0.00000  test
                  v_pfTranspose4 0.001586 0.00000  test
                  v_pfTranspose8 0.002802 0.00000  test
                   v_vTranspose4 0.000915 0.00000  test
                 v_vTranspose4np 0.001169 0.00000  test
                v_vTranspose4ntw 0.007690 0.00000  test
              v_vTranspose4x8ntw 0.003222 0.00000  test
             v_vTranspose4x16ntw 0.000900 0.00000  test
            v_vpfTranspose8x4ntw 0.007704 0.00000  test
            v_avxTranspose4x8ntw 0.003195 0.00000  test
           v_avxTranspose4x16ntw 0.000817 0.00000  test
            v_avxTranspose8x4ntw 0.007712 0.00000  test
          v_avxTranspose8x8ntw_a 0.002666 0.00000  test
          v_avxTranspose8x8ntw_b 0.003011 0.00000  test
           v_avxTranspose4x16ntw 0.000817 0.00000  choice

                 FPU opt folding 0.002047 0.00000  test
                  AK SSE folding 0.000464 0.00000  test
                  BH SSE folding 0.000451 0.00000  test
                  JS AVX folding 0.000405 0.00000  test
                  JS AVX folding 0.000405 0.00000  choice

                   Test duration     2.90 seconds

Ftst_v7 completed successfully.

With BOINC (6.10.60 X64)(i7-2600 + 2x HD5870) 8x MB (CPU)+ 4 ATi  MB rev.177 or AP rev.524.

=========================================================
Ftst_v7_J34 started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                v_BaseLineSmooth (no other)

              v_GetPowerSpectrum 0.000105 0.00000  test
             v_vGetPowerSpectrum 0.000052 0.00000  test
            v_vGetPowerSpectrum2 0.000063 0.00000  test
     v_vGetPowerSpectrumUnrolled 0.000049 0.00000  test
    v_vGetPowerSpectrumUnrolled2 0.000066 0.00000  test
           v_avxGetPowerSpectrum 0.000043 0.00000  test
           v_avxGetPowerSpectrum 0.000043 0.00000  choice

                     v_ChirpData 0.005899 0.00000  test
                   fpu_ChirpData 0.010711 0.00000  test
               fpu_opt_ChirpData 0.005305 0.00000  test
             v_vChirpData_x86_64 0.051195 0.00000  test
               sse1_ChirpData_ak 0.006250 0.00000  test
               sse2_ChirpData_ak 0.005789 0.00000  test
              sse2_ChirpData_ak8 0.003679 0.00000  test
               sse3_ChirpData_ak 0.005621 0.00000  test
                 avx_ChirpData_a 0.001884 0.00000  test
                 avx_ChirpData_b 0.002139 0.00000  test
                 avx_ChirpData_a 0.001884 0.00000  choice

                     v_Transpose 0.002753 0.00000  test
                    v_Transpose2 0.002947 0.00000  test
                    v_Transpose4 0.001516 0.00000  test
                    v_Transpose8 0.002775 0.00000  test
                  v_pfTranspose2 0.001659 0.00000  test
                  v_pfTranspose4 0.001586 0.00000  test
                  v_pfTranspose8 0.002802 0.00000  test
                   v_vTranspose4 0.000915 0.00000  test
                 v_vTranspose4np 0.001169 0.00000  test
                v_vTranspose4ntw 0.007690 0.00000  test
              v_vTranspose4x8ntw 0.003222 0.00000  test
             v_vTranspose4x16ntw 0.000900 0.00000  test
            v_vpfTranspose8x4ntw 0.007704 0.00000  test
            v_avxTranspose4x8ntw 0.003195 0.00000  test
           v_avxTranspose4x16ntw 0.000817 0.00000  test
            v_avxTranspose8x4ntw 0.007712 0.00000  test
          v_avxTranspose8x8ntw_a 0.002666 0.00000  test
          v_avxTranspose8x8ntw_b 0.003011 0.00000  test
           v_avxTranspose4x16ntw 0.000817 0.00000  choice

                 FPU opt folding 0.002047 0.00000  test
                  AK SSE folding 0.000464 0.00000  test
                  BH SSE folding 0.000451 0.00000  test
                  JS AVX folding 0.000405 0.00000  test
                  JS AVX folding 0.000405 0.00000  choice

                   Test duration     2.90 seconds

Ftst_v7 completed successfully.
=========================================================
Ftst_v7_J34 started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                v_BaseLineSmooth (no other)

              v_GetPowerSpectrum 0.000234 0.00000  test
             v_vGetPowerSpectrum 0.000105 0.00000  test
            v_vGetPowerSpectrum2 0.000100 0.00000  test
     v_vGetPowerSpectrumUnrolled 0.000082 0.00000  test
    v_vGetPowerSpectrumUnrolled2 0.000098 0.00000  test
           v_avxGetPowerSpectrum 0.000061 0.00000  test
           v_avxGetPowerSpectrum 0.000061 0.00000  choice

                     v_ChirpData 0.011899 0.00000  test
                   fpu_ChirpData 0.019045 0.00000  test
               fpu_opt_ChirpData 0.012640 0.00000  test
             v_vChirpData_x86_64 0.063979 0.00000  test
               sse1_ChirpData_ak 0.010132 0.00000  test
               sse2_ChirpData_ak 0.009260 0.00000  test
              sse2_ChirpData_ak8 0.006961 0.00000  test
               sse3_ChirpData_ak 0.008636 0.00000  test
                 avx_ChirpData_a 0.003490 0.00000  test
                 avx_ChirpData_b 0.003833 0.00000  test
                 avx_ChirpData_a 0.003490 0.00000  choice

                     v_Transpose 0.007700 0.00000  test
                    v_Transpose2 0.004792 0.00000  test
                    v_Transpose4 0.008537 0.00000  test
                    v_Transpose8 0.014129 0.00000  test
                  v_pfTranspose2 0.015112 0.00000  test
                  v_pfTranspose4 0.011302 0.00000  test
                  v_pfTranspose8 0.012998 0.00000  test
                   v_vTranspose4 0.002625 0.00000  test
                 v_vTranspose4np 0.005798 0.00000  test
                v_vTranspose4ntw 0.008330 0.00000  test
              v_vTranspose4x8ntw 0.004689 0.00000  test
             v_vTranspose4x16ntw 0.002755 0.00000  test
            v_vpfTranspose8x4ntw 0.008488 0.00000  test
            v_avxTranspose4x8ntw 0.003759 0.00000  test
           v_avxTranspose4x16ntw 0.002249 0.00000  test
            v_avxTranspose8x4ntw 0.008294 0.00000  test
          v_avxTranspose8x8ntw_a 0.003551 0.00000  test
          v_avxTranspose8x8ntw_b 0.004706 0.00000  test
           v_avxTranspose4x16ntw 0.002249 0.00000  choice

                 FPU opt folding 0.003407 0.00000  test
                  AK SSE folding 0.000878 0.00000  test
                  BH SSE folding 0.000816 0.00000  test
                  JS AVX folding 0.000656 0.00000  test
                  JS AVX folding 0.000656 0.00000  choice

                   Test duration     5.03 seconds

Ftst_v7 completed successfully.

Title: Re: AVX Optimized App Development
Post by: arkayn on 11 May 2011, 01:14:33 pm
@arkayn your posted stderr.txt says Ftst_v7_J34 and not J37

Claggy
So does yours and everyone else, I am guessing that Joe forgot to change that number.
Title: Re: AVX Optimized App Development
Post by: Josef W. Segur on 11 May 2011, 04:50:49 pm
@arkayn your posted stderr.txt says Ftst_v7_J34 and not J37

Claggy
So does yours and everyone else, I am guessing that Joe forgot to change that number.

'Tis true. Luckily having only one set of transposes serves well to distinguish J37 from J34.

The test outputs are appreciated, I'd hate to break something and not know it because of the limited systems I have.

Did some reading about AVX and checked its output with this Test-file.
...

Thanks very much, it seems I've reached the initial goal of having working avx variants for all the tested categories. I'll do some tweaking to see if I can improve performance.
                                                                                            Joe
Title: Re: AVX Optimized App Development
Post by: Raistmer on 11 May 2011, 05:30:05 pm
Quote
Pulse finding is another area which is more limited by processing speed than memory access, though, and it also accounts for a sizable fraction of run time.

On GPU pulse finding looks memory-bound...
Maybe GaussFit ? It's compute intensive search.
Title: Re: AVX Optimized App Development
Post by: Josef W. Segur on 12 May 2011, 09:04:54 pm
Here's another test, added a third variant AVX chirp which might be marginally faster and a second variant AVX folding set, ditto. AFAIK no changes to the non-AVX code other than making sure this one identifies itself correctly  :D
                                                                                                 Joe
Edit: Attachment deleted, newer version in later post.
Title: Re: AVX Optimized App Development
Post by: Jason G on 12 May 2011, 09:28:16 pm
... AFAIK no changes to the non-AVX code other than making sure this one identifies itself correctly ...
  Checked anyway, All good including:
Quote
Ftst_v7_J39 started.
Title: Re: AVX Optimized App Development
Post by: arkayn on 12 May 2011, 09:40:30 pm
From the Q8200
Title: Re: AVX Optimized App Development
Post by: Fredericx51 on 13 May 2011, 07:14:23 am
And from a i7-2600, without and with BOINC (6.10.60)

Title: Re: AVX Optimized App Development
Post by: Claggy on 13 May 2011, 07:23:51 am
Here's my E8500's J39 run. (5 runs with Boinc and apps running, 5 runs with Boinc and apps shut down)

Claggy
Title: Re: AVX Optimized App Development
Post by: Josef W. Segur on 14 May 2011, 08:59:44 pm
So here's J40, modified the "_b" AVX folding but expect it will probably still be slower than the "_a" version. For the 4 float SIMD folding it was beter to use non-SIMD for the very shortest cases, AVX looks like it may be better just to handle all sizes as 8 floats with masking at the end. Anyhow, I reduced my guess about how small is too small to be efficient on AVX.

Also added SSE3 and SSE1 modified chirping based on AKv8. There are two variants for SSE1, one uses the Estrin method for the polynomials, the other Horner. Estrin has one fewer instruction but Horner needs fewer registers. On my Pentium-M it's a wash, either one may be marginally faster for a single run. But perhaps on even older systems where SSE1 is the best capability it may make a difference, or perhaps some newer systems will also react in surprising ways.

I've left the AVX chirping unchanged. Of the 6 tests on AVX capable systems a was chosen twice, b twice, and c twice. The largest difference between the slowest and fastest AVX version on one test was about 12%, so it's worth gathering more data.
                                                                                                        Joe
Edit: Attachment deleted, newer version in later post.
Title: Re: AVX Optimized App Development
Post by: arkayn on 14 May 2011, 10:09:06 pm
First up the Q8200

The the X4 630
Title: Re: AVX Optimized App Development
Post by: Claggy on 15 May 2011, 05:21:03 am
Here' the J40 run on my E8500 @ 4.14GHz (5 runs with Boinc and apps running, 5 runs with Boinc and apps shut down)

Edit: added Atom N450 run (5 runs with Boinc and one v7 r246 app and one AP r468 app running, and 5 runs with Boinc and apps shut down)

Edit 2: added C2D T8100 run (5 runs with Boinc and one v7 r246 app, one AP r409 app and one Collatz Cuda app running, and 5 runs with Boinc and apps shut down)

Edit 3: Dug my old XP3200 out it's box and connected it up, done a run with J40 (just 5 runs with Boinc shut down)

Claggy
Title: Re: AVX Optimized App Development
Post by: Fredericx51 on 15 May 2011, 06:20:57 am
And 2 J40 runs with BOINC(6.10.60) doing 12 MB WUs and 2 runs nwith BOINC sleeping.
CPU= i7-2600 stock frequency. (3.4GHz.)



Title: Re: AVX Optimized App Development
Post by: Fredericx51 on 15 May 2011, 05:45:44 pm
More tests required from i7-2600/ any CPU supporting AVX ?

Be happy to test your latest fsj40, a couple of more times, if it's output is usefull for
your 'build' eventually, or part of the coders information.

I'm going to download the ertire AVX building and C++ compiler suite (IPP+???)(Still reading a lot of PDF files
getting some usefull info, very time time consuming, though.

Will return soon  ;D

Title: Re: AVX Optimized App Development
Post by: Fredericx51 on 16 May 2011, 11:14:40 am
Did a few more runs with FTST-J40, 5 with BOINC pauzed, leaving app in memory, 5 with BOINC shut down and 5 with
BOINC running 8 MB WUs on CPU (i7-2600)  & 4 on GPUs (HD5870s).  (Firefoxs history and cache data, flushed.)
OS=WIN7 64BIT, 8GByte DDR3 1333MHz, everything stock settings. BOINC 6.10.60, 64BIT.
46 KByte text, compressewd as f.i. RAR, not even 4KBytes, are needed! (Well, all text is infact the same for every run)

Hope it is usefull, if there is more or other  AVX extended tests are needed, please ask  ::)




Title: Re: AVX Optimized App Development
Post by: Josef W. Segur on 16 May 2011, 03:56:57 pm
Thanks for the additional runs. More data is definitely useful when there are so many things which can affect individual runs. Whether I can recognize what's significant is doubtful, but it ought to limit my really bad guesses.

I do have a few more things in mind to try, but don't know when I'll be able to actually code them.
                                                                                                 Joe
Title: Re: AVX Optimized App Development
Post by: Fredericx51 on 17 May 2011, 01:07:14 pm
Well, I do am (almost) daily looking at something interresting and/or new.
AVX, happens to be one of them  ::)

I hope you'll be able to work out some usefull AVX  configuration for Gauss Fit and other like triplets, pulses and spikes.

If it's usefull, I can run all 3 versions a few times, just ask cause the info might be needed(?)

And the Outage @ SETI@Home, began while I was posting  :-\.

Wishing all a pleasent day, Fred.
B.t.w., when doing 2 on 1 GPU, screenlag is quite heavy, sometime all motion stops, screen no longer Refreshed.
Is ther something to change using the cmd-line parameters? (SETI Bêta rev177 (or newer, will have a look!)

Oh. boy, there might be some double attachments.(?) [Edit by Miep - I took the second instance of stderrftst_V7_J37_W32.rar out]
Title: Re: AVX Optimized App Development
Post by: Miep on 17 May 2011, 02:45:52 pm
B.t.w., when doing 2 on 1 GPU, screenlag is quite heavy, sometime all motion stops, screen no longer Refreshed.
Is ther something to change using the cmd-line parameters? (SETI Bêta rev177 (or newer, will have a look!)

with OpenCL MB increase -period_iteration_num if it's laggy/ driver restarts.
with AP decrease -unroll and block sizes
I'd point you to my main post on that topic, but that's a tiny bit tricky during maintenance :)
Title: Re: AVX Optimized App Development
Post by: Josef W. Segur on 17 May 2011, 09:19:50 pm
Here's another test version. I've dropped the JS_AVX_b folding because that approach was a clear failure, but added JS_AVX_c folding which may do better. For the non_AVX side I did some minor cleanup, but don't expect any noticeable difference in results unless I made a typo or something.
                                                                                                  Joe
Edit: Attachment deleted, newer version in later post.
Title: Re: AVX Optimized App Development
Post by: Miep on 18 May 2011, 08:38:13 am
once with boinc running, once without.
Title: Re: AVX Optimized App Development
Post by: Claggy on 18 May 2011, 09:34:50 am
Here's the J43 run on my E8500 (5 runs with Boinc and apps running, 5 runs with Boinc and apps shut down)

Claggy
Title: Re: AVX Optimized App Development
Post by: Fredericx51 on 18 May 2011, 10:27:44 am
J43, run 5 times with Firefox open with 4 pages, 5 with BOINC (6.10.60.;64BIT) and
5 with all apps and BOINC off.

I was interrupted and did 20 runs, 2 x 5 runs with no aplications running, runtimes with BOINC are more then doubled.




Title: Re: AVX Optimized App Development
Post by: arkayn on 19 May 2011, 12:07:01 pm
Run from both of my machines.
Title: Re: AVX Optimized App Development
Post by: Josef W. Segur on 21 May 2011, 02:12:17 pm
Attaching the J45 version, tweaked avx_ChirpData_c and added avx_ChirpData_d which in theory should be faster (but not by a huge amount). Changes in the non-AVX code are minimal.
                                                                                                 Joe
Title: Re: AVX Optimized App Development
Post by: Claggy on 22 May 2011, 06:31:22 am
Here's a run of J45 on my E8500 (5 runs with Boinc and 4 apps running)

Claggy
Title: Re: AVX Optimized App Development
Post by: Vyper on 04 Jun 2011, 01:34:20 pm
Here is my results..

I7 2600K @ 4.2Ghz , first result with boinc running, second idle.

//Vyper
Title: Re: AVX Optimized App Development
Post by: Josef W. Segur on 04 Jun 2011, 05:26:18 pm
The testing is appreciated. Lest anyone think I've lost interest I'll just note that there have been other things requiring my attention, and I hope to get back to the AVX stuff in ten days or so.

The functions from the J45 test have been contributed to the project, so I hope the v7 CPU application will be rebuilt to include them before release to main. For the next stage I hope to refactor at least the chirping into our AK_v8 based code, and probably some details into other functions too. I think eventually we'll be transitioning from many CPU versions to perhaps just 2 Windows versions (32 and 64 bit) with inbuilt dispatch for various capabilities, but that will take a fair amount of work. Shorter term it may be sensible to add an AVX build to the selection when we populate an installer for the v7 transition to main.
                                                                                       Joe
Title: Re: AVX Optimized App Development
Post by: Claggy on 08 Jun 2011, 07:36:01 pm
Here's the J45 run on my 32bit XP3200/HD4650/8400 GS machine, (5 runs of Boinc running, one AKV8_P3 app running, one Collatz ATI 2.09 app running and one Collatz Cuda 2.05 app running, and 5 runs with all that shut down)

Claggy
Title: Re: AVX Optimized App Development
Post by: Fredericx51 on 16 Jun 2011, 07:17:58 pm
A bit off topic, but on my GTX470 rig. I can add an HD5770, which I still have.

But AVX development put on 'hold'  ;) , just curious and very restickted at home(walking with an IV-Drain and standard
with 2 bags) isn't the best way trying to do something sometimes....................

Just Installed the 'new' v0.38 installer on my i7-2600+ 2x HD5870. First have to see and probably adjust some cmd-line parameters, also (trying to) run more then 1 at a time.

 Did the same for WIN XP64 using BOINC 6.12.26, had troubles installing on my WIN7 box? So I reverted to 6.10.60.
Well I'm gonna try the new V0.38!?

Title: Re: AVX Optimized App Development
Post by: Frizz on 17 Jul 2011, 12:05:59 pm
Are you guys already experimenting with FFTW 3.3?

Quote from FFTWs homepage: " ... Now available is the beta1 release for FFTW 3.3, scheduled for final release on July 25, 2011. ... The main new features in 3.3 are support for 256-bit AVX instructions on x86 processors, ...".
Title: Re: AVX Optimized App Development
Post by: Josef W. Segur on 17 Jul 2011, 06:22:07 pm
Are you guys already experimenting with FFTW 3.3?

Quote from FFTWs homepage: " ... Now available is the beta1 release for FFTW 3.3, scheduled for final release on July 25, 2011. ... The main new features in 3.3 are support for 256-bit AVX instructions on x86 processors, ...".

Thanks, I'd missed that. There's not much I can do with it, the test package doesn't use FFTs at all. I suppose I could graft something on, but the prebuilt Windows DLL downloads from http://fftw.org/install/windows.html do include a test program. If someone with a Sandy Bridge was interested it would be possible to compare 3.3-beta1 to 3.2.2 that way. It's a command line interface program with a lot of flexibility, if there's interest I'll advise, etc.

In the release notes they say "The AVX code works with 16-byte alignment (as opposed to 32-byte alignment), so there is no ABI change compared to FFTW 3.2.2.". With the Sandy Bridge architecture it's true that is just about as fast, and the same should be true on Bulldozer. But I chose to go the other way and do full 32-byte alignment to be better prepared for future changes, I expect either Intel or AMD will graduate to full 256 bit execution units rather than paired 128 bit units within a year or two. I could be wrong, the shift from 64 bit to 128 bit took longer than that.
                                                       Joe
Title: Re: AVX Optimized App Development
Post by: Josef W. Segur on 09 Mar 2012, 03:45:02 pm
We're now working toward releases using FFTW 3.3 and/or recent versions of IPP with AVX support for doing FFTs for both Astropulse v6 and SETI@home v7. At least some of the AVX routines developed for this thread should go in too, with some modifications.

Meanwhile there have been some AMD Bulldozer CPUs with AVX support released. I'd like to see some test runs of J45 (from my earlier post (http://lunatics.kwsn.net/1-discussion-forum/avx-optimized-app-development.msg37870.html#msg37870)) on those CPUs, the AVX implementation is likely to respond differently than Intel's. Win 7 SP1 / Windows Server 2008 R2 or later is still needed, MS will certainly not backport the changes needed for OS support to Vista or XP.

The AMD optimization manuals do hint at some of the ways their implementation differs, I might try some further variations if the tests indicate a need.
                                                          Joe
Title: Re: AVX Optimized App Development
Post by: arkayn on 09 Mar 2012, 04:48:41 pm
FX-4100

=========================================================
Ftst_v7_J45 started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                v_BaseLineSmooth (no other)

              v_GetPowerSpectrum 0.000165 0.00000  test
             v_vGetPowerSpectrum 0.000064 0.00000  test
            v_vGetPowerSpectrum2 0.000072 0.00000  test
     v_vGetPowerSpectrumUnrolled 0.000052 0.00000  test
    v_vGetPowerSpectrumUnrolled2 0.000065 0.00000  test
           v_avxGetPowerSpectrum 0.000089 0.00000  test
     v_vGetPowerSpectrumUnrolled 0.000052 0.00000  choice

                     v_ChirpData 0.009393 0.00000  test
                   fpu_ChirpData 0.017479 0.00000  test
               fpu_opt_ChirpData 0.009286 0.00000  test
             v_vChirpData_x86_64 0.053607 0.00000  test
               sse1_ChirpData_ak 0.010594 0.00000  test
             sse1_ChirpData_ak8e 0.007210 0.00000  test
             sse1_ChirpData_ak8h 0.007588 0.00000  test
               sse2_ChirpData_ak 0.007590 0.00000  test
              sse2_ChirpData_ak8 0.004558 0.00000  test
               sse3_ChirpData_ak 0.007020 0.00000  test
              sse3_ChirpData_ak8 0.004675 0.00000  test
                 avx_ChirpData_a 0.003773 0.00000  test
                 avx_ChirpData_b 0.003815 0.00000  test
                 avx_ChirpData_c 0.004179 0.00000  test
                 avx_ChirpData_d 0.003993 0.00000  test
                 avx_ChirpData_a 0.003773 0.00000  choice

                     v_Transpose 0.009390 0.00000  test
                    v_Transpose2 0.004041 0.00000  test
                    v_Transpose4 0.004842 0.00000  test
                    v_Transpose8 0.008043 0.00000  test
                  v_pfTranspose2 0.003915 0.00000  test
                  v_pfTranspose4 0.003701 0.00000  test
                  v_pfTranspose8 0.007678 0.00000  test
                   v_vTranspose4 0.002108 0.00000  test
                 v_vTranspose4np 0.002115 0.00000  test
                v_vTranspose4ntw 0.006964 0.00000  test
              v_vTranspose4x8ntw 0.003505 0.00000  test
             v_vTranspose4x16ntw 0.002523 0.00000  test
            v_vpfTranspose8x4ntw 0.006799 0.00000  test
            v_avxTranspose4x8ntw 0.003511 0.00000  test
           v_avxTranspose4x16ntw 0.002197 0.00000  test
            v_avxTranspose8x4ntw 0.006822 0.00000  test
          v_avxTranspose8x8ntw_a 0.003503 0.00000  test
          v_avxTranspose8x8ntw_b 0.003660 0.00000  test
                   v_vTranspose4 0.002108 0.00000  choice

                 FPU opt folding 0.003458 0.00000  test
                  AK SSE folding 0.000858 0.00000  test
                  BH SSE folding 0.000726 0.00000  test
                JS AVX_a folding 0.000736 0.00000  test
                JS AVX_c folding 0.000820 0.00000  test
                  BH SSE folding 0.000726 0.00000  choice

                   Test duration     4.63 seconds

Ftst_v7 completed successfully.
Title: Re: AVX Optimized App Development
Post by: KarVi on 11 Mar 2012, 10:14:58 am
AMD FX-8150 @4.3GHz

=========================================================
Ftst_v7_J45 started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                v_BaseLineSmooth (no other)

              v_GetPowerSpectrum 0.000138 0.00000  test
             v_vGetPowerSpectrum 0.000053 0.00000  test
            v_vGetPowerSpectrum2 0.000059 0.00000  test
     v_vGetPowerSpectrumUnrolled 0.000042 0.00000  test
    v_vGetPowerSpectrumUnrolled2 0.000054 0.00000  test
           v_avxGetPowerSpectrum 0.000066 0.00000  test
     v_vGetPowerSpectrumUnrolled 0.000042 0.00000  choice

                     v_ChirpData 0.007723 0.00000  test
                   fpu_ChirpData 0.014326 0.00000  test
               fpu_opt_ChirpData 0.007722 0.00000  test
             v_vChirpData_x86_64 0.043058 0.00000  test
               sse1_ChirpData_ak 0.006840 0.00000  test
             sse1_ChirpData_ak8e 0.005882 0.00000  test
             sse1_ChirpData_ak8h 0.005998 0.00000  test
               sse2_ChirpData_ak 0.006243 0.00000  test
              sse2_ChirpData_ak8 0.003763 0.00000  test
               sse3_ChirpData_ak 0.005858 0.00000  test
              sse3_ChirpData_ak8 0.003847 0.00000  test
                 avx_ChirpData_a 0.003160 0.00000  test
                 avx_ChirpData_b 0.003138 0.00000  test
                 avx_ChirpData_c 0.003387 0.00000  test
                 avx_ChirpData_d 0.003302 0.00000  test
                 avx_ChirpData_b 0.003138 0.00000  choice

                     v_Transpose 0.007775 0.00000  test
                    v_Transpose2 0.003264 0.00000  test
                    v_Transpose4 0.003892 0.00000  test
                    v_Transpose8 0.006481 0.00000  test
                  v_pfTranspose2 0.003249 0.00000  test
                  v_pfTranspose4 0.003022 0.00000  test
                  v_pfTranspose8 0.006095 0.00000  test
                   v_vTranspose4 0.001745 0.00000  test
                 v_vTranspose4np 0.001746 0.00000  test
                v_vTranspose4ntw 0.005688 0.00000  test
              v_vTranspose4x8ntw 0.003089 0.00000  test
             v_vTranspose4x16ntw 0.002110 0.00000  test
            v_vpfTranspose8x4ntw 0.005689 0.00000  test
            v_avxTranspose4x8ntw 0.003090 0.00000  test
           v_avxTranspose4x16ntw 0.001814 0.00000  test
            v_avxTranspose8x4ntw 0.005711 0.00000  test
          v_avxTranspose8x8ntw_a 0.003089 0.00000  test
          v_avxTranspose8x8ntw_b 0.003108 0.00000  test
                   v_vTranspose4 0.001745 0.00000  choice

                 FPU opt folding 0.002837 0.00000  test
                  AK SSE folding 0.000670 0.00000  test
                  BH SSE folding 0.000603 0.00000  test
                JS AVX_a folding 0.000613 0.00000  test
                JS AVX_c folding 0.000682 0.00000  test
                  BH SSE folding 0.000603 0.00000  choice

                   Test duration     3.66 seconds

Ftst_v7 completed successfully.
Title: Re: AVX Optimized App Development
Post by: Josef W. Segur on 06 May 2012, 12:29:32 am
I did sort of a survey of Beta hosts running stock S@H v7 with Bulldozer and Sandy Bridge CPUs to see which chirp variants were chosen most. Bulldozer were about 8% a, 34% b, 10% c, and 49% d. Sandy Bridge were about 13% a, 9% b, 9% c, and 69% d. That was for 277 results on Bulldozer and 296 on Sandy Bridge, so may be at least roughly meaningful.

I'll attach a J46 version of the test which has two added chirp variants which might possibly be even better than the d which was obviously the previous best. I left out the other kinds of functions this time, haven't figured out any significant improvements for those. But each run of the program now does the chirp tests 3 times.

What I'm aiming at, short term, is one best AVX chirp function which can be put into the existing Lunatics CPU code for a targeted AVX build. Hopefully we'll be able to use some dispatch functionality in future to keep the number of different builds down, but that's not ready yet.

Edit: attachment removed, see later posts for current chirp only version.
                                                               Joe
Title: Re: AVX Optimized App Development
Post by: arkayn on 06 May 2012, 12:39:50 am
FX-4100

=========================================================
Ftst_v7_J46_Chirponly started.

Ignored: j46.txt
Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.009781 0.00000  test
                   fpu_ChirpData 0.017815 0.00000  test
               fpu_opt_ChirpData 0.009309 0.00000  test
               sse1_ChirpData_ak 0.008972 0.00000  test
             sse1_ChirpData_ak8e 0.007175 0.00000  test
             sse1_ChirpData_ak8h 0.007744 0.00000  test
               sse2_ChirpData_ak 0.007798 0.00000  test
              sse2_ChirpData_ak8 0.004583 0.00000  test
               sse3_ChirpData_ak 0.007205 0.00000  test
              sse3_ChirpData_ak8 0.004993 0.00000  test
                 avx_ChirpData_a 0.003887 0.00000  test
                 avx_ChirpData_b 0.004019 0.00000  test
                 avx_ChirpData_c 0.004198 0.00000  test
                 avx_ChirpData_d 0.004099 0.00000  test
                 avx_ChirpData_e 0.004393 0.00000  test
                 avx_ChirpData_f 0.003727 0.00000  test
                 avx_ChirpData_f 0.003727 0.00000  choice

            Second run

                     v_ChirpData 0.009942 0.00000  test
                   fpu_ChirpData 0.017879 0.00000  test
               fpu_opt_ChirpData 0.009913 0.00000  test
               sse1_ChirpData_ak 0.008894 0.00000  test
             sse1_ChirpData_ak8e 0.007540 0.00000  test
             sse1_ChirpData_ak8h 0.007731 0.00000  test
               sse2_ChirpData_ak 0.007974 0.00000  test
              sse2_ChirpData_ak8 0.004620 0.00000  test
               sse3_ChirpData_ak 0.007186 0.00000  test
              sse3_ChirpData_ak8 0.004808 0.00000  test
                 avx_ChirpData_a 0.004083 0.00000  test
                 avx_ChirpData_b 0.003978 0.00000  test
                 avx_ChirpData_c 0.004161 0.00000  test
                 avx_ChirpData_d 0.004288 0.00000  test
                 avx_ChirpData_e 0.003972 0.00000  test
                 avx_ChirpData_f 0.003840 0.00000  test
                 avx_ChirpData_f 0.003840 0.00000  choice

            Third run

                     v_ChirpData 0.009758 0.00000  test
                   fpu_ChirpData 0.018261 0.00000  test
               fpu_opt_ChirpData 0.009494 0.00000  test
               sse1_ChirpData_ak 0.009149 0.00000  test
             sse1_ChirpData_ak8e 0.007363 0.00000  test
             sse1_ChirpData_ak8h 0.007963 0.00000  test
               sse2_ChirpData_ak 0.007715 0.00000  test
              sse2_ChirpData_ak8 0.004633 0.00000  test
               sse3_ChirpData_ak 0.007329 0.00000  test
              sse3_ChirpData_ak8 0.004750 0.00000  test
                 avx_ChirpData_a 0.004010 0.00000  test
                 avx_ChirpData_b 0.004000 0.00000  test
                 avx_ChirpData_c 0.004277 0.00000  test
                 avx_ChirpData_d 0.004212 0.00000  test
                 avx_ChirpData_e 0.004129 0.00000  test
                 avx_ChirpData_f 0.003745 0.00000  test
                 avx_ChirpData_f 0.003745 0.00000  choice

                   Test duration     9.91 seconds

Ftst_v7 completed successfully.
Title: Re: AVX Optimized App Development
Post by: arkayn on 06 May 2012, 12:41:39 am
i3-2120

=========================================================
Ftst_v7_J46_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.004987 0.00000  test
                   fpu_ChirpData 0.012602 0.00000  test
               fpu_opt_ChirpData 0.004939 0.00000  test
               sse1_ChirpData_ak 0.007443 0.00000  test
             sse1_ChirpData_ak8e 0.005782 0.00000  test
             sse1_ChirpData_ak8h 0.006308 0.00000  test
               sse2_ChirpData_ak 0.006596 0.00000  test
              sse2_ChirpData_ak8 0.004223 0.00000  test
               sse3_ChirpData_ak 0.007248 0.00000  test
              sse3_ChirpData_ak8 0.004744 0.00000  test
                 avx_ChirpData_a 0.002522 0.00000  test
                 avx_ChirpData_b 0.002197 0.00000  test
                 avx_ChirpData_c 0.002229 0.00000  test
                 avx_ChirpData_d 0.001941 0.00000  test
                 avx_ChirpData_e 0.001927 0.00000  test
                 avx_ChirpData_f 0.002687 0.00000  test
                 avx_ChirpData_e 0.001927 0.00000  choice

            Second run

                     v_ChirpData 0.004898 0.00000  test
                   fpu_ChirpData 0.012865 0.00000  test
               fpu_opt_ChirpData 0.004803 0.00000  test
               sse1_ChirpData_ak 0.007609 0.00000  test
             sse1_ChirpData_ak8e 0.006971 0.00000  test
             sse1_ChirpData_ak8h 0.006140 0.00000  test
               sse2_ChirpData_ak 0.011364 0.00000  test
              sse2_ChirpData_ak8 0.004304 0.00000  test
               sse3_ChirpData_ak 0.006403 0.00000  test
              sse3_ChirpData_ak8 0.004099 0.00000  test
                 avx_ChirpData_a 0.002169 0.00000  test
                 avx_ChirpData_b 0.002218 0.00000  test
                 avx_ChirpData_c 0.002841 0.00000  test
                 avx_ChirpData_d 0.002072 0.00000  test
                 avx_ChirpData_e 0.002096 0.00000  test
                 avx_ChirpData_f 0.002106 0.00000  test
                 avx_ChirpData_d 0.002072 0.00000  choice

            Third run

                     v_ChirpData 0.005091 0.00000  test
                   fpu_ChirpData 0.012386 0.00000  test
               fpu_opt_ChirpData 0.005903 0.00000  test
               sse1_ChirpData_ak 0.007593 0.00000  test
             sse1_ChirpData_ak8e 0.006529 0.00000  test
             sse1_ChirpData_ak8h 0.006921 0.00000  test
               sse2_ChirpData_ak 0.007636 0.00000  test
              sse2_ChirpData_ak8 0.004701 0.00000  test
               sse3_ChirpData_ak 0.008300 0.00000  test
              sse3_ChirpData_ak8 0.004363 0.00000  test
                 avx_ChirpData_a 0.002189 0.00000  test
                 avx_ChirpData_b 0.002560 0.00000  test
                 avx_ChirpData_c 0.002874 0.00000  test
                 avx_ChirpData_d 0.001963 0.00000  test
                 avx_ChirpData_e 0.002519 0.00000  test
                 avx_ChirpData_f 0.002402 0.00000  test
                 avx_ChirpData_d 0.001963 0.00000  choice

                   Test duration     9.38 seconds

Ftst_v7 completed successfully.
Title: Re: AVX Optimized App Development
Post by: KarVi on 06 May 2012, 02:10:02 am
FX-8150 @ 4.5G

=========================================================
Ftst_v7_J46_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.007729 0.00000  test
                   fpu_ChirpData 0.014011 0.00000  test
               fpu_opt_ChirpData 0.007529 0.00000  test
               sse1_ChirpData_ak 0.007005 0.00000  test
             sse1_ChirpData_ak8e 0.005742 0.00000  test
             sse1_ChirpData_ak8h 0.006084 0.00000  test
               sse2_ChirpData_ak 0.006046 0.00000  test
              sse2_ChirpData_ak8 0.003682 0.00000  test
               sse3_ChirpData_ak 0.005676 0.00000  test
              sse3_ChirpData_ak8 0.003735 0.00000  test
                 avx_ChirpData_a 0.003086 0.00000  test
                 avx_ChirpData_b 0.003053 0.00000  test
                 avx_ChirpData_c 0.003305 0.00000  test
                 avx_ChirpData_d 0.003230 0.00000  test
                 avx_ChirpData_e 0.003276 0.00000  test
                 avx_ChirpData_f 0.002984 0.00000  test
                 avx_ChirpData_f 0.002984 0.00000  choice

            Second run

                     v_ChirpData 0.007668 0.00000  test
                   fpu_ChirpData 0.014010 0.00000  test
               fpu_opt_ChirpData 0.007530 0.00000  test
               sse1_ChirpData_ak 0.007012 0.00000  test
             sse1_ChirpData_ak8e 0.005742 0.00000  test
             sse1_ChirpData_ak8h 0.006120 0.00000  test
               sse2_ChirpData_ak 0.006099 0.00000  test
              sse2_ChirpData_ak8 0.003680 0.00000  test
               sse3_ChirpData_ak 0.005676 0.00000  test
              sse3_ChirpData_ak8 0.003733 0.00000  test
                 avx_ChirpData_a 0.003084 0.00000  test
                 avx_ChirpData_b 0.003054 0.00000  test
                 avx_ChirpData_c 0.003298 0.00000  test
                 avx_ChirpData_d 0.003237 0.00000  test
                 avx_ChirpData_e 0.003160 0.00000  test
                 avx_ChirpData_f 0.002985 0.00000  test
                 avx_ChirpData_f 0.002985 0.00000  choice

            Third run

                     v_ChirpData 0.007691 0.00000  test
                   fpu_ChirpData 0.014007 0.00000  test
               fpu_opt_ChirpData 0.007550 0.00000  test
               sse1_ChirpData_ak 0.007008 0.00000  test
             sse1_ChirpData_ak8e 0.005766 0.00000  test
             sse1_ChirpData_ak8h 0.006121 0.00000  test
               sse2_ChirpData_ak 0.006102 0.00000  test
              sse2_ChirpData_ak8 0.003683 0.00000  test
               sse3_ChirpData_ak 0.005611 0.00000  test
              sse3_ChirpData_ak8 0.003735 0.00000  test
                 avx_ChirpData_a 0.003099 0.00000  test
                 avx_ChirpData_b 0.003056 0.00000  test
                 avx_ChirpData_c 0.003307 0.00000  test
                 avx_ChirpData_d 0.003235 0.00000  test
                 avx_ChirpData_e 0.003145 0.00000  test
                 avx_ChirpData_f 0.002989 0.00000  test
                 avx_ChirpData_f 0.002989 0.00000  choice

                   Test duration     7.65 seconds

Ftst_v7 completed successfully.
Title: Re: AVX Optimized App Development
Post by: Claggy on 06 May 2012, 06:49:57 am
i7-2600K @4.7GHz (Boinc running):

=========================================================
Ftst_v7_J46_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.009035 0.00000  test
                   fpu_ChirpData 0.015938 0.00000  test
               fpu_opt_ChirpData 0.008348 0.00000  test
               sse1_ChirpData_ak 0.008082 0.00000  test
             sse1_ChirpData_ak8e 0.006617 0.00000  test
             sse1_ChirpData_ak8h 0.006743 0.00000  test
               sse2_ChirpData_ak 0.007306 0.00000  test
              sse2_ChirpData_ak8 0.005201 0.00000  test
               sse3_ChirpData_ak 0.007197 0.00000  test
              sse3_ChirpData_ak8 0.004754 0.00000  test
                 avx_ChirpData_a 0.003005 0.00000  test
                 avx_ChirpData_b 0.002989 0.00000  test
                 avx_ChirpData_c 0.002858 0.00000  test
                 avx_ChirpData_d 0.002757 0.00000  test
                 avx_ChirpData_e 0.002860 0.00000  test
                 avx_ChirpData_f 0.003022 0.00000  test
                 avx_ChirpData_d 0.002757 0.00000  choice

            Second run

                     v_ChirpData 0.009295 0.00000  test
                   fpu_ChirpData 0.016223 0.00000  test
               fpu_opt_ChirpData 0.009218 0.00000  test
               sse1_ChirpData_ak 0.008023 0.00000  test
             sse1_ChirpData_ak8e 0.006668 0.00000  test
             sse1_ChirpData_ak8h 0.006970 0.00000  test
               sse2_ChirpData_ak 0.007304 0.00000  test
              sse2_ChirpData_ak8 0.007223 0.00000  test
               sse3_ChirpData_ak 0.006876 0.00000  test
              sse3_ChirpData_ak8 0.005352 0.00000  test
                 avx_ChirpData_a 0.002983 0.00000  test
                 avx_ChirpData_b 0.002851 0.00000  test
                 avx_ChirpData_c 0.002793 0.00000  test
                 avx_ChirpData_d 0.002774 0.00000  test
                 avx_ChirpData_e 0.002800 0.00000  test
                 avx_ChirpData_f 0.003027 0.00000  test
                 avx_ChirpData_d 0.002774 0.00000  choice

            Third run

                     v_ChirpData 0.010111 0.00000  test
                   fpu_ChirpData 0.015180 0.00000  test
               fpu_opt_ChirpData 0.007804 0.00000  test
               sse1_ChirpData_ak 0.007392 0.00000  test
             sse1_ChirpData_ak8e 0.005719 0.00000  test
             sse1_ChirpData_ak8h 0.006324 0.00000  test
               sse2_ChirpData_ak 0.006736 0.00000  test
              sse2_ChirpData_ak8 0.004659 0.00000  test
               sse3_ChirpData_ak 0.006483 0.00000  test
              sse3_ChirpData_ak8 0.004693 0.00000  test
                 avx_ChirpData_a 0.002670 0.00000  test
                 avx_ChirpData_b 0.002547 0.00000  test
                 avx_ChirpData_c 0.002927 0.00000  test
                 avx_ChirpData_d 0.002863 0.00000  test
                 avx_ChirpData_e 0.002530 0.00000  test
                 avx_ChirpData_f 0.002889 0.00000  test
                 avx_ChirpData_e 0.002530 0.00000  choice

                   Test duration     8.81 seconds

Ftst_v7 completed successfully.

=========================================================

i7-2600K @4.7GHz (Boinc computing suspended):

=========================================================
Ftst_v7_J46_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.003774 0.00000  test
                   fpu_ChirpData 0.008655 0.00000  test
               fpu_opt_ChirpData 0.003673 0.00000  test
               sse1_ChirpData_ak 0.005044 0.00000  test
             sse1_ChirpData_ak8e 0.004149 0.00000  test
             sse1_ChirpData_ak8h 0.004295 0.00000  test
               sse2_ChirpData_ak 0.004718 0.00000  test
              sse2_ChirpData_ak8 0.003110 0.00000  test
               sse3_ChirpData_ak 0.004573 0.00000  test
              sse3_ChirpData_ak8 0.003070 0.00000  test
                 avx_ChirpData_a 0.001458 0.00000  test
                 avx_ChirpData_b 0.001635 0.00000  test
                 avx_ChirpData_c 0.001466 0.00000  test
                 avx_ChirpData_d 0.001359 0.00000  test
                 avx_ChirpData_e 0.001523 0.00000  test
                 avx_ChirpData_f 0.001567 0.00000  test
                 avx_ChirpData_d 0.001359 0.00000  choice

            Second run

                     v_ChirpData 0.003752 0.00000  test
                   fpu_ChirpData 0.008567 0.00000  test
               fpu_opt_ChirpData 0.003682 0.00000  test
               sse1_ChirpData_ak 0.005043 0.00000  test
             sse1_ChirpData_ak8e 0.004156 0.00000  test
             sse1_ChirpData_ak8h 0.004301 0.00000  test
               sse2_ChirpData_ak 0.004715 0.00000  test
              sse2_ChirpData_ak8 0.003105 0.00000  test
               sse3_ChirpData_ak 0.004566 0.00000  test
              sse3_ChirpData_ak8 0.003084 0.00000  test
                 avx_ChirpData_a 0.001450 0.00000  test
                 avx_ChirpData_b 0.001618 0.00000  test
                 avx_ChirpData_c 0.001463 0.00000  test
                 avx_ChirpData_d 0.001364 0.00000  test
                 avx_ChirpData_e 0.001512 0.00000  test
                 avx_ChirpData_f 0.001567 0.00000  test
                 avx_ChirpData_d 0.001364 0.00000  choice

            Third run

                     v_ChirpData 0.003780 0.00000  test
                   fpu_ChirpData 0.008574 0.00000  test
               fpu_opt_ChirpData 0.003678 0.00000  test
               sse1_ChirpData_ak 0.005039 0.00000  test
             sse1_ChirpData_ak8e 0.004149 0.00000  test
             sse1_ChirpData_ak8h 0.004303 0.00000  test
               sse2_ChirpData_ak 0.004717 0.00000  test
              sse2_ChirpData_ak8 0.003103 0.00000  test
               sse3_ChirpData_ak 0.004552 0.00000  test
              sse3_ChirpData_ak8 0.003074 0.00000  test
                 avx_ChirpData_a 0.001457 0.00000  test
                 avx_ChirpData_b 0.001623 0.00000  test
                 avx_ChirpData_c 0.001465 0.00000  test
                 avx_ChirpData_d 0.001358 0.00000  test
                 avx_ChirpData_e 0.001517 0.00000  test
                 avx_ChirpData_f 0.001568 0.00000  test
                 avx_ChirpData_d 0.001358 0.00000  choice

                   Test duration     6.21 seconds

Ftst_v7 completed successfully.

Claggy
Title: Re: AVX Optimized App Development
Post by: Mike on 06 May 2012, 11:00:02 am
FX 8150 @4.4 GHZ

Vista 64

Ftst_v7_J46_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.013777 0.00000  test
                   fpu_ChirpData 0.019779 0.00000  test
               fpu_opt_ChirpData 0.013983 0.00000  test
               sse1_ChirpData_ak 0.008577 0.00000  test
             sse1_ChirpData_ak8e 0.008094 0.00000  test
             sse1_ChirpData_ak8h 0.008219 0.00000  test
               sse2_ChirpData_ak 0.007457 0.00000  test
              sse2_ChirpData_ak8 0.005295 0.00000  test
               sse3_ChirpData_ak 0.007173 0.00000  test
              sse3_ChirpData_ak8 0.005586 0.00000  test
                 avx_ChirpData_a not supported on CPU
                 avx_ChirpData_b not supported on CPU
                 avx_ChirpData_c not supported on CPU
                 avx_ChirpData_d not supported on CPU
                 avx_ChirpData_e not supported on CPU
                 avx_ChirpData_f not supported on CPU
              sse2_ChirpData_ak8 0.005295 0.00000  choice

            Second run

                     v_ChirpData 0.014368 0.00000  test
                   fpu_ChirpData 0.020133 0.00000  test
               fpu_opt_ChirpData 0.014774 0.00000  test
               sse1_ChirpData_ak 0.009611 0.00000  test
             sse1_ChirpData_ak8e 0.008270 0.00000  test
             sse1_ChirpData_ak8h 0.008133 0.00000  test
               sse2_ChirpData_ak 0.007581 0.00000  test
              sse2_ChirpData_ak8 0.005770 0.00000  test
               sse3_ChirpData_ak 0.007714 0.00000  test
              sse3_ChirpData_ak8 0.005994 0.00000  test
                 avx_ChirpData_a not supported on CPU
                 avx_ChirpData_b not supported on CPU
                 avx_ChirpData_c not supported on CPU
                 avx_ChirpData_d not supported on CPU
                 avx_ChirpData_e not supported on CPU
                 avx_ChirpData_f not supported on CPU
              sse2_ChirpData_ak8 0.005770 0.00000  choice

            Third run

                     v_ChirpData 0.015319 0.00000  test
                   fpu_ChirpData 0.019830 0.00000  test
               fpu_opt_ChirpData 0.014914 0.00000  test
               sse1_ChirpData_ak 0.008400 0.00000  test
             sse1_ChirpData_ak8e 0.008292 0.00000  test
             sse1_ChirpData_ak8h 0.008653 0.00000  test
               sse2_ChirpData_ak 0.008362 0.00000  test
              sse2_ChirpData_ak8 0.006021 0.00000  test
               sse3_ChirpData_ak 0.007947 0.00000  test
              sse3_ChirpData_ak8 0.006008 0.00000  test
                 avx_ChirpData_a not supported on CPU
                 avx_ChirpData_b not supported on CPU
                 avx_ChirpData_c not supported on CPU
                 avx_ChirpData_d not supported on CPU
                 avx_ChirpData_e not supported on CPU
                 avx_ChirpData_f not supported on CPU
              sse3_ChirpData_ak8 0.006008 0.00000  choice

                   Test duration     7.70 seconds

Windows 8 CP

Ftst_v7 completed successfully.
=========================================================
Ftst_v7_J46_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.009532 0.00000  test
                   fpu_ChirpData 0.014579 0.00000  test
               fpu_opt_ChirpData 0.010973 0.00000  test
               sse1_ChirpData_ak 0.007270 0.00000  test
             sse1_ChirpData_ak8e 0.005956 0.00000  test
             sse1_ChirpData_ak8h 0.006514 0.00000  test
               sse2_ChirpData_ak 0.006356 0.00000  test
              sse2_ChirpData_ak8 0.003823 0.00000  test
               sse3_ChirpData_ak 0.005874 0.00000  test
              sse3_ChirpData_ak8 0.003933 0.00000  test
                 avx_ChirpData_a 0.003266 0.00000  test
                 avx_ChirpData_b 0.003259 0.00000  test
                 avx_ChirpData_c 0.003489 0.00000  test
                 avx_ChirpData_d 0.003396 0.00000  test
                 avx_ChirpData_e 0.003249 0.00000  test
                 avx_ChirpData_f 0.003150 0.00000  test
                 avx_ChirpData_f 0.003150 0.00000  choice

            Second run

                     v_ChirpData 0.010624 0.00000  test
                   fpu_ChirpData 0.014424 0.00000  test
               fpu_opt_ChirpData 0.010814 0.00000  test
               sse1_ChirpData_ak 0.007306 0.00000  test
             sse1_ChirpData_ak8e 0.006028 0.00000  test
             sse1_ChirpData_ak8h 0.006386 0.00000  test
               sse2_ChirpData_ak 0.006246 0.00000  test
              sse2_ChirpData_ak8 0.003924 0.00000  test
               sse3_ChirpData_ak 0.005858 0.00000  test
              sse3_ChirpData_ak8 0.003856 0.00000  test
                 avx_ChirpData_a 0.003388 0.00000  test
                 avx_ChirpData_b 0.003372 0.00000  test
                 avx_ChirpData_c 0.003444 0.00000  test
                 avx_ChirpData_d 0.003420 0.00000  test
                 avx_ChirpData_e 0.003288 0.00000  test
                 avx_ChirpData_f 0.003243 0.00000  test
                 avx_ChirpData_f 0.003243 0.00000  choice

            Third run

                     v_ChirpData 0.010755 0.00000  test
                   fpu_ChirpData 0.014522 0.00000  test
               fpu_opt_ChirpData 0.010650 0.00000  test
               sse1_ChirpData_ak 0.007303 0.00000  test
             sse1_ChirpData_ak8e 0.005991 0.00000  test
             sse1_ChirpData_ak8h 0.006305 0.00000  test
               sse2_ChirpData_ak 0.006294 0.00000  test
              sse2_ChirpData_ak8 0.003958 0.00000  test
               sse3_ChirpData_ak 0.005834 0.00000  test
              sse3_ChirpData_ak8 0.003853 0.00000  test
                 avx_ChirpData_a 0.003438 0.00000  test
                 avx_ChirpData_b 0.003351 0.00000  test
                 avx_ChirpData_c 0.003511 0.00000  test
                 avx_ChirpData_d 0.003449 0.00000  test
                 avx_ChirpData_e 0.003353 0.00000  test
                 avx_ChirpData_f 0.003294 0.00000  test
                 avx_ChirpData_f 0.003294 0.00000  choice

                   Test duration     8.25 seconds

Ftst_v7 completed successfully.
Title: Re: AVX Optimized App Development
Post by: Josef W. Segur on 07 May 2012, 01:45:28 pm
Hmm, my hopes for a single best variant for both Bulldozer and Sandy Bridge are fading.

I'm still hoping to improve things further for Bulldozer, the attached J47 test has several subvariants of f with the prefetch distance varied from 2 to 6 cache lines (was 4 in J46). Possibly one will get the input data to L1 at just the right time, at least there may be some observable differences.

Edit: Attachment removed, see later post for current chirp only test.
                                                           Joe
Title: Re: AVX Optimized App Development
Post by: arkayn on 07 May 2012, 02:45:52 pm
FX-4100

=========================================================
Ftst_v7_J47_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.009631 0.00000  test
                   fpu_ChirpData 0.018620 0.00000  test
               fpu_opt_ChirpData 0.009660 0.00000  test
             sse1_ChirpData_ak8e 0.007727 0.00000  test
              sse2_ChirpData_ak8 0.004670 0.00000  test
              sse3_ChirpData_ak8 0.004718 0.00000  test
                 avx_ChirpData_a 0.005349 0.00000  test
                 avx_ChirpData_b 0.004372 0.00000  test
                 avx_ChirpData_c 0.005326 0.00000  test
                 avx_ChirpData_d 0.004810 0.00000  test
                 avx_ChirpData_e 0.004443 0.00000  test
                avx_ChirpData_f2 0.003933 0.00000  test
                avx_ChirpData_f3 0.004052 0.00000  test
                avx_ChirpData_f4 0.004437 0.00000  test
                avx_ChirpData_f5 0.004403 0.00000  test
                avx_ChirpData_f6 0.004202 0.00000  test
                avx_ChirpData_f2 0.003933 0.00000  choice

            Second run

                     v_ChirpData 0.009733 0.00000  test
                   fpu_ChirpData 0.019518 0.00000  test
               fpu_opt_ChirpData 0.009704 0.00000  test
             sse1_ChirpData_ak8e 0.007881 0.00000  test
              sse2_ChirpData_ak8 0.004756 0.00000  test
              sse3_ChirpData_ak8 0.004759 0.00000  test
                 avx_ChirpData_a 0.004677 0.00000  test
                 avx_ChirpData_b 0.004744 0.00000  test
                 avx_ChirpData_c 0.005402 0.00000  test
                 avx_ChirpData_d 0.004839 0.00000  test
                 avx_ChirpData_e 0.004657 0.00000  test
                avx_ChirpData_f2 0.004321 0.00000  test
                avx_ChirpData_f3 0.004221 0.00000  test
                avx_ChirpData_f4 0.003977 0.00000  test
                avx_ChirpData_f5 0.004067 0.00000  test
                avx_ChirpData_f6 0.004336 0.00000  test
                avx_ChirpData_f4 0.003977 0.00000  choice

            Third run

                     v_ChirpData 0.009881 0.00000  test
                   fpu_ChirpData 0.019005 0.00000  test
               fpu_opt_ChirpData 0.009598 0.00000  test
             sse1_ChirpData_ak8e 0.008132 0.00000  test
              sse2_ChirpData_ak8 0.004756 0.00000  test
              sse3_ChirpData_ak8 0.004812 0.00000  test
                 avx_ChirpData_a 0.004607 0.00000  test
                 avx_ChirpData_b 0.004537 0.00000  test
                 avx_ChirpData_c 0.004586 0.00000  test
                 avx_ChirpData_d 0.004348 0.00000  test
                 avx_ChirpData_e 0.004533 0.00000  test
                avx_ChirpData_f2 0.004246 0.00000  test
                avx_ChirpData_f3 0.004469 0.00000  test
                avx_ChirpData_f4 0.004122 0.00000  test
                avx_ChirpData_f5 0.004541 0.00000  test
                avx_ChirpData_f6 0.004264 0.00000  test
                avx_ChirpData_f4 0.004122 0.00000  choice

                   Test duration     9.89 seconds

Ftst_v7 completed successfully.
Title: Re: AVX Optimized App Development
Post by: arkayn on 07 May 2012, 02:47:29 pm
i3-2120

=========================================================
Ftst_v7_J47_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.005192 0.00000  test
                   fpu_ChirpData 0.016616 0.00000  test
               fpu_opt_ChirpData 0.005312 0.00000  test
             sse1_ChirpData_ak8e 0.007554 0.00000  test
              sse2_ChirpData_ak8 0.004366 0.00000  test
              sse3_ChirpData_ak8 0.004680 0.00000  test
                 avx_ChirpData_a 0.002474 0.00000  test
                 avx_ChirpData_b 0.002890 0.00000  test
                 avx_ChirpData_c 0.002728 0.00000  test
                 avx_ChirpData_d 0.002087 0.00000  test
                 avx_ChirpData_e 0.002756 0.00000  test
                avx_ChirpData_f2 0.002708 0.00000  test
                avx_ChirpData_f3 0.002074 0.00000  test
                avx_ChirpData_f4 0.002303 0.00000  test
                avx_ChirpData_f5 0.002295 0.00000  test
                avx_ChirpData_f6 0.002532 0.00000  test
                avx_ChirpData_f3 0.002074 0.00000  choice

            Second run

                     v_ChirpData 0.007313 0.00000  test
                   fpu_ChirpData 0.015500 0.00000  test
               fpu_opt_ChirpData 0.005429 0.00000  test
             sse1_ChirpData_ak8e 0.006784 0.00000  test
              sse2_ChirpData_ak8 0.004199 0.00000  test
              sse3_ChirpData_ak8 0.004349 0.00000  test
                 avx_ChirpData_a 0.002453 0.00000  test
                 avx_ChirpData_b 0.002080 0.00000  test
                 avx_ChirpData_c 0.002121 0.00000  test
                 avx_ChirpData_d 0.002363 0.00000  test
                 avx_ChirpData_e 0.002128 0.00000  test
                avx_ChirpData_f2 0.002339 0.00000  test
                avx_ChirpData_f3 0.002652 0.00000  test
                avx_ChirpData_f4 0.002237 0.00000  test
                avx_ChirpData_f5 0.003082 0.00000  test
                avx_ChirpData_f6 0.002211 0.00000  test
                 avx_ChirpData_b 0.002080 0.00000  choice

            Third run

                     v_ChirpData 0.005128 0.00000  test
                   fpu_ChirpData 0.013508 0.00000  test
               fpu_opt_ChirpData 0.005062 0.00000  test
             sse1_ChirpData_ak8e 0.005944 0.00000  test
              sse2_ChirpData_ak8 0.004307 0.00000  test
              sse3_ChirpData_ak8 0.004244 0.00000  test
                 avx_ChirpData_a 0.002100 0.00000  test
                 avx_ChirpData_b 0.002253 0.00000  test
                 avx_ChirpData_c 0.002125 0.00000  test
                 avx_ChirpData_d 0.001955 0.00000  test
                 avx_ChirpData_e 0.002250 0.00000  test
                avx_ChirpData_f2 0.002177 0.00000  test
                avx_ChirpData_f3 0.002137 0.00000  test
                avx_ChirpData_f4 0.002128 0.00000  test
                avx_ChirpData_f5 0.002131 0.00000  test
                avx_ChirpData_f6 0.002574 0.00000  test
                 avx_ChirpData_d 0.001955 0.00000  choice

                   Test duration     8.86 seconds

Ftst_v7 completed successfully.
Title: Re: AVX Optimized App Development
Post by: Claggy on 08 May 2012, 06:25:57 am
i7-2600K @4.7GHz (Boinc runninG):

=========================================================
Ftst_v7_J47_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.008860 0.00000&nb1p; test
              &bbsp;    fpu_ChirpData 0.016684 0.00000  test
               fpu_opt_ChirpData 0.008903 0.00000  test
          &nbB`;  sse1_ChirpData_ak8e 0.006385 0.00000  test
              sse2_ChirpData_ak8 0.006487 0.00000  test
              sse3_ChirpData_ak8 0.004559 0.00000  test
              &nb 0;  avx_ChirpData_a 0.003887 0.00000  test
                 avx_ChirpData_b 0.002730 0.00000  test
                 avx_ChirpData_c 0.002785 0.00000  test
                 avx_ChirpData_d 0.002783 0.00000  test
                 avx_ChirpData_e 0.002666 0.00000  test
                avx_ChirpData_f2 0.002879 0.00000  te{u
                avx_ChirpData_f3 0.002895 0.00000  test
                avx_ChirpData_f4 0.002793 0.00000  test
                avx_ChirpData_f5 0.002855 0.00000  test
                avx_ChirpData_f6 0.002730 0.00000  test
                 avx_ChirpData_e 0.002666 0.00000  choice

            Second run

                     v_ChirpData 0.009176 0.00000  test
                   fpu_ChirpData 0.015542 0.00000  test
               fpu_opt_ChirpData 0.008050 0.00000  test
             sse1_ChirpData_ak8e 0.006373 0.00000  test
              sse2_ChirpData_ak8 0.004997 0.00000  test
              sse3_ChirpData_ak8 0.005030 0.00000  test
              &nb 0;  avx_ChirpData_a 0.002759 0.00000  test
  &nbpp;              avx_ChirpData_b 0.002882 0.00000  test
                 avx_ChirpData_c 0.002757 0.00000  test
                 avx_ChirpData_d 0.002749 0.00000  test
                 avx_ChirpData_e 0.002624 0.00000  test
                avx_ChirpData_f2 0.002999 0.00000  test
                avx_ChirpData_f3 0.002861 0.00000  test
                avx_ChirpData_f4 0.002781 0.00000  test
                avx_ChirpData_f5 0.003006 0.00000&nb1p; test
              &fbsp; avx_ChirpData_f6 0.002831 0.00000  test
                 avx_ChirpData_e 0.002624 0.00000  choice

            Third run

                     v_ChirpData 0.009784 0.00000  test
                   fpu_ChirpData 0.015763 0.00000  test
               fpu_opt_ChirpData 0.008842 0.00000  test
    &fbsp;        sse1_ChirpData_ak8e 0.006321 0.00000  test
              sse2_ChirpData_ak8 0.004980 0.00000  test
  &nbp0;           sse3_ChirpData_ak8 0.005050 0.00000  test
                 avx_ChirpData_a 0.002750 0.00000  test
                 avx_ChirpData_b 0.004515 0.00000  test
                 avx_ChirpData_c 0.002876 0.00000  test
                 avx_ChirpData_d 0.003186 0.00000  test
                 avx_ChirpData_e 0.002674 0.00000  test
                avx_ChirpData_f2 0.002961 0&00000  test
                avx_ChirpData_f3 0.002739 0.00000  test
                avx_ChirpData_f4 0.002916 0.00000  test
                avx_ChirpData_f5 0.002791 0.00000  tåst
                avx_ChirpData_f6 0.002862 0.00000  test
                 avx_ChirpData_e 0.002674 0.00000  choice

    &bbsp;              Test duration    8.37 seconds

Ftst_v7 completed successfully.
=========================================================

i7-2600K @4.7GHz (Boinc computing suspended):

=========================================================
Ftst_H_J47_Chirponly started.

Optimal function choices:
--------------------------------------------------------
              &fbsp;             name   timing   error
--------------------------------------------------------
            &nbp0;        v_ChirpData 0.003838 0.00000  test
                   fpu_ChirpData 0.008704 0.00000  test
               fpu_opt_ChirpData 0.003722 0.00000  test
             sse1_ChirpData_ak8e 0.004215 0.00000  test
              sse2_ChirpData_ak8 0.003153 0.00000  test
              sse3_ChirpData_ak8 0.003115 0.00000  test
                 avx_ChirpData_a 0.001477 0.00000  test
                 avx_ChirpData_b 0.001646  .00000  test
                 avx_ChirpData_c 0.001490 0.00000  test
                 avx_ChirpData_d 0.001383 0.00000  test
                 avx_ChirpData_e 0.001538 0.00000  test
                avx_ChirpData_f2 0.001624 0.00000  test
                avx_ChirpData_f3 0.001604 0.00000  test
                avx_ChirpData_f4 0.001585 0.00000  test
                avx_ChirpData_f5 0.001590 0.00000  test
&fbsp;               avx_ChirpData_f6 0.001580 0.00000  test
                 avx_ChirpData_d 0.001383 0.00000  choice

            Second run

                     v_ChirpData 0.003820 0.00000&n`pp; test
                   fpu_ChirpData 0.008700 0.00000  test
               fpu_opt_ChirpData 0.003732 0.00000  test
             sse1_ChirpData_ak8e 0.004214 0.00000  test
              sse2_ChirpData_ak8 0.003154 0.00000  test
              sse3_ChirpData_ak8 0.003121 0.00000  test
                 avx_ChirpData_a 0.001488 0.00000  test
                 avx_ChirpData_b 0.001651 0.00000  test
                 avx_ChirpData_c 0.001490 0.00000  test
                 avx_ChirpData_d 0.001422 0.00000  test
                 avx_ChirpData_e 0.001538 0.00000  test
                avx_ChirpData_f2 0.001625 0.00000  test
                avx_ChirpData_f3 0.001600 0.00000  test
                avx_ChirpData_f4 0.001548 0.00000  test
                avx_ChirpData_f5 0.001585 0.00000  test
                avx_ChirpData_f6 0.001583 0.00000  test
                 avx_ChirpData_d 0.001422 0.00000  choice

        &fbsp;   Third run

                     v_ChirpData 0.003832 0.00000  test
                   fpu_ChirpData 0.008713 0.00000  test
               fpu_opt_ChirpData 0.003722 0.00000  test
             sse1_ChirpData_ak8e 0.004213 0.00000  test
              sse2_ChirpData_ak8 0.003153 0.00000  test
              sse3_ChirpData_ak8 0.003117 0.00000  test
                 avx_ChirpData_a 0.001474 0.00000  test
                 avx_ChirpData_b 0.001645 0.00000  test
                 avx_ChirpData_c 0.001488 0.00000  test
                 avx_ChirpData_d 0.001378 0.00000  test
                 avx_ChirpData_e 0.001542 0.00000  test
                avx_ChirpData_f2 0.001623 0.00000  test
                avx_ChirpData_f3 0.001608 0.00000  test
                avx_ChirpData_f4 0.001614 0.00000  test
                avx_ChirpData_f5 0.001584 0.00000  test
                avx_ChirpData_f6 0.001582 0.00000  test
                 avx_ChirpData_d 0.001378 0.00000  choice

                   Test duration     5.96 seconds

Ftst_v7 completed successfully.

Claggy
Title: Re: AVX Optimized App Development
Post by: KarVi on 08 May 2012, 12:27:17 pm
FX 8150@4.5G

Boinc paused.

=========================================================
Ftst_v7_J47_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.007717 0.00000  test
                   fpu_ChirpData 0.014005 0.00000  test
               fpu_opt_ChirpData 0.007586 0.00000  test
             sse1_ChirpData_ak8e 0.005772 0.00000  test
              sse2_ChirpData_ak8 0.003663 0.00000  test
              sse3_ChirpData_ak8 0.003739 0.00000  test
                 avx_ChirpData_a 0.003091 0.00000  test
                 avx_ChirpData_b 0.003054 0.00000  test
                 avx_ChirpData_c 0.003303 0.00000  test
                 avx_ChirpData_d 0.003233 0.00000  test
                 avx_ChirpData_e 0.003141 0.00000  test
                avx_ChirpData_f2 0.003018 0.00000  test
                avx_ChirpData_f3 0.002999 0.00000  test
                avx_ChirpData_f4 0.002985 0.00000  test
                avx_ChirpData_f5 0.002971 0.00000  test
                avx_ChirpData_f6 0.002962 0.00000  test
                avx_ChirpData_f6 0.002962 0.00000  choice

            Second run

                     v_ChirpData 0.007712 0.00000  test
                   fpu_ChirpData 0.014014 0.00000  test
               fpu_opt_ChirpData 0.007585 0.00000  test
             sse1_ChirpData_ak8e 0.005765 0.00000  test
              sse2_ChirpData_ak8 0.003664 0.00000  test
              sse3_ChirpData_ak8 0.003735 0.00000  test
                 avx_ChirpData_a 0.003087 0.00000  test
                 avx_ChirpData_b 0.003054 0.00000  test
                 avx_ChirpData_c 0.003295 0.00000  test
                 avx_ChirpData_d 0.003230 0.00000  test
                 avx_ChirpData_e 0.003139 0.00000  test
                avx_ChirpData_f2 0.003020 0.00000  test
                avx_ChirpData_f3 0.002997 0.00000  test
                avx_ChirpData_f4 0.002981 0.00000  test
                avx_ChirpData_f5 0.002968 0.00000  test
                avx_ChirpData_f6 0.002954 0.00000  test
                avx_ChirpData_f6 0.002954 0.00000  choice

            Third run

                     v_ChirpData 0.007753 0.00000  test
                   fpu_ChirpData 0.013998 0.00000  test
               fpu_opt_ChirpData 0.007643 0.00000  test
             sse1_ChirpData_ak8e 0.005730 0.00000  test
              sse2_ChirpData_ak8 0.003675 0.00000  test
              sse3_ChirpData_ak8 0.003738 0.00000  test
                 avx_ChirpData_a 0.003090 0.00000  test
                 avx_ChirpData_b 0.003052 0.00000  test
                 avx_ChirpData_c 0.003302 0.00000  test
                 avx_ChirpData_d 0.003231 0.00000  test
                 avx_ChirpData_e 0.003145 0.00000  test
                avx_ChirpData_f2 0.003019 0.00000  test
                avx_ChirpData_f3 0.002999 0.00000  test
                avx_ChirpData_f4 0.002987 0.00000  test
                avx_ChirpData_f5 0.002980 0.00000  test
                avx_ChirpData_f6 0.002960 0.00000  test
                avx_ChirpData_f6 0.002960 0.00000  choice

                   Test duration     7.27 seconds

Ftst_v7 completed successfully.

Seems my 8150 is more consistent about choosing f6 than arkayn's FX-4100... I wonder why?
Title: Re: AVX Optimized App Development
Post by: KarVi on 08 May 2012, 12:35:46 pm
One more test with boinc running (7xMB + 1xAP)

Seems to still prefer f6, allthough not as clearly as before.

=========================================================
Ftst_v7_J47_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.010724 0.00000  test
                   fpu_ChirpData 0.019692 0.00000  test
               fpu_opt_ChirpData 0.010554 0.00000  test
             sse1_ChirpData_ak8e 0.007564 0.00000  test
              sse2_ChirpData_ak8 0.004928 0.00000  test
              sse3_ChirpData_ak8 0.005026 0.00000  test
                 avx_ChirpData_a 0.004259 0.00000  test
                 avx_ChirpData_b 0.003701 0.00000  test
                 avx_ChirpData_c 0.004109 0.00000  test
                 avx_ChirpData_d 0.003646 0.00000  test
                 avx_ChirpData_e 0.003763 0.00000  test
                avx_ChirpData_f2 0.004385 0.00000  test
                avx_ChirpData_f3 0.004394 0.00000  test
                avx_ChirpData_f4 0.004408 0.00000  test
                avx_ChirpData_f5 0.004409 0.00000  test
                avx_ChirpData_f6 0.004051 0.00000  test
                 avx_ChirpData_d 0.003646 0.00000  choice

            Second run

                     v_ChirpData 0.011319 0.00000  test
                   fpu_ChirpData 0.018217 0.00000  test
               fpu_opt_ChirpData 0.011744 0.00000  test
             sse1_ChirpData_ak8e 0.006820 0.00000  test
              sse2_ChirpData_ak8 0.004587 0.00000  test
              sse3_ChirpData_ak8 0.004665 0.00000  test
                 avx_ChirpData_a 0.004079 0.00000  test
                 avx_ChirpData_b 0.003883 0.00000  test
                 avx_ChirpData_c 0.004043 0.00000  test
                 avx_ChirpData_d 0.003880 0.00000  test
                 avx_ChirpData_e 0.003750 0.00000  test
                avx_ChirpData_f2 0.003807 0.00000  test
                avx_ChirpData_f3 0.003727 0.00000  test
                avx_ChirpData_f4 0.003738 0.00000  test
                avx_ChirpData_f5 0.003711 0.00000  test
                avx_ChirpData_f6 0.003696 0.00000  test
                avx_ChirpData_f6 0.003696 0.00000  choice

            Third run

                     v_ChirpData 0.012288 0.00000  test
                   fpu_ChirpData 0.017790 0.00000  test
               fpu_opt_ChirpData 0.011402 0.00000  test
             sse1_ChirpData_ak8e 0.006751 0.00000  test
              sse2_ChirpData_ak8 0.004733 0.00000  test
              sse3_ChirpData_ak8 0.004589 0.00000  test
                 avx_ChirpData_a 0.004029 0.00000  test
                 avx_ChirpData_b 0.003895 0.00000  test
                 avx_ChirpData_c 0.003974 0.00000  test
                 avx_ChirpData_d 0.003813 0.00000  test
                 avx_ChirpData_e 0.003718 0.00000  test
                avx_ChirpData_f2 0.003792 0.00000  test
                avx_ChirpData_f3 0.003801 0.00000  test
                avx_ChirpData_f4 0.003657 0.00000  test
                avx_ChirpData_f5 0.003624 0.00000  test
                avx_ChirpData_f6 0.003577 0.00000  test
                avx_ChirpData_f6 0.003577 0.00000  choice

                   Test duration     9.10 seconds

Ftst_v7 completed successfully.
Title: Re: AVX Optimized App Development
Post by: Josef W. Segur on 08 May 2012, 11:46:52 pm
...
Seems my 8150 is more consistent about choosing f6 than arkayn's FX-4100... I wonder why?

Maybe a measure of how well the hardware prefetching is matched to the memory system. In the attached J48 I've added an fn with no software prefetching, perhaps your system will prefer that over f6.

I've also modified the way the test time is calculated slightly. Each test consists of ten runs and the average of all was used, now I'm dropping the slowest of the ten runs to reduce the effect of transient conditions. I expect it to still vary more with BOINC running than without, though.

Edit: Attachment removed, see later post for current test.
                                                               Joe
Title: Re: AVX Optimized App Development
Post by: arkayn on 09 May 2012, 12:45:22 am
I don't know if it makes all that much difference but I am running BOINC on the GTX460 while the test is running, the CPU's are idle though.

=========================================================
Ftst_v7_J48_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.009465 0.00000  test
                   fpu_ChirpData 0.018363 0.00000  test
               fpu_opt_ChirpData 0.009566 0.00000  test
             sse1_ChirpData_ak8e 0.007725 0.00000  test
              sse2_ChirpData_ak8 0.004682 0.00000  test
              sse3_ChirpData_ak8 0.004917 0.00000  test
                 avx_ChirpData_a 0.004643 0.00000  test
                 avx_ChirpData_b 0.004889 0.00000  test
                 avx_ChirpData_c 0.004597 0.00000  test
                 avx_ChirpData_d 0.004607 0.00000  test
                 avx_ChirpData_e 0.004117 0.00000  test
                avx_ChirpData_f2 0.003935 0.00000  test
                avx_ChirpData_f3 0.004306 0.00000  test
                avx_ChirpData_f4 0.003974 0.00000  test
                avx_ChirpData_f5 0.003947 0.00000  test
                avx_ChirpData_f6 0.004002 0.00000  test
                avx_ChirpData_fn 0.004189 0.00000  test
                avx_ChirpData_f2 0.003935 0.00000  choice

            Second run

                     v_ChirpData 0.009229 0.00000  test
                   fpu_ChirpData 0.017868 0.00000  test
               fpu_opt_ChirpData 0.009018 0.00000  test
             sse1_ChirpData_ak8e 0.007519 0.00000  test
              sse2_ChirpData_ak8 0.004623 0.00000  test
              sse3_ChirpData_ak8 0.004755 0.00000  test
                 avx_ChirpData_a 0.003940 0.00000  test
                 avx_ChirpData_b 0.003992 0.00000  test
                 avx_ChirpData_c 0.004212 0.00000  test
                 avx_ChirpData_d 0.004157 0.00000  test
                 avx_ChirpData_e 0.004050 0.00000  test
                avx_ChirpData_f2 0.004179 0.00000  test
                avx_ChirpData_f3 0.004142 0.00000  test
                avx_ChirpData_f4 0.003875 0.00000  test
                avx_ChirpData_f5 0.004078 0.00000  test
                avx_ChirpData_f6 0.004131 0.00000  test
                avx_ChirpData_fn 0.004142 0.00000  test
                avx_ChirpData_f4 0.003875 0.00000  choice

            Third run

                     v_ChirpData 0.009246 0.00000  test
                   fpu_ChirpData 0.018076 0.00000  test
               fpu_opt_ChirpData 0.009144 0.00000  test
             sse1_ChirpData_ak8e 0.007887 0.00000  test
              sse2_ChirpData_ak8 0.004614 0.00000  test
              sse3_ChirpData_ak8 0.004732 0.00000  test
                 avx_ChirpData_a 0.004012 0.00000  test
                 avx_ChirpData_b 0.003975 0.00000  test
                 avx_ChirpData_c 0.004200 0.00000  test
                 avx_ChirpData_d 0.004111 0.00000  test
                 avx_ChirpData_e 0.003970 0.00000  test
                avx_ChirpData_f2 0.003894 0.00000  test
                avx_ChirpData_f3 0.003784 0.00000  test
                avx_ChirpData_f4 0.003861 0.00000  test
                avx_ChirpData_f5 0.003912 0.00000  test
                avx_ChirpData_f6 0.003801 0.00000  test
                avx_ChirpData_fn 0.003966 0.00000  test
                avx_ChirpData_f3 0.003784 0.00000  choice

                   Test duration    10.19 seconds

Ftst_v7 completed successfully.
Title: Re: AVX Optimized App Development
Post by: arkayn on 09 May 2012, 12:47:40 am
Here is one with everything idle on the system.

=========================================================
Ftst_v7_J48_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.009247 0.00000  test
                   fpu_ChirpData 0.017567 0.00000  test
               fpu_opt_ChirpData 0.008871 0.00000  test
             sse1_ChirpData_ak8e 0.007218 0.00000  test
              sse2_ChirpData_ak8 0.004589 0.00000  test
              sse3_ChirpData_ak8 0.004675 0.00000  test
                 avx_ChirpData_a 0.003838 0.00000  test
                 avx_ChirpData_b 0.003844 0.00000  test
                 avx_ChirpData_c 0.004144 0.00000  test
                 avx_ChirpData_d 0.004042 0.00000  test
                 avx_ChirpData_e 0.003897 0.00000  test
                avx_ChirpData_f2 0.003701 0.00000  test
                avx_ChirpData_f3 0.003696 0.00000  test
                avx_ChirpData_f4 0.003701 0.00000  test
                avx_ChirpData_f5 0.003678 0.00000  test
                avx_ChirpData_f6 0.003678 0.00000  test
                avx_ChirpData_fn 0.004046 0.00000  test
                avx_ChirpData_f6 0.003678 0.00000  choice

            Second run

                     v_ChirpData 0.009537 0.00000  test
                   fpu_ChirpData 0.017549 0.00000  test
               fpu_opt_ChirpData 0.008801 0.00000  test
             sse1_ChirpData_ak8e 0.007091 0.00000  test
              sse2_ChirpData_ak8 0.004581 0.00000  test
              sse3_ChirpData_ak8 0.004691 0.00000  test
                 avx_ChirpData_a 0.003840 0.00000  test
                 avx_ChirpData_b 0.003835 0.00000  test
                 avx_ChirpData_c 0.004116 0.00000  test
                 avx_ChirpData_d 0.004036 0.00000  test
                 avx_ChirpData_e 0.003922 0.00000  test
                avx_ChirpData_f2 0.003738 0.00000  test
                avx_ChirpData_f3 0.003700 0.00000  test
                avx_ChirpData_f4 0.003722 0.00000  test
                avx_ChirpData_f5 0.003709 0.00000  test
                avx_ChirpData_f6 0.003696 0.00000  test
                avx_ChirpData_fn 0.003885 0.00000  test
                avx_ChirpData_f6 0.003696 0.00000  choice

            Third run

                     v_ChirpData 0.008990 0.00000  test
                   fpu_ChirpData 0.017410 0.00000  test
               fpu_opt_ChirpData 0.008669 0.00000  test
             sse1_ChirpData_ak8e 0.007166 0.00000  test
              sse2_ChirpData_ak8 0.004573 0.00000  test
              sse3_ChirpData_ak8 0.004653 0.00000  test
                 avx_ChirpData_a 0.003878 0.00000  test
                 avx_ChirpData_b 0.003845 0.00000  test
                 avx_ChirpData_c 0.004118 0.00000  test
                 avx_ChirpData_d 0.004046 0.00000  test
                 avx_ChirpData_e 0.003878 0.00000  test
                avx_ChirpData_f2 0.003707 0.00000  test
                avx_ChirpData_f3 0.003746 0.00000  test
                avx_ChirpData_f4 0.003841 0.00000  test
                avx_ChirpData_f5 0.003697 0.00000  test
                avx_ChirpData_f6 0.003668 0.00000  test
                avx_ChirpData_fn 0.003951 0.00000  test
                avx_ChirpData_f6 0.003668 0.00000  choice

                   Test duration     9.64 seconds

Ftst_v7 completed successfully.
Title: Re: AVX Optimized App Development
Post by: arkayn on 09 May 2012, 12:49:58 am
i3-2120, GTX560 crunching and CPU idle

=========================================================
Ftst_v7_J47_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.005192 0.00000  test
                   fpu_ChirpData 0.016616 0.00000  test
               fpu_opt_ChirpData 0.005312 0.00000  test
             sse1_ChirpData_ak8e 0.007554 0.00000  test
              sse2_ChirpData_ak8 0.004366 0.00000  test
              sse3_ChirpData_ak8 0.004680 0.00000  test
                 avx_ChirpData_a 0.002474 0.00000  test
                 avx_ChirpData_b 0.002890 0.00000  test
                 avx_ChirpData_c 0.002728 0.00000  test
                 avx_ChirpData_d 0.002087 0.00000  test
                 avx_ChirpData_e 0.002756 0.00000  test
                avx_ChirpData_f2 0.002708 0.00000  test
                avx_ChirpData_f3 0.002074 0.00000  test
                avx_ChirpData_f4 0.002303 0.00000  test
                avx_ChirpData_f5 0.002295 0.00000  test
                avx_ChirpData_f6 0.002532 0.00000  test
                avx_ChirpData_f3 0.002074 0.00000  choice

            Second run

                     v_ChirpData 0.007313 0.00000  test
                   fpu_ChirpData 0.015500 0.00000  test
               fpu_opt_ChirpData 0.005429 0.00000  test
             sse1_ChirpData_ak8e 0.006784 0.00000  test
              sse2_ChirpData_ak8 0.004199 0.00000  test
              sse3_ChirpData_ak8 0.004349 0.00000  test
                 avx_ChirpData_a 0.002453 0.00000  test
                 avx_ChirpData_b 0.002080 0.00000  test
                 avx_ChirpData_c 0.002121 0.00000  test
                 avx_ChirpData_d 0.002363 0.00000  test
                 avx_ChirpData_e 0.002128 0.00000  test
                avx_ChirpData_f2 0.002339 0.00000  test
                avx_ChirpData_f3 0.002652 0.00000  test
                avx_ChirpData_f4 0.002237 0.00000  test
                avx_ChirpData_f5 0.003082 0.00000  test
                avx_ChirpData_f6 0.002211 0.00000  test
                 avx_ChirpData_b 0.002080 0.00000  choice

            Third run

                     v_ChirpData 0.005128 0.00000  test
                   fpu_ChirpData 0.013508 0.00000  test
               fpu_opt_ChirpData 0.005062 0.00000  test
             sse1_ChirpData_ak8e 0.005944 0.00000  test
              sse2_ChirpData_ak8 0.004307 0.00000  test
              sse3_ChirpData_ak8 0.004244 0.00000  test
                 avx_ChirpData_a 0.002100 0.00000  test
                 avx_ChirpData_b 0.002253 0.00000  test
                 avx_ChirpData_c 0.002125 0.00000  test
                 avx_ChirpData_d 0.001955 0.00000  test
                 avx_ChirpData_e 0.002250 0.00000  test
                avx_ChirpData_f2 0.002177 0.00000  test
                avx_ChirpData_f3 0.002137 0.00000  test
                avx_ChirpData_f4 0.002128 0.00000  test
                avx_ChirpData_f5 0.002131 0.00000  test
                avx_ChirpData_f6 0.002574 0.00000  test
                 avx_ChirpData_d 0.001955 0.00000  choice

                   Test duration     8.86 seconds

Ftst_v7 completed successfully.
Title: Re: AVX Optimized App Development
Post by: arkayn on 09 May 2012, 12:51:23 am
i3-2120, idle

=========================================================
Ftst_v7_J48_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.004554 0.00000  test
                   fpu_ChirpData 0.012295 0.00000  test
               fpu_opt_ChirpData 0.004339 0.00000  test
             sse1_ChirpData_ak8e 0.006798 0.00000  test
              sse2_ChirpData_ak8 0.004179 0.00000  test
              sse3_ChirpData_ak8 0.004091 0.00000  test
                 avx_ChirpData_a 0.002076 0.00000  test
                 avx_ChirpData_b 0.002049 0.00000  test
                 avx_ChirpData_c 0.002097 0.00000  test
                 avx_ChirpData_d 0.002275 0.00000  test
                 avx_ChirpData_e 0.002107 0.00000  test
                avx_ChirpData_f2 0.002080 0.00000  test
                avx_ChirpData_f3 0.002063 0.00000  test
                avx_ChirpData_f4 0.002049 0.00000  test
                avx_ChirpData_f5 0.002050 0.00000  test
                avx_ChirpData_f6 0.002047 0.00000  test
                avx_ChirpData_fn 0.002191 0.00000  test
                avx_ChirpData_f6 0.002047 0.00000  choice

            Second run

                     v_ChirpData 0.004551 0.00000  test
                   fpu_ChirpData 0.012311 0.00000  test
               fpu_opt_ChirpData 0.004347 0.00000  test
             sse1_ChirpData_ak8e 0.005693 0.00000  test
              sse2_ChirpData_ak8 0.004187 0.00000  test
              sse3_ChirpData_ak8 0.004125 0.00000  test
                 avx_ChirpData_a 0.002071 0.00000  test
                 avx_ChirpData_b 0.002055 0.00000  test
                 avx_ChirpData_c 0.002099 0.00000  test
                 avx_ChirpData_d 0.001932 0.00000  test
                 avx_ChirpData_e 0.001932 0.00000  test
                avx_ChirpData_f2 0.002088 0.00000  test
                avx_ChirpData_f3 0.002060 0.00000  test
                avx_ChirpData_f4 0.002052 0.00000  test
                avx_ChirpData_f5 0.002050 0.00000  test
                avx_ChirpData_f6 0.002052 0.00000  test
                avx_ChirpData_fn 0.002187 0.00000  test
                 avx_ChirpData_d 0.001932 0.00000  choice

            Third run

                     v_ChirpData 0.004542 0.00000  test
                   fpu_ChirpData 0.012313 0.00000  test
               fpu_opt_ChirpData 0.004336 0.00000  test
             sse1_ChirpData_ak8e 0.005710 0.00000  test
              sse2_ChirpData_ak8 0.004181 0.00000  test
              sse3_ChirpData_ak8 0.004121 0.00000  test
                 avx_ChirpData_a 0.002073 0.00000  test
                 avx_ChirpData_b 0.002051 0.00000  test
                 avx_ChirpData_c 0.002099 0.00000  test
                 avx_ChirpData_d 0.001932 0.00000  test
                 avx_ChirpData_e 0.001932 0.00000  test
                avx_ChirpData_f2 0.002078 0.00000  test
                avx_ChirpData_f3 0.002061 0.00000  test
                avx_ChirpData_f4 0.002052 0.00000  test
                avx_ChirpData_f5 0.002053 0.00000  test
                avx_ChirpData_f6 0.002048 0.00000  test
                avx_ChirpData_fn 0.002186 0.00000  test
                 avx_ChirpData_e 0.001932 0.00000  choice

                   Test duration     8.94 seconds

Ftst_v7 completed successfully.
Title: Re: AVX Optimized App Development
Post by: Mike on 09 May 2012, 05:28:19 am
FX 8150 @4.4 GHZ

Win 8 CP

Ftst_v7_J48_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.008454 0.00000  test
                   fpu_ChirpData 0.014305 0.00000  test
               fpu_opt_ChirpData 0.009795 0.00000  test
             sse1_ChirpData_ak8e 0.005828 0.00000  test
              sse2_ChirpData_ak8 0.003836 0.00000  test
              sse3_ChirpData_ak8 0.003835 0.00000  test
                 avx_ChirpData_a 0.003266 0.00000  test
                 avx_ChirpData_b 0.003247 0.00000  test
                 avx_ChirpData_c 0.003435 0.00000  test
                 avx_ChirpData_d 0.003360 0.00000  test
                 avx_ChirpData_e 0.003214 0.00000  test
                avx_ChirpData_f2 0.003205 0.00000  test
                avx_ChirpData_f3 0.003171 0.00000  test
                avx_ChirpData_f4 0.003129 0.00000  test
                avx_ChirpData_f5 0.003122 0.00000  test
                avx_ChirpData_f6 0.003112 0.00000  test
                avx_ChirpData_fn 0.003147 0.00000  test
                avx_ChirpData_f6 0.003112 0.00000  choice

            Second run

                     v_ChirpData 0.009746 0.00000  test
                   fpu_ChirpData 0.014194 0.00000  test
               fpu_opt_ChirpData 0.009803 0.00000  test
             sse1_ChirpData_ak8e 0.005828 0.00000  test
              sse2_ChirpData_ak8 0.003910 0.00000  test
              sse3_ChirpData_ak8 0.003845 0.00000  test
                 avx_ChirpData_a 0.003409 0.00000  test
                 avx_ChirpData_b 0.003379 0.00000  test
                 avx_ChirpData_c 0.003502 0.00000  test
                 avx_ChirpData_d 0.003457 0.00000  test
                 avx_ChirpData_e 0.003293 0.00000  test
                avx_ChirpData_f2 0.003418 0.00000  test
                avx_ChirpData_f3 0.003352 0.00000  test
                avx_ChirpData_f4 0.003270 0.00000  test
                avx_ChirpData_f5 0.003236 0.00000  test
                avx_ChirpData_f6 0.003192 0.00000  test
                avx_ChirpData_fn 0.003393 0.00000  test
                avx_ChirpData_f6 0.003192 0.00000  choice

            Third run

                     v_ChirpData 0.009865 0.00000  test
                   fpu_ChirpData 0.014297 0.00000  test
               fpu_opt_ChirpData 0.009830 0.00000  test
             sse1_ChirpData_ak8e 0.005848 0.00000  test
              sse2_ChirpData_ak8 0.003917 0.00000  test
              sse3_ChirpData_ak8 0.003848 0.00000  test
                 avx_ChirpData_a 0.003417 0.00000  test
                 avx_ChirpData_b 0.003311 0.00000  test
                 avx_ChirpData_c 0.003476 0.00000  test
                 avx_ChirpData_d 0.003420 0.00000  test
                 avx_ChirpData_e 0.003312 0.00000  test
                avx_ChirpData_f2 0.003422 0.00000  test
                avx_ChirpData_f3 0.003325 0.00000  test
                avx_ChirpData_f4 0.003279 0.00000  test
                avx_ChirpData_f5 0.003280 0.00000  test
                avx_ChirpData_f6 0.003194 0.00000  test
                avx_ChirpData_fn 0.003371 0.00000  test
                avx_ChirpData_f6 0.003194 0.00000  choice

                   Test duration     8.23 seconds

Ftst_v7 completed successfully.
Title: Re: AVX Optimized App Development
Post by: Claggy on 09 May 2012, 05:41:00 am
i7-2600K @4.7GHz (Boinc running):

=========================================================
Ftst_v7_J48_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.008760 0.00000  test
                   fpu_ChirpData 0.015042 0.00000  test
               fpu_opt_ChirpData 0.008035 0.00000  test
             sse1_ChirpData_ak8e 0.006087 0.00000  test
              sse2_ChirpData_ak8 0.005136 0.00000  test
              sse3_ChirpData_ak8 0.004889 0.00000  test
                 avx_ChirpData_a 0.002961 0.00000  test
                 avx_ChirpData_b 0.002496 0.00000  test
                 avx_ChirpData_c 0.002585 0.00000  test
                 avx_ChirpData_d 0.002622 0.00000  test
                 avx_ChirpData_e 0.002608 0.00000  test
                avx_ChirpData_f2 0.002763 0.00000  test
                avx_ChirpData_f3 0.002804 0.00000  test
                avx_ChirpData_f4 0.002403 0.00000  test
                avx_ChirpData_f5 0.002581 0.00000  test
                avx_ChirpData_f6 0.002465 0.00000  test
                avx_ChirpData_fn 0.002846 0.00000  test
                avx_ChirpData_f4 0.002403 0.00000  choice

            Second run

                     v_ChirpData 0.007861 0.00000  test
                   fpu_ChirpData 0.014469 0.00000  test
               fpu_opt_ChirpData 0.006947 0.00000  test
             sse1_ChirpData_ak8e 0.006156 0.00000  test
              sse2_ChirpData_ak8 0.004994 0.00000  test
              sse3_ChirpData_ak8 0.004901 0.00000  test
                 avx_ChirpData_a 0.002895 0.00000  test
                 avx_ChirpData_b 0.002575 0.00000  test
                 avx_ChirpData_c 0.002614 0.00000  test
                 avx_ChirpData_d 0.002759 0.00000  test
                 avx_ChirpData_e 0.002340 0.00000  test
                avx_ChirpData_f2 0.002927 0.00000  test
                avx_ChirpData_f3 0.002891 0.00000  test
                avx_ChirpData_f4 0.002491 0.00000  test
                avx_ChirpData_f5 0.002660 0.00000  test
                avx_ChirpData_f6 0.002420 0.00000  test
                avx_ChirpData_fn 0.003653 0.00000  test
                 avx_ChirpData_e 0.002340 0.00000  choice

            Third run

                     v_ChirpData 0.008828 0.00000  test
                   fpu_ChirpData 0.015331 0.00000  test
               fpu_opt_ChirpData 0.006832 0.00000  test
             sse1_ChirpData_ak8e 0.006328 0.00000  test
              sse2_ChirpData_ak8 0.004866 0.00000  test
              sse3_ChirpData_ak8 0.004908 0.00000  test
                 avx_ChirpData_a 0.002686 0.00000  test
                 avx_ChirpData_b 0.002764 0.00000  test
                 avx_ChirpData_c 0.002528 0.00000  test
                 avx_ChirpData_d 0.002557 0.00000  test
                 avx_ChirpData_e 0.002444 0.00000  test
                avx_ChirpData_f2 0.002746 0.00000  test
                avx_ChirpData_f3 0.002616 0.00000  test
                avx_ChirpData_f4 0.002821 0.00000  test
                avx_ChirpData_f5 0.002443 0.00000  test
                avx_ChirpData_f6 0.002607 0.00000  test
                avx_ChirpData_fn 0.003108 0.00000  test
                avx_ChirpData_f5 0.002443 0.00000  choice

                   Test duration     8.47 seconds

Ftst_v7 completed successfully.
=========================================================

i7-2600K @4.7GHz (Boinc computing suspended):

=========================================================
Ftst_v7_J48_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.003671 0.00000  test
                   fpu_ChirpData 0.008676 0.00000  test
               fpu_opt_ChirpData 0.003585 0.00000  test
             sse1_ChirpData_ak8e 0.004212 0.00000  test
              sse2_ChirpData_ak8 0.003154 0.00000  test
              sse3_ChirpData_ak8 0.003116 0.00000  test
                 avx_ChirpData_a 0.001474 0.00000  test
                 avx_ChirpData_b 0.001635 0.00000  test
                 avx_ChirpData_c 0.001500 0.00000  test
                 avx_ChirpData_d 0.001377 0.00000  test
                 avx_ChirpData_e 0.001522 0.00000  test
                avx_ChirpData_f2 0.001630 0.00000  test
                avx_ChirpData_f3 0.001588 0.00000  test
                avx_ChirpData_f4 0.001571 0.00000  test
                avx_ChirpData_f5 0.001567 0.00000  test
                avx_ChirpData_f6 0.001563 0.00000  test
                avx_ChirpData_fn 0.001727 0.00000  test
                 avx_ChirpData_d 0.001377 0.00000  choice

            Second run

                     v_ChirpData 0.003673 0.00000  test
                   fpu_ChirpData 0.008625 0.00000  test
               fpu_opt_ChirpData 0.003589 0.00000  test
             sse1_ChirpData_ak8e 0.004206 0.00000  test
              sse2_ChirpData_ak8 0.003152 0.00000  test
              sse3_ChirpData_ak8 0.003113 0.00000  test
                 avx_ChirpData_a 0.001469 0.00000  test
                 avx_ChirpData_b 0.001639 0.00000  test
                 avx_ChirpData_c 0.001482 0.00000  test
                 avx_ChirpData_d 0.001376 0.00000  test
                 avx_ChirpData_e 0.001521 0.00000  test
                avx_ChirpData_f2 0.001610 0.00000  test
                avx_ChirpData_f3 0.001584 0.00000  test
                avx_ChirpData_f4 0.001568 0.00000  test
                avx_ChirpData_f5 0.001564 0.00000  test
                avx_ChirpData_f6 0.001559 0.00000  test
                avx_ChirpData_fn 0.001744 0.00000  test
                 avx_ChirpData_d 0.001376 0.00000  choice

            Third run

                     v_ChirpData 0.003703 0.00000  test
                   fpu_ChirpData 0.008650 0.00000  test
               fpu_opt_ChirpData 0.003566 0.00000  test
             sse1_ChirpData_ak8e 0.004206 0.00000  test
              sse2_ChirpData_ak8 0.003152 0.00000  test
              sse3_ChirpData_ak8 0.003116 0.00000  test
                 avx_ChirpData_a 0.001470 0.00000  test
                 avx_ChirpData_b 0.001635 0.00000  test
                 avx_ChirpData_c 0.001483 0.00000  test
                 avx_ChirpData_d 0.001376 0.00000  test
                 avx_ChirpData_e 0.001520 0.00000  test
                avx_ChirpData_f2 0.001614 0.00000  test
                avx_ChirpData_f3 0.001585 0.00000  test
                avx_ChirpData_f4 0.001571 0.00000  test
                avx_ChirpData_f5 0.001566 0.00000  test
                avx_ChirpData_f6 0.001567 0.00000  test
                avx_ChirpData_fn 0.001727 0.00000  test
                 avx_ChirpData_d 0.001376 0.00000  choice

                   Test duration     6.29 seconds

Ftst_v7 completed successfully.

Claggy
Title: Re: AVX Optimized App Development
Post by: KarVi on 09 May 2012, 02:26:59 pm
FX8150@4.5G

Boinc suspended:

=========================================================
Ftst_v7_J48_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.007228 0.00000  test
                   fpu_ChirpData 0.013807 0.00000  test
               fpu_opt_ChirpData 0.007158 0.00000  test
             sse1_ChirpData_ak8e 0.005662 0.00000  test
              sse2_ChirpData_ak8 0.003673 0.00000  test
              sse3_ChirpData_ak8 0.003739 0.00000  test
                 avx_ChirpData_a 0.003099 0.00000  test
                 avx_ChirpData_b 0.003029 0.00000  test
                 avx_ChirpData_c 0.003297 0.00000  test
                 avx_ChirpData_d 0.003240 0.00000  test
                 avx_ChirpData_e 0.003132 0.00000  test
                avx_ChirpData_f2 0.002997 0.00000  test
                avx_ChirpData_f3 0.002977 0.00000  test
                avx_ChirpData_f4 0.002973 0.00000  test
                avx_ChirpData_f5 0.002961 0.00000  test
                avx_ChirpData_f6 0.002952 0.00000  test
                avx_ChirpData_fn 0.003013 0.00000  test
                avx_ChirpData_f6 0.002952 0.00000  choice

            Second run

                     v_ChirpData 0.007250 0.00000  test
                   fpu_ChirpData 0.013798 0.00000  test
               fpu_opt_ChirpData 0.007152 0.00000  test
             sse1_ChirpData_ak8e 0.005679 0.00000  test
              sse2_ChirpData_ak8 0.003676 0.00000  test
              sse3_ChirpData_ak8 0.003735 0.00000  test
                 avx_ChirpData_a 0.003104 0.00000  test
                 avx_ChirpData_b 0.003030 0.00000  test
                 avx_ChirpData_c 0.003297 0.00000  test
                 avx_ChirpData_d 0.003240 0.00000  test
                 avx_ChirpData_e 0.003131 0.00000  test
                avx_ChirpData_f2 0.002998 0.00000  test
                avx_ChirpData_f3 0.002988 0.00000  test
                avx_ChirpData_f4 0.002974 0.00000  test
                avx_ChirpData_f5 0.002964 0.00000  test
                avx_ChirpData_f6 0.002956 0.00000  test
                avx_ChirpData_fn 0.003188 0.00000  test
                avx_ChirpData_f6 0.002956 0.00000  choice

            Third run

                     v_ChirpData 0.007288 0.00000  test
                   fpu_ChirpData 0.013806 0.00000  test
               fpu_opt_ChirpData 0.007163 0.00000  test
             sse1_ChirpData_ak8e 0.005677 0.00000  test
              sse2_ChirpData_ak8 0.003673 0.00000  test
              sse3_ChirpData_ak8 0.003732 0.00000  test
                 avx_ChirpData_a 0.003099 0.00000  test
                 avx_ChirpData_b 0.003029 0.00000  test
                 avx_ChirpData_c 0.003300 0.00000  test
                 avx_ChirpData_d 0.003235 0.00000  test
                 avx_ChirpData_e 0.003128 0.00000  test
                avx_ChirpData_f2 0.002994 0.00000  test
                avx_ChirpData_f3 0.002987 0.00000  test
                avx_ChirpData_f4 0.002975 0.00000  test
                avx_ChirpData_f5 0.002966 0.00000  test
                avx_ChirpData_f6 0.002952 0.00000  test
                avx_ChirpData_fn 0.003193 0.00000  test
                avx_ChirpData_f6 0.002952 0.00000  choice

                   Test duration     7.66 seconds

Ftst_v7 completed successfully.

Boinc running:

=========================================================
Ftst_v7_J48_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.011337 0.00000  test
                   fpu_ChirpData 0.018720 0.00000  test
               fpu_opt_ChirpData 0.011250 0.00000  test
             sse1_ChirpData_ak8e 0.007149 0.00000  test
              sse2_ChirpData_ak8 0.004990 0.00000  test
              sse3_ChirpData_ak8 0.004983 0.00000  test
                 avx_ChirpData_a 0.004490 0.00000  test
                 avx_ChirpData_b 0.004152 0.00000  test
                 avx_ChirpData_c 0.004441 0.00000  test
                 avx_ChirpData_d 0.004297 0.00000  test
                 avx_ChirpData_e 0.003984 0.00000  test
                avx_ChirpData_f2 0.004162 0.00000  test
                avx_ChirpData_f3 0.004241 0.00000  test
                avx_ChirpData_f4 0.004012 0.00000  test
                avx_ChirpData_f5 0.003996 0.00000  test
                avx_ChirpData_f6 0.003970 0.00000  test
                avx_ChirpData_fn 0.004261 0.00000  test
                avx_ChirpData_f6 0.003970 0.00000  choice

            Second run

                     v_ChirpData 0.011270 0.00000  test
                   fpu_ChirpData 0.018830 0.00000  test
               fpu_opt_ChirpData 0.011104 0.00000  test
             sse1_ChirpData_ak8e 0.007206 0.00000  test
              sse2_ChirpData_ak8 0.005025 0.00000  test
              sse3_ChirpData_ak8 0.004941 0.00000  test
                 avx_ChirpData_a 0.004436 0.00000  test
                 avx_ChirpData_b 0.004220 0.00000  test
                 avx_ChirpData_c 0.004531 0.00000  test
                 avx_ChirpData_d 0.004233 0.00000  test
                 avx_ChirpData_e 0.004130 0.00000  test
                avx_ChirpData_f2 0.004156 0.00000  test
                avx_ChirpData_f3 0.004129 0.00000  test
                avx_ChirpData_f4 0.003999 0.00000  test
                avx_ChirpData_f5 0.003965 0.00000  test
                avx_ChirpData_f6 0.003952 0.00000  test
                avx_ChirpData_fn 0.004213 0.00000  test
                avx_ChirpData_f6 0.003952 0.00000  choice

            Third run

                     v_ChirpData 0.011792 0.00000  test
                   fpu_ChirpData 0.018834 0.00000  test
               fpu_opt_ChirpData 0.010799 0.00000  test
             sse1_ChirpData_ak8e 0.007129 0.00000  test
              sse2_ChirpData_ak8 0.004906 0.00000  test
              sse3_ChirpData_ak8 0.004977 0.00000  test
                 avx_ChirpData_a 0.004436 0.00000  test
                 avx_ChirpData_b 0.004126 0.00000  test
                 avx_ChirpData_c 0.004484 0.00000  test
                 avx_ChirpData_d 0.004129 0.00000  test
                 avx_ChirpData_e 0.004036 0.00000  test
                avx_ChirpData_f2 0.004025 0.00000  test
                avx_ChirpData_f3 0.003961 0.00000  test
                avx_ChirpData_f4 0.003982 0.00000  test
                avx_ChirpData_f5 0.003951 0.00000  test
                avx_ChirpData_f6 0.003995 0.00000  test
                avx_ChirpData_fn 0.004298 0.00000  test
                avx_ChirpData_f5 0.003951 0.00000  choice

                   Test duration    10.08 seconds

Ftst_v7 completed successfully.

Still prefers f6.
Title: Re: AVX Optimized App Development
Post by: Josef W. Segur on 09 May 2012, 04:15:06 pm
Well, it's clear that the software prefetching is doing some good though not clear why the more distant prefetch works slightly better on the 8 core Bulldozers even when BOINC is active. Getting those details pinned down can wait for final tuning though.

With AVX chirping times at ~80% of SSE3 chirping on Bulldozer but ~50% on Sandy Bridge, I'm looking for something with larger effects. One faint possibility is that the way the input and output test buffers are allocated in J48 and earlier might possibly cause L1 cache thrashing. I don't think that's likely, but am attaching J48a. The allocations are revised but functions being tested are unchanged.

Edit: Attachment removed, see later posts for current test.
                                                            Joe
Title: Re: AVX Optimized App Development
Post by: Claggy on 09 May 2012, 04:38:12 pm
i7-2600K @4.7GHz (Boinc running):

=========================================================
Ftst_v7_J48a_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.009743 0.00000  test
                   fpu_ChirpData 0.015173 0.00000  test
               fpu_opt_ChirpData 0.009064 0.00000  test
             sse1_ChirpData_ak8e 0.006152 0.00000  test
              sse2_ChirpData_ak8 0.004908 0.00000  test
              sse3_ChirpData_ak8 0.004838 0.00000  test
                 avx_ChirpData_a 0.002580 0.00000  test
                 avx_ChirpData_b 0.002608 0.00000  test
                 avx_ChirpData_c 0.002615 0.00000  test
                 avx_ChirpData_d 0.002482 0.00000  test
                 avx_ChirpData_e 0.002469 0.00000  test
                avx_ChirpData_f2 0.002653 0.00000  test
                avx_ChirpData_f3 0.002615 0.00000  test
                avx_ChirpData_f4 0.002597 0.00000  test
                avx_ChirpData_f5 0.002544 0.00000  test
                avx_ChirpData_f6 0.002575 0.00000  test
                avx_ChirpData_fn 0.002803 0.00000  test
                 avx_ChirpData_e 0.002469 0.00000  choice

            Second run

                     v_ChirpData 0.008056 0.00000  test
                   fpu_ChirpData 0.015192 0.00000  test
               fpu_opt_ChirpData 0.008239 0.00000  test
             sse1_ChirpData_ak8e 0.006109 0.00000  test
              sse2_ChirpData_ak8 0.004860 0.00000  test
              sse3_ChirpData_ak8 0.004905 0.00000  test
                 avx_ChirpData_a 0.002646 0.00000  test
                 avx_ChirpData_b 0.002649 0.00000  test
                 avx_ChirpData_c 0.002640 0.00000  test
                 avx_ChirpData_d 0.002515 0.00000  test
                 avx_ChirpData_e 0.002556 0.00000  test
                avx_ChirpData_f2 0.002736 0.00000  test
                avx_ChirpData_f3 0.002701 0.00000  test
                avx_ChirpData_f4 0.002618 0.00000  test
                avx_ChirpData_f5 0.002599 0.00000  test
                avx_ChirpData_f6 0.002577 0.00000  test
                avx_ChirpData_fn 0.002919 0.00000  test
                 avx_ChirpData_d 0.002515 0.00000  choice

            Third run

                     v_ChirpData 0.008521 0.00000  test
                   fpu_ChirpData 0.015196 0.00000  test
               fpu_opt_ChirpData 0.008329 0.00000  test
             sse1_ChirpData_ak8e 0.006129 0.00000  test
              sse2_ChirpData_ak8 0.004800 0.00000  test
              sse3_ChirpData_ak8 0.004910 0.00000  test
                 avx_ChirpData_a 0.002695 0.00000  test
                 avx_ChirpData_b 0.002715 0.00000  test
                 avx_ChirpData_c 0.002653 0.00000  test
                 avx_ChirpData_d 0.002489 0.00000  test
                 avx_ChirpData_e 0.002523 0.00000  test
                avx_ChirpData_f2 0.002678 0.00000  test
                avx_ChirpData_f3 0.002662 0.00000  test
                avx_ChirpData_f4 0.002604 0.00000  test
                avx_ChirpData_f5 0.002609 0.00000  test
                avx_ChirpData_f6 0.002576 0.00000  test
                avx_ChirpData_fn 0.002865 0.00000  test
                 avx_ChirpData_d 0.002489 0.00000  choice

                   Test duration     8.53 seconds

Ftst_v7 completed successfully.
=========================================================

i7-2600K @4.7GHz (Boinc computing suspended):

=========================================================
Ftst_v7_J48a_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.003665 0.00000  test
                   fpu_ChirpData 0.008651 0.00000  test
               fpu_opt_ChirpData 0.003569 0.00000  test
             sse1_ChirpData_ak8e 0.004219 0.00000  test
              sse2_ChirpData_ak8 0.003156 0.00000  test
              sse3_ChirpData_ak8 0.003119 0.00000  test
                 avx_ChirpData_a 0.001476 0.00000  test
                 avx_ChirpData_b 0.001635 0.00000  test
                 avx_ChirpData_c 0.001493 0.00000  test
                 avx_ChirpData_d 0.001380 0.00000  test
                 avx_ChirpData_e 0.001483 0.00000  test
                avx_ChirpData_f2 0.001612 0.00000  test
                avx_ChirpData_f3 0.001585 0.00000  test
                avx_ChirpData_f4 0.001571 0.00000  test
                avx_ChirpData_f5 0.001567 0.00000  test
                avx_ChirpData_f6 0.001559 0.00000  test
                avx_ChirpData_fn 0.001726 0.00000  test
                 avx_ChirpData_d 0.001380 0.00000  choice

            Second run

                     v_ChirpData 0.003662 0.00000  test
                   fpu_ChirpData 0.008645 0.00000  test
               fpu_opt_ChirpData 0.003563 0.00000  test
             sse1_ChirpData_ak8e 0.004212 0.00000  test
              sse2_ChirpData_ak8 0.003151 0.00000  test
              sse3_ChirpData_ak8 0.003118 0.00000  test
                 avx_ChirpData_a 0.001474 0.00000  test
                 avx_ChirpData_b 0.001648 0.00000  test
                 avx_ChirpData_c 0.001484 0.00000  test
                 avx_ChirpData_d 0.001373 0.00000  test
                 avx_ChirpData_e 0.001520 0.00000  test
                avx_ChirpData_f2 0.001608 0.00000  test
                avx_ChirpData_f3 0.001584 0.00000  test
                avx_ChirpData_f4 0.001588 0.00000  test
                avx_ChirpData_f5 0.001568 0.00000  test
                avx_ChirpData_f6 0.001567 0.00000  test
                avx_ChirpData_fn 0.001727 0.00000  test
                 avx_ChirpData_d 0.001373 0.00000  choice

            Third run

                     v_ChirpData 0.003672 0.00000  test
                   fpu_ChirpData 0.008651 0.00000  test
               fpu_opt_ChirpData 0.003566 0.00000  test
             sse1_ChirpData_ak8e 0.004210 0.00000  test
              sse2_ChirpData_ak8 0.003155 0.00000  test
              sse3_ChirpData_ak8 0.003115 0.00000  test
                 avx_ChirpData_a 0.001472 0.00000  test
                 avx_ChirpData_b 0.001632 0.00000  test
                 avx_ChirpData_c 0.001483 0.00000  test
                 avx_ChirpData_d 0.001375 0.00000  test
                 avx_ChirpData_e 0.001524 0.00000  test
                avx_ChirpData_f2 0.001610 0.00000  test
                avx_ChirpData_f3 0.001585 0.00000  test
                avx_ChirpData_f4 0.001570 0.00000  test
                avx_ChirpData_f5 0.001569 0.00000  test
                avx_ChirpData_f6 0.001564 0.00000  test
                avx_ChirpData_fn 0.001726 0.00000  test
                 avx_ChirpData_d 0.001375 0.00000  choice

                   Test duration     6.29 seconds

Ftst_v7 completed successfully.

Claggy
Title: Re: AVX Optimized App Development
Post by: arkayn on 09 May 2012, 05:08:16 pm
FX-4100
BOINC idle

=========================================================
Ftst_v7_J48a_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.008908 0.00000  test
                   fpu_ChirpData 0.017459 0.00000  test
               fpu_opt_ChirpData 0.008598 0.00000  test
             sse1_ChirpData_ak8e 0.007179 0.00000  test
              sse2_ChirpData_ak8 0.004598 0.00000  test
              sse3_ChirpData_ak8 0.004693 0.00000  test
                 avx_ChirpData_a 0.003840 0.00000  test
                 avx_ChirpData_b 0.003823 0.00000  test
                 avx_ChirpData_c 0.004082 0.00000  test
                 avx_ChirpData_d 0.004008 0.00000  test
                 avx_ChirpData_e 0.003937 0.00000  test
                avx_ChirpData_f2 0.003716 0.00000  test
                avx_ChirpData_f3 0.003702 0.00000  test
                avx_ChirpData_f4 0.003782 0.00000  test
                avx_ChirpData_f5 0.003708 0.00000  test
                avx_ChirpData_f6 0.003687 0.00000  test
                avx_ChirpData_fn 0.003996 0.00000  test
                avx_ChirpData_f6 0.003687 0.00000  choice

            Second run

                     v_ChirpData 0.008775 0.00000  test
                   fpu_ChirpData 0.017391 0.00000  test
               fpu_opt_ChirpData 0.008710 0.00000  test
             sse1_ChirpData_ak8e 0.007160 0.00000  test
              sse2_ChirpData_ak8 0.004587 0.00000  test
              sse3_ChirpData_ak8 0.004651 0.00000  test
                 avx_ChirpData_a 0.003827 0.00000  test
                 avx_ChirpData_b 0.003842 0.00000  test
                 avx_ChirpData_c 0.004111 0.00000  test
                 avx_ChirpData_d 0.004003 0.00000  test
                 avx_ChirpData_e 0.003927 0.00000  test
                avx_ChirpData_f2 0.003724 0.00000  test
                avx_ChirpData_f3 0.003698 0.00000  test
                avx_ChirpData_f4 0.003698 0.00000  test
                avx_ChirpData_f5 0.003685 0.00000  test
                avx_ChirpData_f6 0.003682 0.00000  test
                avx_ChirpData_fn 0.004034 0.00000  test
                avx_ChirpData_f6 0.003682 0.00000  choice

            Third run

                     v_ChirpData 0.008919 0.00000  test
                   fpu_ChirpData 0.017299 0.00000  test
               fpu_opt_ChirpData 0.008712 0.00000  test
             sse1_ChirpData_ak8e 0.007167 0.00000  test
              sse2_ChirpData_ak8 0.004582 0.00000  test
              sse3_ChirpData_ak8 0.004661 0.00000  test
                 avx_ChirpData_a 0.003819 0.00000  test
                 avx_ChirpData_b 0.003813 0.00000  test
                 avx_ChirpData_c 0.004114 0.00000  test
                 avx_ChirpData_d 0.003980 0.00000  test
                 avx_ChirpData_e 0.003898 0.00000  test
                avx_ChirpData_f2 0.003759 0.00000  test
                avx_ChirpData_f3 0.003696 0.00000  test
                avx_ChirpData_f4 0.003692 0.00000  test
                avx_ChirpData_f5 0.003704 0.00000  test
                avx_ChirpData_f6 0.003698 0.00000  test
                avx_ChirpData_fn 0.003895 0.00000  test
                avx_ChirpData_f4 0.003692 0.00000  choice

                   Test duration     9.58 seconds

Ftst_v7 completed successfully.



=========================================================
i3-2120
BOINC idle

=========================================================
Ftst_v7_J48a_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.004566 0.00000  test
                   fpu_ChirpData 0.012321 0.00000  test
               fpu_opt_ChirpData 0.004345 0.00000  test
             sse1_ChirpData_ak8e 0.005710 0.00000  test
              sse2_ChirpData_ak8 0.004189 0.00000  test
              sse3_ChirpData_ak8 0.004102 0.00000  test
                 avx_ChirpData_a 0.002084 0.00000  test
                 avx_ChirpData_b 0.002054 0.00000  test
                 avx_ChirpData_c 0.002103 0.00000  test
                 avx_ChirpData_d 0.001930 0.00000  test
                 avx_ChirpData_e 0.001936 0.00000  test
                avx_ChirpData_f2 0.002078 0.00000  test
                avx_ChirpData_f3 0.002079 0.00000  test
                avx_ChirpData_f4 0.002053 0.00000  test
                avx_ChirpData_f5 0.002058 0.00000  test
                avx_ChirpData_f6 0.002103 0.00000  test
                avx_ChirpData_fn 0.002185 0.00000  test
                 avx_ChirpData_d 0.001930 0.00000  choice

            Second run

                     v_ChirpData 0.004545 0.00000  test
                   fpu_ChirpData 0.012302 0.00000  test
               fpu_opt_ChirpData 0.004352 0.00000  test
             sse1_ChirpData_ak8e 0.005705 0.00000  test
              sse2_ChirpData_ak8 0.004183 0.00000  test
              sse3_ChirpData_ak8 0.004084 0.00000  test
                 avx_ChirpData_a 0.002081 0.00000  test
                 avx_ChirpData_b 0.002047 0.00000  test
                 avx_ChirpData_c 0.002099 0.00000  test
                 avx_ChirpData_d 0.001930 0.00000  test
                 avx_ChirpData_e 0.001931 0.00000  test
                avx_ChirpData_f2 0.002081 0.00000  test
                avx_ChirpData_f3 0.002056 0.00000  test
                avx_ChirpData_f4 0.002053 0.00000  test
                avx_ChirpData_f5 0.002057 0.00000  test
                avx_ChirpData_f6 0.002049 0.00000  test
                avx_ChirpData_fn 0.002185 0.00000  test
                 avx_ChirpData_d 0.001930 0.00000  choice

            Third run

                     v_ChirpData 0.004597 0.00000  test
                   fpu_ChirpData 0.012295 0.00000  test
               fpu_opt_ChirpData 0.004325 0.00000  test
             sse1_ChirpData_ak8e 0.005713 0.00000  test
              sse2_ChirpData_ak8 0.004178 0.00000  test
              sse3_ChirpData_ak8 0.004086 0.00000  test
                 avx_ChirpData_a 0.002077 0.00000  test
                 avx_ChirpData_b 0.002046 0.00000  test
                 avx_ChirpData_c 0.002098 0.00000  test
                 avx_ChirpData_d 0.001929 0.00000  test
                 avx_ChirpData_e 0.001934 0.00000  test
                avx_ChirpData_f2 0.002077 0.00000  test
                avx_ChirpData_f3 0.002056 0.00000  test
                avx_ChirpData_f4 0.002051 0.00000  test
                avx_ChirpData_f5 0.002050 0.00000  test
                avx_ChirpData_f6 0.002109 0.00000  test
                avx_ChirpData_fn 0.002182 0.00000  test
                 avx_ChirpData_d 0.001929 0.00000  choice

                   Test duration     8.87 seconds

Ftst_v7 completed successfully.
Title: Re: AVX Optimized App Development
Post by: KarVi on 09 May 2012, 11:59:42 pm
FX8150@4.5

=========================================================
Ftst_v7_J48a_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.007238 0.00000  test
                   fpu_ChirpData 0.013833 0.00000  test
               fpu_opt_ChirpData 0.007087 0.00000  test
             sse1_ChirpData_ak8e 0.005670 0.00000  test
              sse2_ChirpData_ak8 0.003693 0.00000  test
              sse3_ChirpData_ak8 0.003748 0.00000  test
                 avx_ChirpData_a 0.003090 0.00000  test
                 avx_ChirpData_b 0.003036 0.00000  test
                 avx_ChirpData_c 0.003295 0.00000  test
                 avx_ChirpData_d 0.003220 0.00000  test
                 avx_ChirpData_e 0.003145 0.00000  test
                avx_ChirpData_f2 0.003021 0.00000  test
                avx_ChirpData_f3 0.002997 0.00000  test
                avx_ChirpData_f4 0.002983 0.00000  test
                avx_ChirpData_f5 0.002976 0.00000  test
                avx_ChirpData_f6 0.002961 0.00000  test
                avx_ChirpData_fn 0.003203 0.00000  test
                avx_ChirpData_f6 0.002961 0.00000  choice

            Second run

                     v_ChirpData 0.007260 0.00000  test
                   fpu_ChirpData 0.013809 0.00000  test
               fpu_opt_ChirpData 0.007061 0.00000  test
             sse1_ChirpData_ak8e 0.005671 0.00000  test
              sse2_ChirpData_ak8 0.003688 0.00000  test
              sse3_ChirpData_ak8 0.003738 0.00000  test
                 avx_ChirpData_a 0.003092 0.00000  test
                 avx_ChirpData_b 0.003046 0.00000  test
                 avx_ChirpData_c 0.003294 0.00000  test
                 avx_ChirpData_d 0.003224 0.00000  test
                 avx_ChirpData_e 0.003141 0.00000  test
                avx_ChirpData_f2 0.003026 0.00000  test
                avx_ChirpData_f3 0.003007 0.00000  test
                avx_ChirpData_f4 0.002989 0.00000  test
                avx_ChirpData_f5 0.002971 0.00000  test
                avx_ChirpData_f6 0.002952 0.00000  test
                avx_ChirpData_fn 0.003204 0.00000  test
                avx_ChirpData_f6 0.002952 0.00000  choice

            Third run

                     v_ChirpData 0.007199 0.00000  test
                   fpu_ChirpData 0.013817 0.00000  test
               fpu_opt_ChirpData 0.007057 0.00000  test
             sse1_ChirpData_ak8e 0.005661 0.00000  test
              sse2_ChirpData_ak8 0.003693 0.00000  test
              sse3_ChirpData_ak8 0.003740 0.00000  test
                 avx_ChirpData_a 0.003092 0.00000  test
                 avx_ChirpData_b 0.003045 0.00000  test
                 avx_ChirpData_c 0.003293 0.00000  test
                 avx_ChirpData_d 0.003222 0.00000  test
                 avx_ChirpData_e 0.003143 0.00000  test
                avx_ChirpData_f2 0.003030 0.00000  test
                avx_ChirpData_f3 0.003001 0.00000  test
                avx_ChirpData_f4 0.002982 0.00000  test
                avx_ChirpData_f5 0.002973 0.00000  test
                avx_ChirpData_f6 0.002966 0.00000  test
                avx_ChirpData_fn 0.003040 0.00000  test
                avx_ChirpData_f6 0.002966 0.00000  choice

                   Test duration     7.68 seconds

Ftst_v7 completed successfully.
Title: Re: AVX Optimized App Development
Post by: Josef W. Segur on 10 May 2012, 11:36:19 am
Thanks, it's good to be sure the test allocations weren't causing the problem.

For J49 I've collapsed the f subvariants back to a single with the same prefetch as a through e (4 cache lines ahead). Even though that may not be the best, it makes comparison easier.

Added test g, which loads data in two 128 bit chunks rather than full 256 bit chunks. That's a technique some Intel documents recommend, though it's not expected to make a large difference.

Added test h, which does TLB priming to eliminate delays crossing page boundaries, and prefetches a whole page sized block at once, like the Astropulse TWINDECHIRP. I have hopes that might make a significant difference.

The sse3_ChirpData_ak8 variant didn't have prefetch, so was often slower than sse2_ChirpData_ak8. I've put the prefetch in.

Although I've reviewed the changes to the AVX routines several times, they're significant enough there's some risk of crashing if I missed something. I hope not.
                                                                Joe
Title: Re: AVX Optimized App Development
Post by: arkayn on 10 May 2012, 02:24:17 pm
FX-4100@3.6
BOINC idle
=========================================================
Ftst_v7_J49_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.008692 0.00000  test
                   fpu_ChirpData 0.017149 0.00000  test
               fpu_opt_ChirpData 0.008383 0.00000  test
             sse1_ChirpData_ak8e 0.007095 0.00000  test
              sse2_ChirpData_ak8 0.004506 0.00000  test
              sse3_ChirpData_ak8 0.004396 0.00000  test
                 avx_ChirpData_a 0.003789 0.00000  test
                 avx_ChirpData_b 0.003719 0.00000  test
                 avx_ChirpData_c 0.004055 0.00000  test
                 avx_ChirpData_d 0.003989 0.00000  test
                 avx_ChirpData_e 0.003886 0.00000  test
                 avx_ChirpData_f 0.003646 0.00000  test
                 avx_ChirpData_g 0.003612 0.00000  test
                 avx_ChirpData_h 0.004376 0.00000  test
                 avx_ChirpData_g 0.003612 0.00000  choice

            Second run

                     v_ChirpData 0.008600 0.00000  test
                   fpu_ChirpData 0.017273 0.00000  test
               fpu_opt_ChirpData 0.008386 0.00000  test
             sse1_ChirpData_ak8e 0.007135 0.00000  test
              sse2_ChirpData_ak8 0.004525 0.00000  test
              sse3_ChirpData_ak8 0.004410 0.00000  test
                 avx_ChirpData_a 0.003801 0.00000  test
                 avx_ChirpData_b 0.003851 0.00000  test
                 avx_ChirpData_c 0.004085 0.00000  test
                 avx_ChirpData_d 0.003954 0.00000  test
                 avx_ChirpData_e 0.003857 0.00000  test
                 avx_ChirpData_f 0.003661 0.00000  test
                 avx_ChirpData_g 0.003586 0.00000  test
                 avx_ChirpData_h 0.004445 0.00000  test
                 avx_ChirpData_g 0.003586 0.00000  choice

            Third run

                     v_ChirpData 0.008727 0.00000  test
                   fpu_ChirpData 0.017132 0.00000  test
               fpu_opt_ChirpData 0.008475 0.00000  test
             sse1_ChirpData_ak8e 0.007107 0.00000  test
              sse2_ChirpData_ak8 0.004575 0.00000  test
              sse3_ChirpData_ak8 0.004390 0.00000  test
                 avx_ChirpData_a 0.003800 0.00000  test
                 avx_ChirpData_b 0.003817 0.00000  test
                 avx_ChirpData_c 0.004079 0.00000  test
                 avx_ChirpData_d 0.003987 0.00000  test
                 avx_ChirpData_e 0.003887 0.00000  test
                 avx_ChirpData_f 0.003646 0.00000  test
                 avx_ChirpData_g 0.003586 0.00000  test
                 avx_ChirpData_h 0.004411 0.00000  test
                 avx_ChirpData_g 0.003586 0.00000  choice

                   Test duration     7.99 seconds

Ftst_v7 completed successfully.


i3-2120@3.3
=========================================================
Ftst_v7_J49_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.004536 0.00000  test
                   fpu_ChirpData 0.012313 0.00000  test
               fpu_opt_ChirpData 0.004323 0.00000  test
             sse1_ChirpData_ak8e 0.005770 0.00000  test
              sse2_ChirpData_ak8 0.004188 0.00000  test
              sse3_ChirpData_ak8 0.004051 0.00000  test
                 avx_ChirpData_a 0.002107 0.00000  test
                 avx_ChirpData_b 0.002045 0.00000  test
                 avx_ChirpData_c 0.002098 0.00000  test
                 avx_ChirpData_d 0.001930 0.00000  test
                 avx_ChirpData_e 0.001941 0.00000  test
                 avx_ChirpData_f 0.002060 0.00000  test
                 avx_ChirpData_g 0.002071 0.00000  test
                 avx_ChirpData_h 0.002659 0.00000  test
                 avx_ChirpData_d 0.001930 0.00000  choice

            Second run

                     v_ChirpData 0.004538 0.00000  test
                   fpu_ChirpData 0.012747 0.00000  test
               fpu_opt_ChirpData 0.004351 0.00000  test
             sse1_ChirpData_ak8e 0.005769 0.00000  test
              sse2_ChirpData_ak8 0.004441 0.00000  test
              sse3_ChirpData_ak8 0.004123 0.00000  test
                 avx_ChirpData_a 0.002079 0.00000  test
                 avx_ChirpData_b 0.002045 0.00000  test
                 avx_ChirpData_c 0.002101 0.00000  test
                 avx_ChirpData_d 0.001932 0.00000  test
                 avx_ChirpData_e 0.001932 0.00000  test
                 avx_ChirpData_f 0.002049 0.00000  test
                 avx_ChirpData_g 0.002067 0.00000  test
                 avx_ChirpData_h 0.002657 0.00000  test
                 avx_ChirpData_d 0.001932 0.00000  choice

            Third run

                     v_ChirpData 0.004533 0.00000  test
                   fpu_ChirpData 0.012322 0.00000  test
               fpu_opt_ChirpData 0.004320 0.00000  test
             sse1_ChirpData_ak8e 0.005764 0.00000  test
              sse2_ChirpData_ak8 0.004190 0.00000  test
              sse3_ChirpData_ak8 0.004021 0.00000  test
                 avx_ChirpData_a 0.002085 0.00000  test
                 avx_ChirpData_b 0.002050 0.00000  test
                 avx_ChirpData_c 0.002098 0.00000  test
                 avx_ChirpData_d 0.001937 0.00000  test
                 avx_ChirpData_e 0.001938 0.00000  test
                 avx_ChirpData_f 0.002049 0.00000  test
                 avx_ChirpData_g 0.002071 0.00000  test
                 avx_ChirpData_h 0.002658 0.00000  test
                 avx_ChirpData_d 0.001937 0.00000  choice

                   Test duration     7.45 seconds

Ftst_v7 completed successfully.
Title: Re: AVX Optimized App Development
Post by: KarVi on 10 May 2012, 04:19:07 pm
FX8150@4.5

=========================================================
Ftst_v7_J49_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.007393 0.00000  test
                   fpu_ChirpData 0.013810 0.00000  test
               fpu_opt_ChirpData 0.007195 0.00000  test
             sse1_ChirpData_ak8e 0.005659 0.00000  test
              sse2_ChirpData_ak8 0.003708 0.00000  test
              sse3_ChirpData_ak8 0.003581 0.00000  test
                 avx_ChirpData_a 0.003086 0.00000  test
                 avx_ChirpData_b 0.003037 0.00000  test
                 avx_ChirpData_c 0.003292 0.00000  test
                 avx_ChirpData_d 0.003217 0.00000  test
                 avx_ChirpData_e 0.003131 0.00000  test
                 avx_ChirpData_f 0.002977 0.00000  test
                 avx_ChirpData_g 0.003055 0.00000  test
                 avx_ChirpData_h 0.003575 0.00000  test
                 avx_ChirpData_f 0.002977 0.00000  choice

            Second run

                     v_ChirpData 0.007355 0.00000  test
                   fpu_ChirpData 0.013808 0.00000  test
               fpu_opt_ChirpData 0.007272 0.00000  test
             sse1_ChirpData_ak8e 0.005665 0.00000  test
              sse2_ChirpData_ak8 0.003700 0.00000  test
              sse3_ChirpData_ak8 0.003645 0.00000  test
                 avx_ChirpData_a 0.003090 0.00000  test
                 avx_ChirpData_b 0.003037 0.00000  test
                 avx_ChirpData_c 0.003290 0.00000  test
                 avx_ChirpData_d 0.003215 0.00000  test
                 avx_ChirpData_e 0.003135 0.00000  test
                 avx_ChirpData_f 0.002972 0.00000  test
                 avx_ChirpData_g 0.003060 0.00000  test
                 avx_ChirpData_h 0.003573 0.00000  test
                 avx_ChirpData_f 0.002972 0.00000  choice

            Third run

                     v_ChirpData 0.007349 0.00000  test
                   fpu_ChirpData 0.013834 0.00000  test
               fpu_opt_ChirpData 0.007261 0.00000  test
             sse1_ChirpData_ak8e 0.005659 0.00000  test
              sse2_ChirpData_ak8 0.003695 0.00000  test
              sse3_ChirpData_ak8 0.003576 0.00000  test
                 avx_ChirpData_a 0.003093 0.00000  test
                 avx_ChirpData_b 0.003040 0.00000  test
                 avx_ChirpData_c 0.003294 0.00000  test
                 avx_ChirpData_d 0.003216 0.00000  test
                 avx_ChirpData_e 0.003132 0.00000  test
                 avx_ChirpData_f 0.002972 0.00000  test
                 avx_ChirpData_g 0.003054 0.00000  test
                 avx_ChirpData_h 0.003583 0.00000  test
                 avx_ChirpData_f 0.002972 0.00000  choice

                   Test duration     6.49 seconds

Ftst_v7 completed successfully.

Mine seems to like f, where arkayns prefers g. Not very conclusive :)
Title: Re: AVX Optimized App Development
Post by: Claggy on 10 May 2012, 04:31:01 pm
i7-2600K @4.7GHz (Boinc running):

=========================================================
Ftst_v7_J49_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.007968 0.00000  test
                   fpu_ChirpData 0.015811 0.00000  test
               fpu_opt_ChirpData 0.007296 0.00000  test
             sse1_ChirpData_ak8e 0.006359 0.00000  test
              sse2_ChirpData_ak8 0.004849 0.00000  test
              sse3_ChirpData_ak8 0.004496 0.00000  test
                 avx_ChirpData_a 0.002711 0.00000  test
                 avx_ChirpData_b 0.002826 0.00000  test
                 avx_ChirpData_c 0.002719 0.00000  test
                 avx_ChirpData_d 0.002606 0.00000  test
                 avx_ChirpData_e 0.002469 0.00000  test
                 avx_ChirpData_f 0.002662 0.00000  test
                 avx_ChirpData_g 0.002796 0.00000  test
                 avx_ChirpData_h 0.003208 0.00000  test
                 avx_ChirpData_e 0.002469 0.00000  choice

            Second run

                     v_ChirpData 0.007533 0.00000  test
                   fpu_ChirpData 0.015415 0.00000  test
               fpu_opt_ChirpData 0.006911 0.00000  test
             sse1_ChirpData_ak8e 0.006322 0.00000  test
              sse2_ChirpData_ak8 0.004869 0.00000  test
              sse3_ChirpData_ak8 0.004669 0.00000  test
                 avx_ChirpData_a 0.002702 0.00000  test
                 avx_ChirpData_b 0.002879 0.00000  test
                 avx_ChirpData_c 0.002848 0.00000  test
                 avx_ChirpData_d 0.002208 0.00000  test
                 avx_ChirpData_e 0.002697 0.00000  test
                 avx_ChirpData_f 0.002966 0.00000  test
                 avx_ChirpData_g 0.002573 0.00000  test
                 avx_ChirpData_h 0.003257 0.00000  test
                 avx_ChirpData_d 0.002208 0.00000  choice

            Third run

                     v_ChirpData 0.007272 0.00000  test
                   fpu_ChirpData 0.016058 0.00000  test
               fpu_opt_ChirpData 0.007339 0.00000  test
             sse1_ChirpData_ak8e 0.006160 0.00000  test
              sse2_ChirpData_ak8 0.004753 0.00000  test
              sse3_ChirpData_ak8 0.004710 0.00000  test
                 avx_ChirpData_a 0.002605 0.00000  test
                 avx_ChirpData_b 0.002734 0.00000  test
                 avx_ChirpData_c 0.002658 0.00000  test
                 avx_ChirpData_d 0.002396 0.00000  test
                 avx_ChirpData_e 0.002445 0.00000  test
                 avx_ChirpData_f 0.002504 0.00000  test
                 avx_ChirpData_g 0.002488 0.00000  test
                 avx_ChirpData_h 0.003208 0.00000  test
                 avx_ChirpData_d 0.002396 0.00000  choice

                   Test duration     7.16 seconds

Ftst_v7 completed successfully.
=========================================================

i7-2600K @4.7GHz (Boinc computing suspended):

=========================================================

Ftst_v7_J49_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.003652 0.00000  test
                   fpu_ChirpData 0.008646 0.00000  test
               fpu_opt_ChirpData 0.003595 0.00000  test
             sse1_ChirpData_ak8e 0.004217 0.00000  test
              sse2_ChirpData_ak8 0.003150 0.00000  test
              sse3_ChirpData_ak8 0.002981 0.00000  test
                 avx_ChirpData_a 0.001477 0.00000  test
                 avx_ChirpData_b 0.001635 0.00000  test
                 avx_ChirpData_c 0.001485 0.00000  test
                 avx_ChirpData_d 0.001377 0.00000  test
                 avx_ChirpData_e 0.001524 0.00000  test
                 avx_ChirpData_f 0.001588 0.00000  test
                 avx_ChirpData_g 0.001619 0.00000  test
                 avx_ChirpData_h 0.002023 0.00000  test
                 avx_ChirpData_d 0.001377 0.00000  choice

            Second run

                     v_ChirpData 0.003666 0.00000  test
                   fpu_ChirpData 0.008667 0.00000  test
               fpu_opt_ChirpData 0.003789 0.00000  test
             sse1_ChirpData_ak8e 0.004202 0.00000  test
              sse2_ChirpData_ak8 0.003154 0.00000  test
              sse3_ChirpData_ak8 0.002986 0.00000  test
                 avx_ChirpData_a 0.001475 0.00000  test
                 avx_ChirpData_b 0.001635 0.00000  test
                 avx_ChirpData_c 0.001483 0.00000  test
                 avx_ChirpData_d 0.001376 0.00000  test
                 avx_ChirpData_e 0.001531 0.00000  test
                 avx_ChirpData_f 0.001571 0.00000  test
                 avx_ChirpData_g 0.001618 0.00000  test
                 avx_ChirpData_h 0.002019 0.00000  test
                 avx_ChirpData_d 0.001376 0.00000  choice

            Third run

                     v_ChirpData 0.003673 0.00000  test
                   fpu_ChirpData 0.008651 0.00000  test
               fpu_opt_ChirpData 0.003576 0.00000  test
             sse1_ChirpData_ak8e 0.004199 0.00000  test
              sse2_ChirpData_ak8 0.003150 0.00000  test
              sse3_ChirpData_ak8 0.002981 0.00000  test
                 avx_ChirpData_a 0.001474 0.00000  test
                 avx_ChirpData_b 0.001644 0.00000  test
                 avx_ChirpData_c 0.001483 0.00000  test
                 avx_ChirpData_d 0.001379 0.00000  test
                 avx_ChirpData_e 0.001525 0.00000  test
                 avx_ChirpData_f 0.001572 0.00000  test
                 avx_ChirpData_g 0.001617 0.00000  test
                 avx_ChirpData_h 0.002022 0.00000  test
                 avx_ChirpData_d 0.001379 0.00000  choice

                   Test duration     5.28 seconds

Ftst_v7 completed successfully.

Claggy
Title: Re: AVX Optimized App Development
Post by: Josef W. Segur on 11 May 2012, 05:39:43 pm
...
Mine seems to like f, where arkayns prefers g. Not very conclusive :)

Indeed not, and these ~2% differences simply prove I haven't yet found what I'm looking for. Having the h test go the wrong way may be more revealing if I can correlate it with BD features.
                                                             Joe
Title: Re: AVX Optimized App Development
Post by: Josef W. Segur on 14 May 2012, 04:25:56 pm
Trying to find the strengths of Bulldozer, I've added a chirp variant using both AVX and FMA4 in J50. It does reduce the number of instructions in the loop by 8 or more so should have some measurable effect, though it still has to load and save just as much data. Other than the FMA4 changes, it's like the g AVX version.

If I have everything right, it ought to show as unsupported on Sandy Bridge and run on Bulldozer. If not, anything might happen.  :P
                                                                     Joe
Title: Re: AVX Optimized App Development
Post by: arkayn on 14 May 2012, 04:33:11 pm
FX-4100
BOINC running on GTX460

=========================================================
Ftst_v7_J50_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.009627 0.00000  test
                   fpu_ChirpData 0.019200 0.00000  test
               fpu_opt_ChirpData 0.008951 0.00000  test
             sse1_ChirpData_ak8e 0.007910 0.00000  test
              sse2_ChirpData_ak8 0.005040 0.00000  test
              sse3_ChirpData_ak8 0.004927 0.00000  test
                 avx_ChirpData_a 0.004119 0.00000  test
                 avx_ChirpData_b 0.004149 0.00000  test
                 avx_ChirpData_c 0.004650 0.00000  test
                 avx_ChirpData_d 0.004221 0.00000  test
                 avx_ChirpData_e 0.004187 0.00000  test
                 avx_ChirpData_f 0.004013 0.00000  test
                 avx_ChirpData_g 0.004171 0.00000  test
                 avx_ChirpData_h 0.005179 0.00000  test
            avx_fma4_ChirpData_a 0.003669 0.00000  test
            avx_fma4_ChirpData_a 0.003669 0.00000  choice

            Second run

                     v_ChirpData 0.009635 0.00000  test
                   fpu_ChirpData 0.018249 0.00000  test
               fpu_opt_ChirpData 0.009154 0.00000  test
             sse1_ChirpData_ak8e 0.007586 0.00000  test
              sse2_ChirpData_ak8 0.004708 0.00000  test
              sse3_ChirpData_ak8 0.004546 0.00000  test
                 avx_ChirpData_a 0.004097 0.00000  test
                 avx_ChirpData_b 0.004024 0.00000  test
                 avx_ChirpData_c 0.004339 0.00000  test
                 avx_ChirpData_d 0.004329 0.00000  test
                 avx_ChirpData_e 0.004205 0.00000  test
                 avx_ChirpData_f 0.003973 0.00000  test
                 avx_ChirpData_g 0.003893 0.00000  test
                 avx_ChirpData_h 0.004708 0.00000  test
            avx_fma4_ChirpData_a 0.003704 0.00000  test
            avx_fma4_ChirpData_a 0.003704 0.00000  choice

            Third run

                     v_ChirpData 0.009304 0.00000  test
                   fpu_ChirpData 0.019267 0.00000  test
               fpu_opt_ChirpData 0.008838 0.00000  test
             sse1_ChirpData_ak8e 0.007273 0.00000  test
              sse2_ChirpData_ak8 0.004618 0.00000  test
              sse3_ChirpData_ak8 0.004530 0.00000  test
                 avx_ChirpData_a 0.004216 0.00000  test
                 avx_ChirpData_b 0.004080 0.00000  test
                 avx_ChirpData_c 0.004223 0.00000  test
                 avx_ChirpData_d 0.004374 0.00000  test
                 avx_ChirpData_e 0.004065 0.00000  test
                 avx_ChirpData_f 0.003829 0.00000  test
                 avx_ChirpData_g 0.004143 0.00000  test
                 avx_ChirpData_h 0.004819 0.00000  test
            avx_fma4_ChirpData_a 0.003452 0.00000  test
            avx_fma4_ChirpData_a 0.003452 0.00000  choice

                   Test duration     9.33 seconds

Ftst_v7 completed successfully.


i3-2120
BOINC running on GTX560

=========================================================
Ftst_v7_J50_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.004834 0.00000  test
                   fpu_ChirpData 0.012480 0.00000  test
               fpu_opt_ChirpData 0.004621 0.00000  test
             sse1_ChirpData_ak8e 0.005919 0.00000  test
              sse2_ChirpData_ak8 0.004306 0.00000  test
              sse3_ChirpData_ak8 0.004118 0.00000  test
                 avx_ChirpData_a 0.002149 0.00000  test
                 avx_ChirpData_b 0.002130 0.00000  test
                 avx_ChirpData_c 0.002282 0.00000  test
                 avx_ChirpData_d 0.002143 0.00000  test
                 avx_ChirpData_e 0.002010 0.00000  test
                 avx_ChirpData_f 0.002116 0.00000  test
                 avx_ChirpData_g 0.002156 0.00000  test
                 avx_ChirpData_h 0.002744 0.00000  test
            avx_fma4_ChirpData_a not supported by system
                 avx_ChirpData_e 0.002010 0.00000  choice

            Second run

                     v_ChirpData 0.004538 0.00000  test
                   fpu_ChirpData 0.012324 0.00000  test
               fpu_opt_ChirpData 0.004330 0.00000  test
             sse1_ChirpData_ak8e 0.005758 0.00000  test
              sse2_ChirpData_ak8 0.004179 0.00000  test
              sse3_ChirpData_ak8 0.004003 0.00000  test
                 avx_ChirpData_a 0.002143 0.00000  test
                 avx_ChirpData_b 0.002585 0.00000  test
                 avx_ChirpData_c 0.002312 0.00000  test
                 avx_ChirpData_d 0.001930 0.00000  test
                 avx_ChirpData_e 0.002107 0.00000  test
                 avx_ChirpData_f 0.002309 0.00000  test
                 avx_ChirpData_g 0.002067 0.00000  test
                 avx_ChirpData_h 0.002657 0.00000  test
            avx_fma4_ChirpData_a not supported by system
                 avx_ChirpData_d 0.001930 0.00000  choice

            Third run

                     v_ChirpData 0.005770 0.00000  test
                   fpu_ChirpData 0.012279 0.00000  test
               fpu_opt_ChirpData 0.004469 0.00000  test
             sse1_ChirpData_ak8e 0.006027 0.00000  test
              sse2_ChirpData_ak8 0.004288 0.00000  test
              sse3_ChirpData_ak8 0.004026 0.00000  test
                 avx_ChirpData_a 0.002081 0.00000  test
                 avx_ChirpData_b 0.002052 0.00000  test
                 avx_ChirpData_c 0.002536 0.00000  test
                 avx_ChirpData_d 0.001946 0.00000  test
                 avx_ChirpData_e 0.001987 0.00000  test
                 avx_ChirpData_f 0.002057 0.00000  test
                 avx_ChirpData_g 0.002298 0.00000  test
                 avx_ChirpData_h 0.002790 0.00000  test
            avx_fma4_ChirpData_a not supported by system
                 avx_ChirpData_d 0.001946 0.00000  choice

                   Test duration     7.68 seconds

Ftst_v7 completed successfully.
Title: Re: AVX Optimized App Development
Post by: Mike on 14 May 2012, 04:57:00 pm
FX 8150 @4.4 GHZ Win 8 CP

Ftst_v7_J50_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.008360 0.00000  test
                   fpu_ChirpData 0.013990 0.00000  test
               fpu_opt_ChirpData 0.009692 0.00000  test
             sse1_ChirpData_ak8e 0.005746 0.00000  test
              sse2_ChirpData_ak8 0.003786 0.00000  test
              sse3_ChirpData_ak8 0.003776 0.00000  test
                 avx_ChirpData_a 0.003227 0.00000  test
                 avx_ChirpData_b 0.003268 0.00000  test
                 avx_ChirpData_c 0.003384 0.00000  test
                 avx_ChirpData_d 0.003312 0.00000  test
                 avx_ChirpData_e 0.003169 0.00000  test
                 avx_ChirpData_f 0.003059 0.00000  test
                 avx_ChirpData_g 0.003046 0.00000  test
                 avx_ChirpData_h 0.003847 0.00000  test
            avx_fma4_ChirpData_a 0.002927 0.00000  test
            avx_fma4_ChirpData_a 0.002927 0.00000  choice

            Second run

                     v_ChirpData 0.009693 0.00000  test
                   fpu_ChirpData 0.013975 0.00000  test
               fpu_opt_ChirpData 0.009653 0.00000  test
             sse1_ChirpData_ak8e 0.005742 0.00000  test
              sse2_ChirpData_ak8 0.003836 0.00000  test
              sse3_ChirpData_ak8 0.003730 0.00000  test
                 avx_ChirpData_a 0.003346 0.00000  test
                 avx_ChirpData_b 0.003312 0.00000  test
                 avx_ChirpData_c 0.003432 0.00000  test
                 avx_ChirpData_d 0.003368 0.00000  test
                 avx_ChirpData_e 0.003222 0.00000  test
                 avx_ChirpData_f 0.003203 0.00000  test
                 avx_ChirpData_g 0.003240 0.00000  test
                 avx_ChirpData_h 0.003889 0.00000  test
            avx_fma4_ChirpData_a 0.003078 0.00000  test
            avx_fma4_ChirpData_a 0.003078 0.00000  choice

            Third run

                     v_ChirpData 0.009655 0.00000  test
                   fpu_ChirpData 0.013997 0.00000  test
               fpu_opt_ChirpData 0.009633 0.00000  test
             sse1_ChirpData_ak8e 0.005748 0.00000  test
              sse2_ChirpData_ak8 0.003857 0.00000  test
              sse3_ChirpData_ak8 0.003740 0.00000  test
                 avx_ChirpData_a 0.003364 0.00000  test
                 avx_ChirpData_b 0.003325 0.00000  test
                 avx_ChirpData_c 0.003434 0.00000  test
                 avx_ChirpData_d 0.003386 0.00000  test
                 avx_ChirpData_e 0.003235 0.00000  test
                 avx_ChirpData_f 0.003228 0.00000  test
                 avx_ChirpData_g 0.003249 0.00000  test
                 avx_ChirpData_h 0.003882 0.00000  test
            avx_fma4_ChirpData_a 0.003090 0.00000  test
            avx_fma4_ChirpData_a 0.003090 0.00000  choice

                   Test duration     7.26 seconds

Ftst_v7 completed successfully.
Title: Re: AVX Optimized App Development
Post by: PatrickV2 on 15 May 2012, 01:13:54 pm
I will have an Ivy Bridge i7-3770 based PC (Z77 mainboard) available for a (short) while in the near future.

Is there any interest in running this benchmark/test-tool on that config?

Regards, Patrick.
Title: Re: AVX Optimized App Development
Post by: Josef W. Segur on 15 May 2012, 11:07:29 pm
Yes, please! The broader the range of systems tested the better. If you'd run both the J45 test attached to message 37870 (http://lunatics.kwsn.net/1-discussion-forum/avx-optimized-app-development.msg37870.html#msg37870) and whatever the latest Chirponly version is at that time, it would be a help.
                                                                Joe
Title: Re: AVX Optimized App Development
Post by: Josef W. Segur on 16 May 2012, 11:24:49 am
The FMA4 a variant produced about a 5% speedup by reducing the number of floating point instructions in the inner loop by ~11%. That's good, but confirms that getting the data transferred still needs improvement. For J51 I'm trying the TLB priming again, but without block prefetching. The i variant for AVX is modified from the h variant, and the changes were merged to the b variant for AVX+FMA4.

Edit: Attachment removed, see later post for current version
                                                         Joe
Title: Re: AVX Optimized App Development
Post by: arkayn on 16 May 2012, 11:58:06 am
FX-4100
BOINC running on 460

=========================================================
Ftst_v7_J51_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.009009 0.00000  test
                   fpu_ChirpData 0.018200 0.00000  test
               fpu_opt_ChirpData 0.008752 0.00000  test
             sse1_ChirpData_ak8e 0.007503 0.00000  test
              sse2_ChirpData_ak8 0.004782 0.00000  test
              sse3_ChirpData_ak8 0.004801 0.00000  test
                 avx_ChirpData_a 0.003903 0.00000  test
                 avx_ChirpData_b 0.003902 0.00000  test
                 avx_ChirpData_c 0.004298 0.00000  test
                 avx_ChirpData_d 0.004136 0.00000  test
                 avx_ChirpData_e 0.003988 0.00000  test
                 avx_ChirpData_f 0.003865 0.00000  test
                 avx_ChirpData_g 0.003858 0.00000  test
                 avx_ChirpData_h 0.004558 0.00000  test
                 avx_ChirpData_i 0.004006 0.00000  test
            avx_fma4_ChirpData_a 0.003524 0.00000  test
            avx_fma4_ChirpData_b 0.060127 0.50095  test
            avx_fma4_ChirpData_a 0.003524 0.00000  choice

            Second run

                     v_ChirpData 0.009023 0.00000  test
                   fpu_ChirpData 0.018034 0.00000  test
               fpu_opt_ChirpData 0.008862 0.00000  test
             sse1_ChirpData_ak8e 0.007292 0.00000  test
              sse2_ChirpData_ak8 0.004615 0.00000  test
              sse3_ChirpData_ak8 0.004532 0.00000  test
                 avx_ChirpData_a 0.003917 0.00000  test
                 avx_ChirpData_b 0.003865 0.00000  test
                 avx_ChirpData_c 0.004167 0.00000  test
                 avx_ChirpData_d 0.004040 0.00000  test
                 avx_ChirpData_e 0.004026 0.00000  test
                 avx_ChirpData_f 0.003821 0.00000  test
                 avx_ChirpData_g 0.003666 0.00000  test
                 avx_ChirpData_h 0.004601 0.00000  test
                 avx_ChirpData_i 0.003980 0.00000  test
            avx_fma4_ChirpData_a 0.003389 0.00000  test
            avx_fma4_ChirpData_b 0.058483 0.50095  test
            avx_fma4_ChirpData_a 0.003389 0.00000  choice

            Third run

                     v_ChirpData 0.008824 0.00000  test
                   fpu_ChirpData 0.017494 0.00000  test
               fpu_opt_ChirpData 0.008599 0.00000  test
             sse1_ChirpData_ak8e 0.007149 0.00000  test
              sse2_ChirpData_ak8 0.004593 0.00000  test
              sse3_ChirpData_ak8 0.004453 0.00000  test
                 avx_ChirpData_a 0.003842 0.00000  test
                 avx_ChirpData_b 0.003825 0.00000  test
                 avx_ChirpData_c 0.004122 0.00000  test
                 avx_ChirpData_d 0.004023 0.00000  test
                 avx_ChirpData_e 0.003950 0.00000  test
                 avx_ChirpData_f 0.003855 0.00000  test
                 avx_ChirpData_g 0.003928 0.00000  test
                 avx_ChirpData_h 0.004565 0.00000  test
                 avx_ChirpData_i 0.004058 0.00000  test
            avx_fma4_ChirpData_a 0.003531 0.00000  test
            avx_fma4_ChirpData_b 0.059600 0.50095  test
            avx_fma4_ChirpData_a 0.003531 0.00000  choice

                   Test duration    11.53 seconds

Ftst_v7 completed successfully.


i3-2120
BOINC running on 560

=========================================================
Ftst_v7_J51_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.004599 0.00000  test
                   fpu_ChirpData 0.012435 0.00000  test
               fpu_opt_ChirpData 0.004366 0.00000  test
             sse1_ChirpData_ak8e 0.006014 0.00000  test
              sse2_ChirpData_ak8 0.004207 0.00000  test
              sse3_ChirpData_ak8 0.004177 0.00000  test
                 avx_ChirpData_a 0.002153 0.00000  test
                 avx_ChirpData_b 0.002141 0.00000  test
                 avx_ChirpData_c 0.002217 0.00000  test
                 avx_ChirpData_d 0.002032 0.00000  test
                 avx_ChirpData_e 0.002002 0.00000  test
                 avx_ChirpData_f 0.002125 0.00000  test
                 avx_ChirpData_g 0.002081 0.00000  test
                 avx_ChirpData_h 0.002745 0.00000  test
                 avx_ChirpData_i 0.002329 0.00000  test
            avx_fma4_ChirpData_a not supported by system
            avx_fma4_ChirpData_b not supported by system
                 avx_ChirpData_e 0.002002 0.00000  choice

            Second run

                     v_ChirpData 0.004888 0.00000  test
                   fpu_ChirpData 0.012563 0.00000  test
               fpu_opt_ChirpData 0.004551 0.00000  test
             sse1_ChirpData_ak8e 0.005902 0.00000  test
              sse2_ChirpData_ak8 0.004339 0.00000  test
              sse3_ChirpData_ak8 0.004017 0.00000  test
                 avx_ChirpData_a 0.002142 0.00000  test
                 avx_ChirpData_b 0.002153 0.00000  test
                 avx_ChirpData_c 0.002186 0.00000  test
                 avx_ChirpData_d 0.002007 0.00000  test
                 avx_ChirpData_e 0.001946 0.00000  test
                 avx_ChirpData_f 0.002063 0.00000  test
                 avx_ChirpData_g 0.002174 0.00000  test
                 avx_ChirpData_h 0.002790 0.00000  test
                 avx_ChirpData_i 0.002347 0.00000  test
            avx_fma4_ChirpData_a not supported by system
            avx_fma4_ChirpData_b not supported by system
                 avx_ChirpData_e 0.001946 0.00000  choice

            Third run

                     v_ChirpData 0.004868 0.00000  test
                   fpu_ChirpData 0.012536 0.00000  test
               fpu_opt_ChirpData 0.004565 0.00000  test
             sse1_ChirpData_ak8e 0.005728 0.00000  test
              sse2_ChirpData_ak8 0.004225 0.00000  test
              sse3_ChirpData_ak8 0.004123 0.00000  test
                 avx_ChirpData_a 0.002121 0.00000  test
                 avx_ChirpData_b 0.002155 0.00000  test
                 avx_ChirpData_c 0.002184 0.00000  test
                 avx_ChirpData_d 0.002048 0.00000  test
                 avx_ChirpData_e 0.002039 0.00000  test
                 avx_ChirpData_f 0.002137 0.00000  test
                 avx_ChirpData_g 0.002188 0.00000  test
                 avx_ChirpData_h 0.002760 0.00000  test
                 avx_ChirpData_i 0.002335 0.00000  test
            avx_fma4_ChirpData_a not supported by system
            avx_fma4_ChirpData_b not supported by system
                 avx_ChirpData_e 0.002039 0.00000  choice

                   Test duration     8.08 seconds

Ftst_v7 completed successfully.
Title: Re: AVX Optimized App Development
Post by: KarVi on 16 May 2012, 12:17:36 pm
FX8150@4.5

=========================================================
Ftst_v7_J51_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.007185 0.00000  test
                   fpu_ChirpData 0.013632 0.00000  test
               fpu_opt_ChirpData 0.007034 0.00000  test
             sse1_ChirpData_ak8e 0.005612 0.00000  test
              sse2_ChirpData_ak8 0.003647 0.00000  test
              sse3_ChirpData_ak8 0.003540 0.00000  test
                 avx_ChirpData_a 0.003041 0.00000  test
                 avx_ChirpData_b 0.002989 0.00000  test
                 avx_ChirpData_c 0.003246 0.00000  test
                 avx_ChirpData_d 0.003197 0.00000  test
                 avx_ChirpData_e 0.003099 0.00000  test
                 avx_ChirpData_f 0.002934 0.00000  test
                 avx_ChirpData_g 0.003017 0.00000  test
                 avx_ChirpData_h 0.003557 0.00000  test
                 avx_ChirpData_i 0.003103 0.00000  test
            avx_fma4_ChirpData_a 0.002702 0.00000  test
            avx_fma4_ChirpData_b 0.046052 0.50095  test
            avx_fma4_ChirpData_a 0.002702 0.00000  choice

            Second run

                     v_ChirpData 0.007192 0.00000  test
                   fpu_ChirpData 0.013633 0.00000  test
               fpu_opt_ChirpData 0.007051 0.00000  test
             sse1_ChirpData_ak8e 0.005563 0.00000  test
              sse2_ChirpData_ak8 0.003670 0.00000  test
              sse3_ChirpData_ak8 0.003536 0.00000  test
                 avx_ChirpData_a 0.003046 0.00000  test
                 avx_ChirpData_b 0.002989 0.00000  test
                 avx_ChirpData_c 0.003246 0.00000  test
                 avx_ChirpData_d 0.003171 0.00000  test
                 avx_ChirpData_e 0.003096 0.00000  test
                 avx_ChirpData_f 0.002938 0.00000  test
                 avx_ChirpData_g 0.002863 0.00000  test
                 avx_ChirpData_h 0.003540 0.00000  test
                 avx_ChirpData_i 0.003107 0.00000  test
            avx_fma4_ChirpData_a 0.002688 0.00000  test
            avx_fma4_ChirpData_b 0.045858 0.50095  test
            avx_fma4_ChirpData_a 0.002688 0.00000  choice

            Third run

                     v_ChirpData 0.007145 0.00000  test
                   fpu_ChirpData 0.013630 0.00000  test
               fpu_opt_ChirpData 0.007010 0.00000  test
             sse1_ChirpData_ak8e 0.005560 0.00000  test
              sse2_ChirpData_ak8 0.003667 0.00000  test
              sse3_ChirpData_ak8 0.003536 0.00000  test
                 avx_ChirpData_a 0.003046 0.00000  test
                 avx_ChirpData_b 0.003003 0.00000  test
                 avx_ChirpData_c 0.003244 0.00000  test
                 avx_ChirpData_d 0.003178 0.00000  test
                 avx_ChirpData_e 0.003092 0.00000  test
                 avx_ChirpData_f 0.002933 0.00000  test
                 avx_ChirpData_g 0.002958 0.00000  test
                 avx_ChirpData_h 0.003534 0.00000  test
                 avx_ChirpData_i 0.003106 0.00000  test
            avx_fma4_ChirpData_a 0.002691 0.00000  test
            avx_fma4_ChirpData_b 0.045893 0.50095  test
            avx_fma4_ChirpData_a 0.002691 0.00000  choice

                   Test duration     8.88 seconds

Ftst_v7 completed successfully.

Nice improvement from Fused Multiply-Add :)
Title: Re: AVX Optimized App Development
Post by: Claggy on 16 May 2012, 01:12:37 pm
i7-2600K @4.7GHz (Boinc running):

=========================================================
Ftst_v7_J51_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.011312 0.00000  test
                   fpu_ChirpData 0.015995 0.00000  test
               fpu_opt_ChirpData 0.012151 0.00000  test
             sse1_ChirpData_ak8e 0.006951 0.00000  test
              sse2_ChirpData_ak8 0.005494 0.00000  test
              sse3_ChirpData_ak8 0.005626 0.00000  test
                 avx_ChirpData_a 0.003442 0.00000  test
                 avx_ChirpData_b 0.003206 0.00000  test
                 avx_ChirpData_c 0.003540 0.00000  test
                 avx_ChirpData_d 0.003456 0.00000  test
                 avx_ChirpData_e 0.003055 0.00000  test
                 avx_ChirpData_f 0.003544 0.00000  test
                 avx_ChirpData_g 0.003209 0.00000  test
                 avx_ChirpData_h 0.004235 0.00000  test
                 avx_ChirpData_i 0.003265 0.00000  test
            avx_fma4_ChirpData_a not supported by system
            avx_fma4_ChirpData_b not supported by system
                 avx_ChirpData_e 0.003055 0.00000  choice

            Second run

                     v_ChirpData 0.009754 0.00000  test
                   fpu_ChirpData 0.016226 0.00000  test
               fpu_opt_ChirpData 0.010134 0.00000  test
             sse1_ChirpData_ak8e 0.006801 0.00000  test
              sse2_ChirpData_ak8 0.005874 0.00000  test
              sse3_ChirpData_ak8 0.005385 0.00000  test
                 avx_ChirpData_a 0.003425 0.00000  test
                 avx_ChirpData_b 0.003101 0.00000  test
                 avx_ChirpData_c 0.003570 0.00000  test
                 avx_ChirpData_d 0.003430 0.00000  test
                 avx_ChirpData_e 0.003382 0.00000  test
                 avx_ChirpData_f 0.003381 0.00000  test
                 avx_ChirpData_g 0.003525 0.00000  test
                 avx_ChirpData_h 0.004078 0.00000  test
                 avx_ChirpData_i 0.003777 0.00000  test
            avx_fma4_ChirpData_a not supported by system
            avx_fma4_ChirpData_b not supported by system
                 avx_ChirpData_b 0.003101 0.00000  choice

            Third run

                     v_ChirpData 0.011256 0.00000  test
                   fpu_ChirpData 0.016422 0.00000  test
               fpu_opt_ChirpData 0.010467 0.00000  test
             sse1_ChirpData_ak8e 0.006613 0.00000  test
              sse2_ChirpData_ak8 0.005293 0.00000  test
              sse3_ChirpData_ak8 0.005231 0.00000  test
                 avx_ChirpData_a 0.003160 0.00000  test
                 avx_ChirpData_b 0.003300 0.00000  test
                 avx_ChirpData_c 0.003491 0.00000  test
                 avx_ChirpData_d 0.003294 0.00000  test
                 avx_ChirpData_e 0.002963 0.00000  test
                 avx_ChirpData_f 0.003788 0.00000  test
                 avx_ChirpData_g 0.003262 0.00000  test
                 avx_ChirpData_h 0.004430 0.00000  test
                 avx_ChirpData_i 0.003728 0.00000  test
            avx_fma4_ChirpData_a not supported by system
            avx_fma4_ChirpData_b not supported by system
                 avx_ChirpData_e 0.002963 0.00000  choice

                   Test duration     8.92 seconds

Ftst_v7 completed successfully.
=========================================================

i7-2600K @4.7GHz (Boinc suspended):

=========================================================
Ftst_v7_J51_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.003675 0.00000  test
                   fpu_ChirpData 0.008690 0.00000  test
               fpu_opt_ChirpData 0.003575 0.00000  test
             sse1_ChirpData_ak8e 0.004212 0.00000  test
              sse2_ChirpData_ak8 0.003155 0.00000  test
              sse3_ChirpData_ak8 0.002982 0.00000  test
                 avx_ChirpData_a 0.001475 0.00000  test
                 avx_ChirpData_b 0.001642 0.00000  test
                 avx_ChirpData_c 0.001487 0.00000  test
                 avx_ChirpData_d 0.001379 0.00000  test
                 avx_ChirpData_e 0.001522 0.00000  test
                 avx_ChirpData_f 0.001572 0.00000  test
                 avx_ChirpData_g 0.001623 0.00000  test
                 avx_ChirpData_h 0.002022 0.00000  test
                 avx_ChirpData_i 0.001737 0.00000  test
            avx_fma4_ChirpData_a not supported by system
            avx_fma4_ChirpData_b not supported by system
                 avx_ChirpData_d 0.001379 0.00000  choice

            Second run

                     v_ChirpData 0.003690 0.00000  test
                   fpu_ChirpData 0.008665 0.00000  test
               fpu_opt_ChirpData 0.003559 0.00000  test
             sse1_ChirpData_ak8e 0.004219 0.00000  test
              sse2_ChirpData_ak8 0.003156 0.00000  test
              sse3_ChirpData_ak8 0.002984 0.00000  test
                 avx_ChirpData_a 0.001472 0.00000  test
                 avx_ChirpData_b 0.001641 0.00000  test
                 avx_ChirpData_c 0.001482 0.00000  test
                 avx_ChirpData_d 0.001375 0.00000  test
                 avx_ChirpData_e 0.001520 0.00000  test
                 avx_ChirpData_f 0.001567 0.00000  test
                 avx_ChirpData_g 0.001618 0.00000  test
                 avx_ChirpData_h 0.002019 0.00000  test
                 avx_ChirpData_i 0.001722 0.00000  test
            avx_fma4_ChirpData_a not supported by system
            avx_fma4_ChirpData_b not supported by system
                 avx_ChirpData_d 0.001375 0.00000  choice

            Third run

                     v_ChirpData 0.003747 0.00000  test
                   fpu_ChirpData 0.008661 0.00000  test
               fpu_opt_ChirpData 0.003566 0.00000  test
             sse1_ChirpData_ak8e 0.004212 0.00000  test
              sse2_ChirpData_ak8 0.003154 0.00000  test
              sse3_ChirpData_ak8 0.002978 0.00000  test
                 avx_ChirpData_a 0.001474 0.00000  test
                 avx_ChirpData_b 0.001640 0.00000  test
                 avx_ChirpData_c 0.001482 0.00000  test
                 avx_ChirpData_d 0.001377 0.00000  test
                 avx_ChirpData_e 0.001521 0.00000  test
                 avx_ChirpData_f 0.001568 0.00000  test
                 avx_ChirpData_g 0.001617 0.00000  test
                 avx_ChirpData_h 0.002012 0.00000  test
                 avx_ChirpData_i 0.001728 0.00000  test
            avx_fma4_ChirpData_a not supported by system
            avx_fma4_ChirpData_b not supported by system
                 avx_ChirpData_d 0.001377 0.00000  choice

                   Test duration     5.62 seconds

Ftst_v7 completed successfully.

Claggy
Title: Re: AVX Optimized App Development
Post by: PatrickV2 on 16 May 2012, 02:20:58 pm
Yes, please! The broader the range of systems tested the better. If you'd run both the J45 test attached to message 37870 (http://lunatics.kwsn.net/1-discussion-forum/avx-optimized-app-development.msg37870.html#msg37870) and whatever the latest Chirponly version is at that time, it would be a help.
                                                                Joe

OK, no promises, since it's not my machine (but a custom-built rig I configured for my younger brother), but I will try to run the relevant tools. I'm planning to use Seti as a way to do a burn-in test on the machine; with a GTX560Ti 2GB it should be able to do quite some crunching. ;)

I expect the machine to arrive somewhere in the course of next week...

Regards, Patrick.
Title: Re: AVX Optimized App Development
Post by: Mike on 17 May 2012, 11:11:31 am
FX 8150 @4.4 GHZ Win 8 CP

Ftst_v7_J51_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.008439 0.00000  test
                   fpu_ChirpData 0.015252 0.00000  test
               fpu_opt_ChirpData 0.009783 0.00000  test
             sse1_ChirpData_ak8e 0.005848 0.00000  test
              sse2_ChirpData_ak8 0.003852 0.00000  test
              sse3_ChirpData_ak8 0.003749 0.00000  test
                 avx_ChirpData_a 0.003289 0.00000  test
                 avx_ChirpData_b 0.003285 0.00000  test
                 avx_ChirpData_c 0.003449 0.00000  test
                 avx_ChirpData_d 0.003366 0.00000  test
                 avx_ChirpData_e 0.003237 0.00000  test
                 avx_ChirpData_f 0.003163 0.00000  test
                 avx_ChirpData_g 0.003121 0.00000  test
                 avx_ChirpData_h 0.003925 0.00000  test
                 avx_ChirpData_i 0.003333 0.00000  test
            avx_fma4_ChirpData_a 0.002981 0.00000  test
            avx_fma4_ChirpData_b 0.048056 0.50095  test
            avx_fma4_ChirpData_a 0.002981 0.00000  choice

            Second run

                     v_ChirpData 0.009848 0.00000  test
                   fpu_ChirpData 0.014183 0.00000  test
               fpu_opt_ChirpData 0.009766 0.00000  test
             sse1_ChirpData_ak8e 0.005836 0.00000  test
              sse2_ChirpData_ak8 0.003959 0.00000  test
              sse3_ChirpData_ak8 0.003815 0.00000  test
                 avx_ChirpData_a 0.003388 0.00000  test
                 avx_ChirpData_b 0.003360 0.00000  test
                 avx_ChirpData_c 0.003465 0.00000  test
                 avx_ChirpData_d 0.003398 0.00000  test
                 avx_ChirpData_e 0.003272 0.00000  test
                 avx_ChirpData_f 0.003264 0.00000  test
                 avx_ChirpData_g 0.003274 0.00000  test
                 avx_ChirpData_h 0.003943 0.00000  test
                 avx_ChirpData_i 0.003511 0.00000  test
            avx_fma4_ChirpData_a 0.003121 0.00000  test
            avx_fma4_ChirpData_b 0.048360 0.50095  test
            avx_fma4_ChirpData_a 0.003121 0.00000  choice

            Third run

                     v_ChirpData 0.009818 0.00000  test
                   fpu_ChirpData 0.014177 0.00000  test
               fpu_opt_ChirpData 0.009767 0.00000  test
             sse1_ChirpData_ak8e 0.005836 0.00000  test
              sse2_ChirpData_ak8 0.003961 0.00000  test
              sse3_ChirpData_ak8 0.003790 0.00000  test
                 avx_ChirpData_a 0.003392 0.00000  test
                 avx_ChirpData_b 0.003364 0.00000  test
                 avx_ChirpData_c 0.003471 0.00000  test
                 avx_ChirpData_d 0.003407 0.00000  test
                 avx_ChirpData_e 0.003273 0.00000  test
                 avx_ChirpData_f 0.003261 0.00000  test
                 avx_ChirpData_g 0.003282 0.00000  test
                 avx_ChirpData_h 0.003940 0.00000  test
                 avx_ChirpData_i 0.003517 0.00000  test
            avx_fma4_ChirpData_a 0.003135 0.00000  test
            avx_fma4_ChirpData_b 0.048371 0.50095  test
            avx_fma4_ChirpData_a 0.003135 0.00000  choice

                   Test duration     9.65 seconds

Ftst_v7 completed successfully.
Title: Re: AVX Optimized App Development
Post by: Josef W. Segur on 18 May 2012, 07:50:22 pm
Another new Chirponly test, J52, is attached.

Fixed (I hope) the problem which made the avx_fma4 b variant so slow and inaccurate, added a c variant with a different approach to TLB priming.
                                   Joe
Title: Re: AVX Optimized App Development
Post by: arkayn on 18 May 2012, 08:14:14 pm
FX-4100
BOINC Running on 460

=========================================================
Ftst_v7_J52_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.008840 0.00000  test
                   fpu_ChirpData 0.018138 0.00000  test
               fpu_opt_ChirpData 0.009096 0.00000  test
             sse1_ChirpData_ak8e 0.007134 0.00000  test
              sse2_ChirpData_ak8 0.004616 0.00000  test
              sse3_ChirpData_ak8 0.004581 0.00000  test
                 avx_ChirpData_a 0.004071 0.00000  test
                 avx_ChirpData_b 0.003964 0.00000  test
                 avx_ChirpData_c 0.004295 0.00000  test
                 avx_ChirpData_d 0.004130 0.00000  test
                 avx_ChirpData_e 0.003982 0.00000  test
                 avx_ChirpData_f 0.003781 0.00000  test
                 avx_ChirpData_g 0.003714 0.00000  test
                 avx_ChirpData_h 0.004528 0.00000  test
                 avx_ChirpData_i 0.003994 0.00000  test
            avx_fma4_ChirpData_a 0.003473 0.00000  test
            avx_fma4_ChirpData_b 0.003617 0.00000  test
            avx_fma4_ChirpData_c 0.003739 0.00000  test
            avx_fma4_ChirpData_a 0.003473 0.00000  choice

            Second run

                     v_ChirpData 0.009005 0.00000  test
                   fpu_ChirpData 0.017681 0.00000  test
               fpu_opt_ChirpData 0.008559 0.00000  test
             sse1_ChirpData_ak8e 0.007305 0.00000  test
              sse2_ChirpData_ak8 0.004635 0.00000  test
              sse3_ChirpData_ak8 0.004459 0.00000  test
                 avx_ChirpData_a 0.003960 0.00000  test
                 avx_ChirpData_b 0.003880 0.00000  test
                 avx_ChirpData_c 0.004260 0.00000  test
                 avx_ChirpData_d 0.004184 0.00000  test
                 avx_ChirpData_e 0.004021 0.00000  test
                 avx_ChirpData_f 0.003816 0.00000  test
                 avx_ChirpData_g 0.003791 0.00000  test
                 avx_ChirpData_h 0.004508 0.00000  test
                 avx_ChirpData_i 0.003953 0.00000  test
            avx_fma4_ChirpData_a 0.003404 0.00000  test
            avx_fma4_ChirpData_b 0.003597 0.00000  test
            avx_fma4_ChirpData_c 0.003738 0.00000  test
            avx_fma4_ChirpData_a 0.003404 0.00000  choice

            Third run

                     v_ChirpData 0.008951 0.00000  test
                   fpu_ChirpData 0.017233 0.00000  test
               fpu_opt_ChirpData 0.008535 0.00000  test
             sse1_ChirpData_ak8e 0.007110 0.00000  test
              sse2_ChirpData_ak8 0.004573 0.00000  test
              sse3_ChirpData_ak8 0.004376 0.00000  test
                 avx_ChirpData_a 0.003833 0.00000  test
                 avx_ChirpData_b 0.003780 0.00000  test
                 avx_ChirpData_c 0.004112 0.00000  test
                 avx_ChirpData_d 0.004140 0.00000  test
                 avx_ChirpData_e 0.003956 0.00000  test
                 avx_ChirpData_f 0.003741 0.00000  test
                 avx_ChirpData_g 0.003686 0.00000  test
                 avx_ChirpData_h 0.004516 0.00000  test
                 avx_ChirpData_i 0.003902 0.00000  test
            avx_fma4_ChirpData_a 0.003376 0.00000  test
            avx_fma4_ChirpData_b 0.003804 0.00000  test
            avx_fma4_ChirpData_c 0.003685 0.00000  test
            avx_fma4_ChirpData_a 0.003376 0.00000  choice

                   Test duration    10.54 seconds

Ftst_v7 completed successfully.

i3-2120
BOINC Running on 560

=========================================================
Ftst_v7_J52_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.005332 0.00000  test
                   fpu_ChirpData 0.012461 0.00000  test
               fpu_opt_ChirpData 0.004724 0.00000  test
             sse1_ChirpData_ak8e 0.005928 0.00000  test
              sse2_ChirpData_ak8 0.004362 0.00000  test
              sse3_ChirpData_ak8 0.004210 0.00000  test
                 avx_ChirpData_a 0.002198 0.00000  test
                 avx_ChirpData_b 0.002080 0.00000  test
                 avx_ChirpData_c 0.002259 0.00000  test
                 avx_ChirpData_d 0.002050 0.00000  test
                 avx_ChirpData_e 0.002061 0.00000  test
                 avx_ChirpData_f 0.002186 0.00000  test
                 avx_ChirpData_g 0.002199 0.00000  test
                 avx_ChirpData_h 0.002787 0.00000  test
                 avx_ChirpData_i 0.002355 0.00000  test
            avx_fma4_ChirpData_a not supported by system
            avx_fma4_ChirpData_b not supported by system
            avx_fma4_ChirpData_c not supported by system
                 avx_ChirpData_d 0.002050 0.00000  choice

            Second run

                     v_ChirpData 0.004999 0.00000  test
                   fpu_ChirpData 0.012899 0.00000  test
               fpu_opt_ChirpData 0.004722 0.00000  test
             sse1_ChirpData_ak8e 0.005912 0.00000  test
              sse2_ChirpData_ak8 0.004414 0.00000  test
              sse3_ChirpData_ak8 0.004065 0.00000  test
                 avx_ChirpData_a 0.002204 0.00000  test
                 avx_ChirpData_b 0.002195 0.00000  test
                 avx_ChirpData_c 0.002226 0.00000  test
                 avx_ChirpData_d 0.002059 0.00000  test
                 avx_ChirpData_e 0.002055 0.00000  test
                 avx_ChirpData_f 0.002176 0.00000  test
                 avx_ChirpData_g 0.002093 0.00000  test
                 avx_ChirpData_h 0.002694 0.00000  test
                 avx_ChirpData_i 0.002245 0.00000  test
            avx_fma4_ChirpData_a not supported by system
            avx_fma4_ChirpData_b not supported by system
            avx_fma4_ChirpData_c not supported by system
                 avx_ChirpData_e 0.002055 0.00000  choice

            Third run

                     v_ChirpData 0.004695 0.00000  test
                   fpu_ChirpData 0.012390 0.00000  test
               fpu_opt_ChirpData 0.004516 0.00000  test
             sse1_ChirpData_ak8e 0.005742 0.00000  test
              sse2_ChirpData_ak8 0.004219 0.00000  test
              sse3_ChirpData_ak8 0.004038 0.00000  test
                 avx_ChirpData_a 0.002096 0.00000  test
                 avx_ChirpData_b 0.002074 0.00000  test
                 avx_ChirpData_c 0.002121 0.00000  test
                 avx_ChirpData_d 0.001955 0.00000  test
                 avx_ChirpData_e 0.001953 0.00000  test
                 avx_ChirpData_f 0.002074 0.00000  test
                 avx_ChirpData_g 0.002091 0.00000  test
                 avx_ChirpData_h 0.002691 0.00000  test
                 avx_ChirpData_i 0.002248 0.00000  test
            avx_fma4_ChirpData_a not supported by system
            avx_fma4_ChirpData_b not supported by system
            avx_fma4_ChirpData_c not supported by system
                 avx_ChirpData_e 0.001953 0.00000  choice

                   Test duration     8.12 seconds

Ftst_v7 completed successfully.
Title: Re: AVX Optimized App Development
Post by: Claggy on 19 May 2012, 03:42:08 am
i7-2600K @4.7GHz (Boinc running):

=========================================================
Ftst_v7_J52_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.007109 0.00000  test
                   fpu_ChirpData 0.014843 0.00000  test
               fpu_opt_ChirpData 0.008209 0.00000  test
             sse1_ChirpData_ak8e 0.006001 0.00000  test
              sse2_ChirpData_ak8 0.004700 0.00000  test
              sse3_ChirpData_ak8 0.004524 0.00000  test
                 avx_ChirpData_a 0.002497 0.00000  test
                 avx_ChirpData_b 0.002529 0.00000  test
                 avx_ChirpData_c 0.002559 0.00000  test
                 avx_ChirpData_d 0.002484 0.00000  test
                 avx_ChirpData_e 0.002418 0.00000  test
                 avx_ChirpData_f 0.002567 0.00000  test
                 avx_ChirpData_g 0.002591 0.00000  test
                 avx_ChirpData_h 0.002997 0.00000  test
                 avx_ChirpData_i 0.002696 0.00000  test
            avx_fma4_ChirpData_a not supported by system
            avx_fma4_ChirpData_b not supported by system
            avx_fma4_ChirpData_c not supported by system
                 avx_ChirpData_e 0.002418 0.00000  choice

            Second run

                     v_ChirpData 0.006521 0.00000  test
                   fpu_ChirpData 0.014841 0.00000  test
               fpu_opt_ChirpData 0.008273 0.00000  test
             sse1_ChirpData_ak8e 0.005935 0.00000  test
              sse2_ChirpData_ak8 0.004688 0.00000  test
              sse3_ChirpData_ak8 0.004446 0.00000  test
                 avx_ChirpData_a 0.002536 0.00000  test
                 avx_ChirpData_b 0.003191 0.00000  test
                 avx_ChirpData_c 0.002658 0.00000  test
                 avx_ChirpData_d 0.002708 0.00000  test
                 avx_ChirpData_e 0.002527 0.00000  test
                 avx_ChirpData_f 0.002624 0.00000  test
                 avx_ChirpData_g 0.002491 0.00000  test
              & bsp;  avx_ChirpData_h 0.003061 0.00000  test
                 avx_ChirpData_i 0.002480 0.00000  test
            avx_fma4_ChirpData_a not supported by system
            avx_fma4_ChirpData_b not supported by system
            avx_fma4_ChirpData_c not supported by system
                 avx_ChirpData_i 0.002480 0.00000  choice

            Third run

                     v_ChirpData 0.006486 0.00000  test
                   fpu_ChirpData 0.014641 0.00000  test
               fpu_opt_ChirpData 0.007531 0.00000  test
             sse1_ChirpData_ak8e 0.006155 0.00000  test
              sse2_ChirpData_ak8 0.004716 0.00000  test
              sse3_ChirpData_ak8 0.004651 0.00000  test
                 avx_ChirpData_a 0.002909 0.00000  test
                 avx_ChirpData_b 0.002662 0.00000  test
                 avx_ChirpData_c 0.002676 0.00000  test
                 avx_ChirpData_d 0.002528 0.00000  test
                 avx_ChirpData_e 0.002432 0.00000  test
                 avx_ChirpData_f 0.002957 0.00000  test
                 avx_ChirpData_g 0.003086 0.00000  test
                 avx_ChirpData_h 0.003794 0.00000  test
                 avx_ChirpData_i 0.003075 0.00000  test
            avx_fma4_ChirpData_a not supported by system
            avx_fma4_ChirpData_b not supported by system
            avx_fma4_ChirpData_c not supported by system
                 avx_ChirpData_e 0.002432 0.00000  choice

                   Test duration     7.71 seconds

Ftst_v7 completed successfully.
=========================================================

i7-2600K @4.7GHz (Boinc suspended):

=========================================================
Ftst_v7_J52_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.003679 0.00000  test
                   fpu_ChirpData 0.008669 0.00000  test
               fpu_opt_ChirpData 0.003588 0.00000  test
             sse1_ChirpData_ak8e 0.004205 0.00000  test
              sse2_ChirpData_ak8 0.003154 0.00000  test
              sse3_ChirpData_ak8 0.002981 0.00000  test
                 avx_ChirpData_a 0.001481 0.00000  test
                 avx_ChirpData_b 0.001648 0.00000  test
                 avx_ChirpData_c 0.001484 0.00000  test
        &nbpp;        avx_ChirpData_d 0.001377 0.00000  test
                 avx_ChirpData_e 0.001520 0.00000  test
                 avx_ChirpData_f 0.001567 0.00000  test
                 avx_ChirpData_g 0.001619 0.00000  test
                 avx_ChirpData_h 0.002018 0.00000  test
                 avx_ChirpData_i 0.001724 0.00000  test
            avx_fma4_ChirpData_a not supported by system
            avx_fma4_ChirpData_b not supported by system
            avx_fma4_ChirpData_c not supported by system
                 avx_ChirpData_d 0.001377 0.00000  choice

            Second run

                     v_ChirpData 0.003658 0.00000  test
                   fpu_ChirpData 0.008654 0.00000  test
               fpu_opt_ChirpData 0.003626 0.00000  test
             sse1_ChirpData_ak8e 0.004208 0.00000  test
              sse2_ChirpData_ak8 0.003158 0.00000  test
              sse3_ChirpData_ak8 0.002977 0.00000  test
                 avx_ChirpData_a 0.001473 0.00000  test
                 avx_ChirpData_b 0.001646 0.00000  test
                 avx_ChirpData_c 0.001488 0.00000  test
                 avx_ChirpData_d 0.001382 0.00000  test
                 avx_ChirpData_e 0.001524 0.00000  test
                 avx_ChirpData_f 0.001579 0.00000  test
                 avx_ChirpData_g 0.001618 0.00000  test
                 avx_ChirpData_h 0.002016 0.00000  test
                 avx_ChirpData_i 0.001729 0.00000  test
            avx_fma4_ChirpData_a not supported by system
            avx_fma4_ChirpData_b not supported by system
            avx_fma4_ChirpData_c not supported by system
                 avx_ChirpData_d 0.001382 0.00000  choice

            Third run

                     v_ChirpData 0.003663 0.00000  test
                   fpu_ChirpData 0.008668 0.00000  test
               fpu_opt_ChirpData 0.003556 0.00000  test
             sse1_ChirpData_ak8e 0.004202 0.00000  test
              sse2_ChirpData_ak8 0.003152 0.00000  test
              sse3_ChirpData_ak8 0.002988 0.00000  test
                 avx_ChirpData_a 0.001469 0.00000  test
                 avx_ChirpData_b 0.001640 0.00000  test
                 avx_ChirpData_c 0.001484 0.00000  test
                 avx_ChirpData_d 0.001380 0.00000  test
                 avx_ChirpData_e 0.001519 0.00000  test
                 avx_ChirpData_f 0.001570 0.00000  test
                 avx_ChirpData_g 0.001635 0.00000  test
                 avx_ChirpData_h 0.002023 0.00000  test
              &.bsp;  avx_ChirpData_i 0.001727 0.00000  test
            avx_fma4_ChirpData_a not supported by system
            avx_fma4_ChirpData_b not supported by system
  &fbsp;         avx_fma4_ChirpData_c not supported by system
                 avx_ChirpData_d 0.001380 0.00000  choice

                   Test duration     5.62 seconds

Ftst_v7 completed successfully.

Claggy
Title: Re: AVX Optimized App Development
Post by: KarVi on 20 May 2012, 04:29:01 pm
FX8150@4.5

=========================================================
Ftst_v7_J52_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.007460 0.00000  test
                   fpu_ChirpData 0.013805 0.00000  test
               fpu_opt_ChirpData 0.007231 0.00000  test
             sse1_ChirpData_ak8e 0.005658 0.00000  test
              sse2_ChirpData_ak8 0.003680 0.00000  test
              sse3_ChirpData_ak8 0.003561 0.00000  test
                 avx_ChirpData_a 0.003091 0.00000  test
                 avx_ChirpData_b 0.003040 0.00000  test
                 avx_ChirpData_c 0.003295 0.00000  test
                 avx_ChirpData_d 0.003235 0.00000  test
                 avx_ChirpData_e 0.003124 0.00000  test
                 avx_ChirpData_f 0.002965 0.00000  test
                 avx_ChirpData_g 0.003061 0.00000  test
                 avx_ChirpData_h 0.003560 0.00000  test
                 avx_ChirpData_i 0.003133 0.00000  test
            avx_fma4_ChirpData_a 0.002738 0.00000  test
            avx_fma4_ChirpData_b 0.002874 0.00000  test
            avx_fma4_ChirpData_c 0.002879 0.00000  test
            avx_fma4_ChirpData_a 0.002738 0.00000  choice

            Second run

                     v_ChirpData 0.007377 0.00000  test
                   fpu_ChirpData 0.013799 0.00000  test
               fpu_opt_ChirpData 0.007233 0.00000  test
             sse1_ChirpData_ak8e 0.005695 0.00000  test
              sse2_ChirpData_ak8 0.003667 0.00000  test
              sse3_ChirpData_ak8 0.003556 0.00000  test
                 avx_ChirpData_a 0.003111 0.00000  test
                 avx_ChirpData_b 0.003040 0.00000  test
                 avx_ChirpData_c 0.003299 0.00000  test
                 avx_ChirpData_d 0.003239 0.00000  test
                 avx_ChirpData_e 0.003134 0.00000  test
                 avx_ChirpData_f 0.002980 0.00000  test
                 avx_ChirpData_g 0.003057 0.00000  test
                 avx_ChirpData_h 0.003571 0.00000  test
                 avx_ChirpData_i 0.003141 0.00000  test
            avx_fma4_ChirpData_a 0.002739 0.00000  test
            avx_fma4_ChirpData_b 0.002888 0.00000  test
            avx_fma4_ChirpData_c 0.002897 0.00000  test
            avx_fma4_ChirpData_a 0.002739 0.00000  choice

            Third run

                     v_ChirpData 0.007404 0.00000  test
                   fpu_ChirpData 0.013805 0.00000  test
               fpu_opt_ChirpData 0.007240 0.00000  test
             sse1_ChirpData_ak8e 0.005663 0.00000  test
              sse2_ChirpData_ak8 0.003679 0.00000  test
              sse3_ChirpData_ak8 0.003554 0.00000  test
                 avx_ChirpData_a 0.003105 0.00000  test
                 avx_ChirpData_b 0.003036 0.00000  test
                 avx_ChirpData_c 0.003296 0.00000  test
                 avx_ChirpData_d 0.003239 0.00000  test
                 avx_ChirpData_e 0.003131 0.00000  test
                 avx_ChirpData_f 0.002980 0.00000  test
                 avx_ChirpData_g 0.003066 0.00000  test
                 avx_ChirpData_h 0.003579 0.00000  test
                 avx_ChirpData_i 0.003141 0.00000  test
            avx_fma4_ChirpData_a 0.002739 0.00000  test
            avx_fma4_ChirpData_b 0.002888 0.00000  test
            avx_fma4_ChirpData_c 0.002907 0.00000  test
            avx_fma4_ChirpData_a 0.002739 0.00000  choice

                   Test duration     8.06 seconds

Ftst_v7 completed successfully.
Title: Re: AVX Optimized App Development
Post by: Josef W. Segur on 22 May 2012, 05:15:38 pm
Here's a J53 Chirponly version. I've dropped testing the avx_fma4 b and c variants since TLB priming seems ineffective so far.

The added d4, d6, and d8 avx_fma4 tests are like the a variant but with some further conversions from avx to fma4 reducing the instruction count in the loop from 67 to 65. I think that's all that can be converted. The three subvariants have prefetch ahead 4, 6, and 8 cache lines.
                                     Joe
Title: Re: AVX Optimized App Development
Post by: Claggy on 22 May 2012, 05:20:55 pm
i7-2600K @4.7GHz (Boinc running):

=========================================================
Ftst_v7_J53_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.010533 0.00000  test
                   fpu_ChirpData 0.015888 0.00000  test
               fpu_opt_ChirpData 0.009288 0.00000  test
             sse1_ChirpData_ak8e 0.006435 0.00000  test
              sse2_ChirpData_ak8 0.005798 0.00000  test
              sse3_ChirpData_ak8 0.005038 0.00000  test
                 avx_ChirpData_a 0.002875 0.00000  test
                 avx_ChirpData_b 0.002979 0.00000  test
                 avx_ChirpData_c 0.002922 0.00000  test
                 avx_ChirpData_d 0.003236 0.00000  test
                 avx_ChirpData_e 0.002934 0.00000  test
                 avx_ChirpData_f 0.003012 0.00000  test
                 avx_ChirpData_g 0.002737 0.00000  test
                 avx_ChirpData_h 0.003301 0.00000  test
                 avx_ChirpData_i 0.003410 0.00000  test
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
                 avx_ChirpData_g 0.002737 0.00000  choice

            Second run

                     v_ChirpData 0.007881 0.00000  test
                   fpu_ChirpData 0.015556 0.00000  test
               fpu_opt_ChirpData 0.007705 0.00000  test
             sse1_ChirpData_ak8e 0.006080 0.00000  test
              sse2_ChirpData_ak8 0.004898 0.00000  test
              sse3_ChirpData_ak8 0.004811 0.00000  test
                 avx_ChirpData_a 0.002937 0.00000  test
                 avx_ChirpData_b 0.003385 0.00000  test
                 avx_ChirpData_c 0.002724 0.00000  test
                 avx_ChirpData_d 0.002724 0.00000  test
                 avx_ChirpData_e 0.002664 0.00000  test
                 avx_ChirpData_f 0.002867 0.00000  test
                 avx_ChirpData_g 0.002864 0.00000  test
                 avx_ChirpData_h 0.003519 0.00000  test
                 avx_ChirpData_i 0.003164 0.00000  test
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
                 avx_ChirpData_e 0.002664 0.00000  choice

            Third run

                     v_ChirpData 0.010643 0.00000  test
                   fpu_ChirpData 0.015693 0.00000  test
               fpu_opt_ChirpData 0.008806 0.00000  test
             sse1_ChirpData_ak8e 0.006255 0.00000  test
              sse2_ChirpData_ak8 0.005185 0.00000  test
              sse3_ChirpData_ak8 0.004936 0.00000  test
                 avx_ChirpData_a 0.003026 0.00000  test
                 avx_ChirpData_b 0.003144 0.00000  test
                 avx_ChirpData_c 0.003288 0.00000  test
                 avx_ChirpData_d 0.002940 0.00000  test
                 avx_ChirpData_e 0.003005 0.00000  test
                 avx_ChirpData_f 0.003512 0.00000  test
                 avx_ChirpData_g 0.003088 0.00000  test
                 avx_ChirpData_h 0.003861 0.00000  test
                 avx_ChirpData_i 0.003359 0.00000  test
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
                 avx_ChirpData_d 0.002940 0.00000  choice

                   Test duration     8.29 seconds

Ftst_v7 completed successfully.
=========================================================

i7-2600K @4.7GHz (Boinc suspended):


=========================================================
Ftst_v7_J53_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.003658 0.00000  test
                   fpu_ChirpData 0.008655 0.00000  test
               fpu_opt_ChirpData 0.003687 0.00000  test
             sse1_ChirpData_ak8e 0.004206 0.00000  test
              sse2_ChirpData_ak8 0.003164 0.00000  test
              sse3_ChirpData_ak8 0.002982 0.00000  test
                 avx_ChirpData_a 0.001476 0.00000  test
                 avx_ChirpData_b 0.001647 0.00000  test
                 avx_ChirpData_c 0.001485 0.00000  test
                 avx_ChirpData_d 0.001377 0.00000  test
                 avx_ChirpData_e 0.001579 0.00000  test
                 avx_ChirpData_f 0.001527 0.00000  test
                 avx_ChirpData_g 0.001619 0.00000  test
                 avx_ChirpData_h 0.002018 0.00000  test
                 avx_ChirpData_i 0.001726 0.00000  test
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
                 avx_ChirpData_d 0.001377 0.00000  choice

            Second run

                     v_ChirpData 0.003738 0.00000  test
                   fpu_ChirpData 0.008661 0.00000  test
               fpu_opt_ChirpData 0.003565 0.00000  test
             sse1_ChirpData_ak8e 0.004213 0.00000  test
              sse2_ChirpData_ak8 0.003158 0.00000  test
              sse3_ChirpData_ak8 0.002977 0.00000  test
                 avx_ChirpData_a 0.001473 0.00000  test
                 avx_ChirpData_b 0.001642 0.00000  test
                 avx_ChirpData_c 0.001482 0.00000  test
                 avx_ChirpData_d 0.001377 0.00000  test
                 avx_ChirpData_e 0.001520 0.00000  test
                 avx_ChirpData_f 0.001570 0.00000  test
                 avx_ChirpData_g 0.001618 0.00000  test
                 avx_ChirpData_h 0.002026 0.00000  test
                 avx_ChirpData_i 0.001724 0.00000  test
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
                 avx_ChirpData_d 0.001377 0.00000  choice

            Third run

                     v_ChirpData 0.003683 0.00000  test
                   fpu_ChirpData 0.008662 0.00000  test
               fpu_opt_ChirpData 0.003569 0.00000  test
             sse1_ChirpData_ak8e 0.004210 0.00000  test
              sse2_ChirpData_ak8 0.003157 0.00000  test
              sse3_ChirpData_ak8 0.002980 0.00000  test
                 avx_ChirpData_a 0.001471 0.00000  test
                 avx_ChirpData_b 0.001640 0.00000  test
                 avx_ChirpData_c 0.001487 0.00000  test
                 avx_ChirpData_d 0.001377 0.00000  test
                 avx_ChirpData_e 0.001519 0.00000  test
                 avx_ChirpData_f 0.001567 0.00000  test
                 avx_ChirpData_g 0.001618 0.00000  test
                 avx_ChirpData_h 0.002022 0.00000  test
                 avx_ChirpData_i 0.001728 0.00000  test
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
                 avx_ChirpData_d 0.001377 0.00000  choice

                   Test duration     5.62 seconds

Ftst_v7 completed successfully.

Claggy
Title: Re: AVX Optimized App Development
Post by: arkayn on 22 May 2012, 05:42:32 pm
FX-4100
BOINC running on 460

=========================================================
Ftst_v7_J53_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.009027 0.00000  test
                   fpu_ChirpData 0.017784 0.00000  test
               fpu_opt_ChirpData 0.008842 0.00000  test
             sse1_ChirpData_ak8e 0.007343 0.00000  test
              sse2_ChirpData_ak8 0.004565 0.00000  test
              sse3_ChirpData_ak8 0.004510 0.00000  test
                 avx_ChirpData_a 0.003855 0.00000  test
                 avx_ChirpData_b 0.003915 0.00000  test
                 avx_ChirpData_c 0.004248 0.00000  test
                 avx_ChirpData_d 0.004088 0.00000  test
                 avx_ChirpData_e 0.003987 0.00000  test
                 avx_ChirpData_f 0.003833 0.00000  test
                 avx_ChirpData_g 0.003815 0.00000  test
                 avx_ChirpData_h 0.004630 0.00000  test
                 avx_ChirpData_i 0.004029 0.00000  test
            avx_fma4_ChirpData_a 0.003409 0.00000  test
           avx_fma4_ChirpData_d4 0.003450 0.00000  test
           avx_fma4_ChirpData_d6 0.003494 0.00000  test
           avx_fma4_ChirpData_d8 0.003531 0.00000  test
            avx_fma4_ChirpData_a 0.003409 0.00000  choice

            Second run

                     v_ChirpData 0.009120 0.00000  test
                   fpu_ChirpData 0.017763 0.00000  test
               fpu_opt_ChirpData 0.008955 0.00000  test
             sse1_ChirpData_ak8e 0.007134 0.00000  test
              sse2_ChirpData_ak8 0.004597 0.00000  test
              sse3_ChirpData_ak8 0.004496 0.00000  test
                 avx_ChirpData_a 0.003862 0.00000  test
                 avx_ChirpData_b 0.003970 0.00000  test
                 avx_ChirpData_c 0.004118 0.00000  test
                 avx_ChirpData_d 0.003992 0.00000  test
                 avx_ChirpData_e 0.003903 0.00000  test
                 avx_ChirpData_f 0.003729 0.00000  test
                 avx_ChirpData_g 0.003698 0.00000  test
                 avx_ChirpData_h 0.004578 0.00000  test
                 avx_ChirpData_i 0.004050 0.00000  test
            avx_fma4_ChirpData_a 0.003464 0.00000  test
           avx_fma4_ChirpData_d4 0.003434 0.00000  test
           avx_fma4_ChirpData_d6 0.003415 0.00000  test
           avx_fma4_ChirpData_d8 0.003430 0.00000  test
           avx_fma4_ChirpData_d6 0.003415 0.00000  choice

            Third run

                     v_ChirpData 0.009029 0.00000  test
                   fpu_ChirpData 0.017711 0.00000  test
               fpu_opt_ChirpData 0.008843 0.00000  test
             sse1_ChirpData_ak8e 0.007283 0.00000  test
              sse2_ChirpData_ak8 0.004629 0.00000  test
              sse3_ChirpData_ak8 0.004534 0.00000  test
                 avx_ChirpData_a 0.003926 0.00000  test
                 avx_ChirpData_b 0.003819 0.00000  test
                 avx_ChirpData_c 0.004124 0.00000  test
                 avx_ChirpData_d 0.003992 0.00000  test
                 avx_ChirpData_e 0.003893 0.00000  test
                 avx_ChirpData_f 0.003694 0.00000  test
                 avx_ChirpData_g 0.003721 0.00000  test
                 avx_ChirpData_h 0.004432 0.00000  test
                 avx_ChirpData_i 0.003909 0.00000  test
            avx_fma4_ChirpData_a 0.003482 0.00000  test
           avx_fma4_ChirpData_d4 0.003391 0.00000  test
           avx_fma4_ChirpData_d6 0.003398 0.00000  test
           avx_fma4_ChirpData_d8 0.003476 0.00000  test
           avx_fma4_ChirpData_d4 0.003391 0.00000  choice

                   Test duration    10.75 seconds

Ftst_v7 completed successfully.

i3-2120
BOINC running on 560

=========================================================
Ftst_v7_J53_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.004919 0.00000  test
                   fpu_ChirpData 0.012437 0.00000  test
               fpu_opt_ChirpData 0.004521 0.00000  test
             sse1_ChirpData_ak8e 0.005737 0.00000  test
              sse2_ChirpData_ak8 0.004192 0.00000  test
              sse3_ChirpData_ak8 0.004024 0.00000  test
                 avx_ChirpData_a 0.002183 0.00000  test
                 avx_ChirpData_b 0.002301 0.00000  test
                 avx_ChirpData_c 0.002154 0.00000  test
                 avx_ChirpData_d 0.002204 0.00000  test
                 avx_ChirpData_e 0.002826 0.00000  test
                 avx_ChirpData_f 0.002604 0.00000  test
                 avx_ChirpData_g 0.002915 0.00000  test
                 avx_ChirpData_h 0.002857 0.00000  test
                 avx_ChirpData_i 0.002517 0.00000  test
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
                 avx_ChirpData_c 0.002154 0.00000  choice

            Second run

                     v_ChirpData 0.004754 0.00000  test
                   fpu_ChirpData 0.013919 0.00000  test
               fpu_opt_ChirpData 0.005436 0.00000  test
             sse1_ChirpData_ak8e 0.005733 0.00000  test
              sse2_ChirpData_ak8 0.004207 0.00000  test
              sse3_ChirpData_ak8 0.004042 0.00000  test
                 avx_ChirpData_a 0.002121 0.00000  test
                 avx_ChirpData_b 0.002084 0.00000  test
                 avx_ChirpData_c 0.002124 0.00000  test
                 avx_ChirpData_d 0.001957 0.00000  test
                 avx_ChirpData_e 0.001959 0.00000  test
                 avx_ChirpData_f 0.002082 0.00000  test
                 avx_ChirpData_g 0.002103 0.00000  test
                 avx_ChirpData_h 0.002690 0.00000  test
                 avx_ChirpData_i 0.002242 0.00000  test
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
                 avx_ChirpData_d 0.001957 0.00000  choice

            Third run

                     v_ChirpData 0.004720 0.00000  test
                   fpu_ChirpData 0.012409 0.00000  test
               fpu_opt_ChirpData 0.004466 0.00000  test
             sse1_ChirpData_ak8e 0.005780 0.00000  test
              sse2_ChirpData_ak8 0.004227 0.00000  test
              sse3_ChirpData_ak8 0.004003 0.00000  test
                 avx_ChirpData_a 0.002105 0.00000  test
                 avx_ChirpData_b 0.002092 0.00000  test
                 avx_ChirpData_c 0.002123 0.00000  test
                 avx_ChirpData_d 0.001955 0.00000  test
                 avx_ChirpData_e 0.001967 0.00000  test
                 avx_ChirpData_f 0.002079 0.00000  test
                 avx_ChirpData_g 0.002094 0.00000  test
                 avx_ChirpData_h 0.002690 0.00000  test
                 avx_ChirpData_i 0.002268 0.00000  test
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
                 avx_ChirpData_d 0.001955 0.00000  choice

                   Test duration     8.17 seconds

Ftst_v7 completed successfully.
Title: Re: AVX Optimized App Development
Post by: KarVi on 23 May 2012, 12:10:10 am
FX8150@4,5

=========================================================
Ftst_v7_J53_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.007298 0.00000  test
                   fpu_ChirpData 0.013822 0.00000  test
               fpu_opt_ChirpData 0.007152 0.00000  test
             sse1_ChirpData_ak8e 0.005673 0.00000  test
              sse2_ChirpData_ak8 0.003697 0.00000  test
              sse3_ChirpData_ak8 0.003599 0.00000  test
                 avx_ChirpData_a 0.003088 0.00000  test
                 avx_ChirpData_b 0.003041 0.00000  test
                 avx_ChirpData_c 0.003297 0.00000  test
                 avx_ChirpData_d 0.003219 0.00000  test
                 avx_ChirpData_e 0.003142 0.00000  test
                 avx_ChirpData_f 0.002986 0.00000  test
                 avx_ChirpData_g 0.002915 0.00000  test
                 avx_ChirpData_h 0.003588 0.00000  test
                 avx_ChirpData_i 0.003172 0.00000  test
            avx_fma4_ChirpData_a 0.002730 0.00000  test
           avx_fma4_ChirpData_d4 0.002747 0.00000  test
           avx_fma4_ChirpData_d6 0.002718 0.00000  test
           avx_fma4_ChirpData_d8 0.002710 0.00000  test
           avx_fma4_ChirpData_d8 0.002710 0.00000  choice

            Second run

                     v_ChirpData 0.007239 0.00000  test
                   fpu_ChirpData 0.013803 0.00000  test
               fpu_opt_ChirpData 0.007090 0.00000  test
             sse1_ChirpData_ak8e 0.005697 0.00000  test
              sse2_ChirpData_ak8 0.003676 0.00000  test
              sse3_ChirpData_ak8 0.003612 0.00000  test
                 avx_ChirpData_a 0.003079 0.00000  test
                 avx_ChirpData_b 0.003044 0.00000  test
                 avx_ChirpData_c 0.003298 0.00000  test
                 avx_ChirpData_d 0.003225 0.00000  test
                 avx_ChirpData_e 0.003142 0.00000  test
                 avx_ChirpData_f 0.002985 0.00000  test
                 avx_ChirpData_g 0.002933 0.00000  test
                 avx_ChirpData_h 0.003579 0.00000  test
                 avx_ChirpData_i 0.003169 0.00000  test
            avx_fma4_ChirpData_a 0.002730 0.00000  test
           avx_fma4_ChirpData_d4 0.002754 0.00000  test
           avx_fma4_ChirpData_d6 0.002718 0.00000  test
           avx_fma4_ChirpData_d8 0.002713 0.00000  test
           avx_fma4_ChirpData_d8 0.002713 0.00000  choice

            Third run

                     v_ChirpData 0.007309 0.00000  test
                   fpu_ChirpData 0.013824 0.00000  test
               fpu_opt_ChirpData 0.007157 0.00000  test
             sse1_ChirpData_ak8e 0.005677 0.00000  test
              sse2_ChirpData_ak8 0.003688 0.00000  test
              sse3_ChirpData_ak8 0.003599 0.00000  test
                 avx_ChirpData_a 0.003090 0.00000  test
                 avx_ChirpData_b 0.003043 0.00000  test
                 avx_ChirpData_c 0.003296 0.00000  test
                 avx_ChirpData_d 0.003227 0.00000  test
                 avx_ChirpData_e 0.003148 0.00000  test
                 avx_ChirpData_f 0.002990 0.00000  test
                 avx_ChirpData_g 0.002925 0.00000  test
                 avx_ChirpData_h 0.003579 0.00000  test
                 avx_ChirpData_i 0.003172 0.00000  test
            avx_fma4_ChirpData_a 0.002746 0.00000  test
           avx_fma4_ChirpData_d4 0.002750 0.00000  test
           avx_fma4_ChirpData_d6 0.002717 0.00000  test
           avx_fma4_ChirpData_d8 0.002710 0.00000  test
           avx_fma4_ChirpData_d8 0.002710 0.00000  choice

                   Test duration     8.41 seconds

Ftst_v7 completed successfully.
Title: Re: AVX Optimized App Development
Post by: Josef W. Segur on 24 May 2012, 11:36:14 pm
That difference in how the FX-4100 and FX-8150 react to prefetch distance is still fascinating.

For J54 I've modified the test framework again, each test will show the minimum time taken by one iteration. That will give some indication of how much variance there is.

I've also added an e variant for avx_fma4 which is exploring the capability doing 128 bit operations rather than 256 like all the other avx tests. I expect it to be faster than the existing SSE3 test both because it's using fma4 and because with avx enabled there are 3 operand forms of the instructions. With old-style SSE3 an operation like a = b + c actually had to copy b to a then add c. The 3 operand form does it in a single operation. I doubt the e variant will challenge the 256 bit versions, but it's possible. An AMD engineer chose to have the GCC autovectorizer produce 128 bit AVX and FMA4 for Bulldozer v1 because that outperformed 256 bit code on some of the SPEC benchmarks.
                                         Joe
Title: Re: AVX Optimized App Development
Post by: arkayn on 25 May 2012, 12:25:32 am
FX4100 @3.6
First run BOINC running on GTX460
=========================================================
Ftst_v7_J54_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.009313 0.00000  test    mintime= 0.004975
                   fpu_ChirpData 0.017663 0.00000  test    mintime= 0.017547
               fpu_opt_ChirpData 0.009177 0.00000  test    mintime= 0.004658
             sse1_ChirpData_ak8e 0.007268 0.00000  test    mintime= 0.007189
              sse2_ChirpData_ak8 0.004597 0.00000  test    mintime= 0.004549
              sse3_ChirpData_ak8 0.004520 0.00000  test    mintime= 0.004419
                 avx_ChirpData_a 0.003807 0.00000  test    mintime= 0.003769
                 avx_ChirpData_b 0.003873 0.00000  test    mintime= 0.003792
                 avx_ChirpData_c 0.004119 0.00000  test    mintime= 0.004081
                 avx_ChirpData_d 0.004026 0.00000  test    mintime= 0.003959
                 avx_ChirpData_e 0.003916 0.00000  test    mintime= 0.003878
                 avx_ChirpData_f 0.003722 0.00000  test    mintime= 0.003698
                 avx_ChirpData_g 0.003716 0.00000  test    mintime= 0.003637
                 avx_ChirpData_h 0.004431 0.00000  test    mintime= 0.004382
                 avx_ChirpData_i 0.003890 0.00000  test    mintime= 0.003846
            avx_fma4_ChirpData_a 0.003380 0.00000  test    mintime= 0.003322
           avx_fma4_ChirpData_d4 0.003431 0.00000  test    mintime= 0.003379
           avx_fma4_ChirpData_d6 0.003521 0.00000  test    mintime= 0.003345
           avx_fma4_ChirpData_d8 0.003383 0.00000  test    mintime= 0.003338
            avx_fma4_ChirpData_e 0.003917 0.00000  test    mintime= 0.003905
            avx_fma4_ChirpData_a 0.003380 0.00000  choice

            Second run

                     v_ChirpData 0.009529 0.00000  test    mintime= 0.004951
                   fpu_ChirpData 0.017635 0.00000  test    mintime= 0.017457
               fpu_opt_ChirpData 0.009079 0.00000  test    mintime= 0.004666
             sse1_ChirpData_ak8e 0.007233 0.00000  test    mintime= 0.007192
              sse2_ChirpData_ak8 0.004588 0.00000  test    mintime= 0.004541
              sse3_ChirpData_ak8 0.004432 0.00000  test    mintime= 0.004417
                 avx_ChirpData_a 0.003823 0.00000  test    mintime= 0.003739
                 avx_ChirpData_b 0.003827 0.00000  test    mintime= 0.003784
                 avx_ChirpData_c 0.004122 0.00000  test    mintime= 0.004076
                 avx_ChirpData_d 0.004002 0.00000  test    mintime= 0.003958
                 avx_ChirpData_e 0.003933 0.00000  test    mintime= 0.003886
                 avx_ChirpData_f 0.003716 0.00000  test    mintime= 0.003666
                 avx_ChirpData_g 0.003687 0.00000  test    mintime= 0.003615
                 avx_ChirpData_h 0.004483 0.00000  test    mintime= 0.004378
                 avx_ChirpData_i 0.003910 0.00000  test    mintime= 0.003850
            avx_fma4_ChirpData_a 0.003392 0.00000  test    mintime= 0.003324
           avx_fma4_ChirpData_d4 0.003453 0.00000  test    mintime= 0.003392
           avx_fma4_ChirpData_d6 0.003533 0.00000  test    mintime= 0.003487
           avx_fma4_ChirpData_d8 0.003477 0.00000  test    mintime= 0.003394
            avx_fma4_ChirpData_e 0.003999 0.00000  test    mintime= 0.003937
            avx_fma4_ChirpData_a 0.003392 0.00000  choice

            Third run

                     v_ChirpData 0.009590 0.00000  test    mintime= 0.005087
                   fpu_ChirpData 0.018358 0.00000  test    mintime= 0.017907
               fpu_opt_ChirpData 0.009407 0.00000  test    mintime= 0.004685
             sse1_ChirpData_ak8e 0.007488 0.00000  test    mintime= 0.007304
              sse2_ChirpData_ak8 0.004673 0.00000  test    mintime= 0.004614
              sse3_ChirpData_ak8 0.004549 0.00000  test    mintime= 0.004473
                 avx_ChirpData_a 0.004010 0.00000  test    mintime= 0.003766
                 avx_ChirpData_b 0.003849 0.00000  test    mintime= 0.003803
                 avx_ChirpData_c 0.004126 0.00000  test    mintime= 0.004085
                 avx_ChirpData_d 0.004000 0.00000  test    mintime= 0.003981
                 avx_ChirpData_e 0.003917 0.00000  test    mintime= 0.003881
                 avx_ChirpData_f 0.003818 0.00000  test    mintime= 0.003664
                 avx_ChirpData_g 0.003710 0.00000  test    mintime= 0.003597
                 avx_ChirpData_h 0.004417 0.00000  test    mintime= 0.004379
                 avx_ChirpData_i 0.003895 0.00000  test    mintime= 0.003867
            avx_fma4_ChirpData_a 0.003405 0.00000  test    mintime= 0.003341
           avx_fma4_ChirpData_d4 0.003448 0.00000  test    mintime= 0.003356
           avx_fma4_ChirpData_d6 0.003464 0.00000  test    mintime= 0.003389
           avx_fma4_ChirpData_d8 0.003538 0.00000  test    mintime= 0.003346
            avx_fma4_ChirpData_e 0.003965 0.00000  test    mintime= 0.003922
            avx_fma4_ChirpData_a 0.003405 0.00000  choice

                   Test duration    11.20 seconds

Ftst_v7 completed successfully.

Second run BOINC IDLE
=========================================================
Ftst_v7_J54_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.009191 0.00000  test    mintime= 0.004928
                   fpu_ChirpData 0.017562 0.00000  test    mintime= 0.017515
               fpu_opt_ChirpData 0.008981 0.00000  test    mintime= 0.004633
             sse1_ChirpData_ak8e 0.007240 0.00000  test    mintime= 0.007195
              sse2_ChirpData_ak8 0.004578 0.00000  test    mintime= 0.004515
              sse3_ChirpData_ak8 0.004546 0.00000  test    mintime= 0.004421
                 avx_ChirpData_a 0.003788 0.00000  test    mintime= 0.003753
                 avx_ChirpData_b 0.003842 0.00000  test    mintime= 0.003806
                 avx_ChirpData_c 0.004095 0.00000  test    mintime= 0.004072
                 avx_ChirpData_d 0.003996 0.00000  test    mintime= 0.003948
                 avx_ChirpData_e 0.003908 0.00000  test    mintime= 0.003887
                 avx_ChirpData_f 0.003708 0.00000  test    mintime= 0.003665
                 avx_ChirpData_g 0.003602 0.00000  test    mintime= 0.003581
                 avx_ChirpData_h 0.004397 0.00000  test    mintime= 0.004363
                 avx_ChirpData_i 0.003876 0.00000  test    mintime= 0.003844
            avx_fma4_ChirpData_a 0.003374 0.00000  test    mintime= 0.003328
           avx_fma4_ChirpData_d4 0.003371 0.00000  test    mintime= 0.003353
           avx_fma4_ChirpData_d6 0.003421 0.00000  test    mintime= 0.003335
           avx_fma4_ChirpData_d8 0.003377 0.00000  test    mintime= 0.003348
            avx_fma4_ChirpData_e 0.003945 0.00000  test    mintime= 0.003914
           avx_fma4_ChirpData_d4 0.003371 0.00000  choice

            Second run

                     v_ChirpData 0.009147 0.00000  test    mintime= 0.004946
                   fpu_ChirpData 0.017576 0.00000  test    mintime= 0.017502
               fpu_opt_ChirpData 0.008935 0.00000  test    mintime= 0.004644
             sse1_ChirpData_ak8e 0.007233 0.00000  test    mintime= 0.007189
              sse2_ChirpData_ak8 0.004593 0.00000  test    mintime= 0.004523
              sse3_ChirpData_ak8 0.004424 0.00000  test    mintime= 0.004418
                 avx_ChirpData_a 0.003805 0.00000  test    mintime= 0.003735
                 avx_ChirpData_b 0.003810 0.00000  test    mintime= 0.003774
                 avx_ChirpData_c 0.004115 0.00000  test    mintime= 0.004094
                 avx_ChirpData_d 0.003971 0.00000  test    mintime= 0.003960
                 avx_ChirpData_e 0.003910 0.00000  test    mintime= 0.003864
                 avx_ChirpData_f 0.003696 0.00000  test    mintime= 0.003666
                 avx_ChirpData_g 0.003619 0.00000  test    mintime= 0.003559
                 avx_ChirpData_h 0.004404 0.00000  test    mintime= 0.004376
                 avx_ChirpData_i 0.003880 0.00000  test    mintime= 0.003861
            avx_fma4_ChirpData_a 0.003350 0.00000  test    mintime= 0.003323
           avx_fma4_ChirpData_d4 0.003392 0.00000  test    mintime= 0.003354
           avx_fma4_ChirpData_d6 0.003353 0.00000  test    mintime= 0.003344
           avx_fma4_ChirpData_d8 0.003352 0.00000  test    mintime= 0.003340
            avx_fma4_ChirpData_e 0.003941 0.00000  test    mintime= 0.003902
            avx_fma4_ChirpData_a 0.003350 0.00000  choice

            Third run

                     v_ChirpData 0.009191 0.00000  test    mintime= 0.004914
                   fpu_ChirpData 0.017564 0.00000  test    mintime= 0.017467
               fpu_opt_ChirpData 0.008974 0.00000  test    mintime= 0.004635
             sse1_ChirpData_ak8e 0.007437 0.00000  test    mintime= 0.007225
              sse2_ChirpData_ak8 0.004660 0.00000  test    mintime= 0.004520
              sse3_ChirpData_ak8 0.004443 0.00000  test    mintime= 0.004420
                 avx_ChirpData_a 0.003801 0.00000  test    mintime= 0.003711
                 avx_ChirpData_b 0.003829 0.00000  test    mintime= 0.003784
                 avx_ChirpData_c 0.004095 0.00000  test    mintime= 0.004075
                 avx_ChirpData_d 0.004004 0.00000  test    mintime= 0.003969
                 avx_ChirpData_e 0.003909 0.00000  test    mintime= 0.003861
                 avx_ChirpData_f 0.003724 0.00000  test    mintime= 0.003667
                 avx_ChirpData_g 0.003675 0.00000  test    mintime= 0.003593
                 avx_ChirpData_h 0.004403 0.00000  test    mintime= 0.004370
                 avx_ChirpData_i 0.003866 0.00000  test    mintime= 0.003849
            avx_fma4_ChirpData_a 0.003363 0.00000  test    mintime= 0.003351
           avx_fma4_ChirpData_d4 0.003387 0.00000  test    mintime= 0.003363
           avx_fma4_ChirpData_d6 0.003381 0.00000  test    mintime= 0.003345
           avx_fma4_ChirpData_d8 0.003369 0.00000  test    mintime= 0.003340
            avx_fma4_ChirpData_e 0.003969 0.00000  test    mintime= 0.003923
            avx_fma4_ChirpData_a 0.003363 0.00000  choice

                   Test duration    11.07 seconds

Ftst_v7 completed successfully.
Title: Re: AVX Optimized App Development
Post by: KarVi on 25 May 2012, 11:24:19 am
FX 8150@4,5

Boinc paused as usual. System completely idle, I didn't even move the mouse.

=========================================================
Ftst_v7_J54_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.007559 0.00000  test    mintime= 0.004060
                   fpu_ChirpData 0.013618 0.00000  test    mintime= 0.013601
               fpu_opt_ChirpData 0.007416 0.00000  test    mintime= 0.003848
             sse1_ChirpData_ak8e 0.005540 0.00000  test    mintime= 0.005529
              sse2_ChirpData_ak8 0.003595 0.00000  test    mintime= 0.003567
              sse3_ChirpData_ak8 0.003480 0.00000  test    mintime= 0.003471
                 avx_ChirpData_a 0.002973 0.00000  test    mintime= 0.002969
                 avx_ChirpData_b 0.002961 0.00000  test    mintime= 0.002951
                 avx_ChirpData_c 0.003203 0.00000  test    mintime= 0.003190
                 avx_ChirpData_d 0.003107 0.00000  test    mintime= 0.003097
                 avx_ChirpData_e 0.003048 0.00000  test    mintime= 0.003043
                 avx_ChirpData_f 0.002884 0.00000  test    mintime= 0.002880
                 avx_ChirpData_g 0.002811 0.00000  test    mintime= 0.002800
                 avx_ChirpData_h 0.003455 0.00000  test    mintime= 0.003441
                 avx_ChirpData_i 0.003046 0.00000  test    mintime= 0.003033
            avx_fma4_ChirpData_a 0.002846 0.00000  test    mintime= 0.002630
           avx_fma4_ChirpData_d4 0.002656 0.00000  test    mintime= 0.002649
           avx_fma4_ChirpData_d6 0.002632 0.00000  test    mintime= 0.002627
           avx_fma4_ChirpData_d8 0.002620 0.00000  test    mintime= 0.002618
            avx_fma4_ChirpData_e 0.003091 0.00000  test    mintime= 0.003088
           avx_fma4_ChirpData_d8 0.002620 0.00000  choice

            Second run

                     v_ChirpData 0.007577 0.00000  test    mintime= 0.004067
                   fpu_ChirpData 0.013604 0.00000  test    mintime= 0.013573
               fpu_opt_ChirpData 0.007383 0.00000  test    mintime= 0.003850
             sse1_ChirpData_ak8e 0.005512 0.00000  test    mintime= 0.005497
              sse2_ChirpData_ak8 0.003602 0.00000  test    mintime= 0.003573
              sse3_ChirpData_ak8 0.003478 0.00000  test    mintime= 0.003472
                 avx_ChirpData_a 0.002977 0.00000  test    mintime= 0.002972
                 avx_ChirpData_b 0.002965 0.00000  test    mintime= 0.002957
                 avx_ChirpData_c 0.003197 0.00000  test    mintime= 0.003190
                 avx_ChirpData_d 0.003108 0.00000  test    mintime= 0.003099
                 avx_ChirpData_e 0.003051 0.00000  test    mintime= 0.003047
                 avx_ChirpData_f 0.002895 0.00000  test    mintime= 0.002886
                 avx_ChirpData_g 0.002809 0.00000  test    mintime= 0.002807
                 avx_ChirpData_h 0.003471 0.00000  test    mintime= 0.003449
                 avx_ChirpData_i 0.003056 0.00000  test    mintime= 0.003040
            avx_fma4_ChirpData_a 0.002643 0.00000  test    mintime= 0.002636
           avx_fma4_ChirpData_d4 0.002657 0.00000  test    mintime= 0.002653
           avx_fma4_ChirpData_d6 0.002634 0.00000  test    mintime= 0.002629
           avx_fma4_ChirpData_d8 0.002620 0.00000  test    mintime= 0.002618
            avx_fma4_ChirpData_e 0.003102 0.00000  test    mintime= 0.003091
           avx_fma4_ChirpData_d8 0.002620 0.00000  choice

            Third run

                     v_ChirpData 0.007571 0.00000  test    mintime= 0.004069
                   fpu_ChirpData 0.013619 0.00000  test    mintime= 0.013601
               fpu_opt_ChirpData 0.007503 0.00000  test    mintime= 0.003850
             sse1_ChirpData_ak8e 0.005545 0.00000  test    mintime= 0.005531
              sse2_ChirpData_ak8 0.003589 0.00000  test    mintime= 0.003566
              sse3_ChirpData_ak8 0.003483 0.00000  test    mintime= 0.003476
                 avx_ChirpData_a 0.002976 0.00000  test    mintime= 0.002972
                 avx_ChirpData_b 0.002986 0.00000  test    mintime= 0.002957
                 avx_ChirpData_c 0.003198 0.00000  test    mintime= 0.003192
                 avx_ChirpData_d 0.003109 0.00000  test    mintime= 0.003103
                 avx_ChirpData_e 0.003054 0.00000  test    mintime= 0.003044
                 avx_ChirpData_f 0.002885 0.00000  test    mintime= 0.002881
                 avx_ChirpData_g 0.002807 0.00000  test    mintime= 0.002804
                 avx_ChirpData_h 0.003454 0.00000  test    mintime= 0.003444
                 avx_ChirpData_i 0.003048 0.00000  test    mintime= 0.003035
            avx_fma4_ChirpData_a 0.002637 0.00000  test    mintime= 0.002635
           avx_fma4_ChirpData_d4 0.002655 0.00000  test    mintime= 0.002653
           avx_fma4_ChirpData_d6 0.002640 0.00000  test    mintime= 0.002627
           avx_fma4_ChirpData_d8 0.002629 0.00000  test    mintime= 0.002618
            avx_fma4_ChirpData_e 0.003095 0.00000  test    mintime= 0.003092
           avx_fma4_ChirpData_d8 0.002629 0.00000  choice

                   Test duration     8.62 seconds

Ftst_v7 completed successfully.

Again difference from 4100 to 8150. 8150 is more consistent though.

I can't remember if arkayn runs with any frequency changing settings enabled, either turbo or C&Q, but find it strange that his 4100 chooses so differently, when mine choose avx_fma d8 every time, and with almost the same exact timings.
Title: Re: AVX Optimized App Development
Post by: arkayn on 25 May 2012, 12:00:50 pm
I am running strictly stock speeds with my FX-4100 and have the system set to performance in the CP.
12GB DDR3-1600 Ram
GTX460 & HD7750

Board is a MSI 870A-G54
http://www.newegg.com/Product/Product.aspx?Item=N82E16813130632R
Title: Re: AVX Optimized App Development
Post by: KarVi on 25 May 2012, 01:12:39 pm
So its possible the CPU is up/down -clocking?

That could possibly explain why results fluctuate more on your system.

My 8150 is residing in an ASUS Sabertooth 990FX, and is locked at 4.5, with CNQ and turbo turned off, as well as any other power saving states (C1E, C6). The SRQ/UNB/L3 cache is running at 2.4Ghz. Memory is at 1866Mhz, but it is cheap ram, with relaxed timings (9-10-9-27-48).

Locked clock will produce more predictable results, because the CPU cant decide to change speeds during tests.

But looking at mintimes on your 4100, it does seem to prefer d8, as that produces the fastest mintimes, so Josef's inclusion of mintimes are helpfull indeed.
Title: Re: AVX Optimized App Development
Post by: PatrickV2 on 25 May 2012, 01:14:01 pm
Hi there,

I have the new Game-Machine for my brother under my desk. Basic config:

i7-3770 @ 3.4GHz / Sabertooth Z77 mainboard / 8GB of DDR3-1600 memory.

Nothing running in the background, results:

=========================================================
Ftst_v7_J45 started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                v_BaseLineSmooth (no other)

              v_GetPowerSpectrum 0.000246 0.00000  test
             v_vGetPowerSpectrum 0.000110 0.00000  test
            v_vGetPowerSpectrum2 0.000140 0.00000  test
     v_vGetPowerSpectrumUnrolled 0.000098 0.00000  test
    v_vGetPowerSpectrumUnrolled2 0.000139 0.00000  test
           v_avxGetPowerSpectrum 0.000099 0.00000  test
     v_vGetPowerSpectrumUnrolled 0.000098 0.00000  choice

                     v_ChirpData 0.003750 0.00000  test
                   fpu_ChirpData 0.010178 0.00000  test
               fpu_opt_ChirpData 0.003710 0.00000  test
             v_vChirpData_x86_64 0.049955 0.00000  test
               sse1_ChirpData_ak 0.005268 0.00000  test
             sse1_ChirpData_ak8e 0.004364 0.00000  test
             sse1_ChirpData_ak8h 0.004614 0.00000  test
               sse2_ChirpData_ak 0.004918 0.00000  test
              sse2_ChirpData_ak8 0.003300 0.00000  test
               sse3_ChirpData_ak 0.004881 0.00000  test
              sse3_ChirpData_ak8 0.003142 0.00000  test
                 avx_ChirpData_a 0.001725 0.00000  test
                 avx_ChirpData_b 0.001749 0.00000  test
                 avx_ChirpData_c 0.001756 0.00000  test
                 avx_ChirpData_d 0.001615 0.00000  test
                 avx_ChirpData_d 0.001615 0.00000  choice

                     v_Transpose 0.002763 0.00000  test
                    v_Transpose2 0.004412 0.00000  test
                    v_Transpose4 0.002838 0.00000  test
                    v_Transpose8 0.003690 0.00000  test
                  v_pfTranspose2 0.002367 0.00000  test
                  v_pfTranspose4 0.002801 0.00000  test
                  v_pfTranspose8 0.004063 0.00000  test
                   v_vTranspose4 0.001822 0.00000  test
                 v_vTranspose4np 0.001887 0.00000  test
                v_vTranspose4ntw 0.007671 0.00000  test
              v_vTranspose4x8ntw 0.004252 0.00000  test
             v_vTranspose4x16ntw 0.001665 0.00000  test
            v_vpfTranspose8x4ntw 0.007697 0.00000  test
            v_avxTranspose4x8ntw 0.004180 0.00000  test
           v_avxTranspose4x16ntw 0.001380 0.00000  test
            v_avxTranspose8x4ntw 0.007660 0.00000  test
          v_avxTranspose8x8ntw_a 0.004437 0.00000  test
          v_avxTranspose8x8ntw_b 0.004565 0.00000  test
           v_avxTranspose4x16ntw 0.001380 0.00000  choice

                 FPU opt folding 0.002733 0.00000  test
                  AK SSE folding 0.001015 0.00000  test
                  BH SSE folding 0.000938 0.00000  test
                JS AVX_a folding 0.000798 0.00000  test
                JS AVX_c folding 0.000821 0.00000  test
                JS AVX_a folding 0.000798 0.00000  choice

                   Test duration     7.03 seconds

Ftst_v7 completed successfully.


=========================================================
Ftst_v7_J54_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.003834 0.00000  test    mintime= 0.002387
                   fpu_ChirpData 0.010318 0.00000  test    mintime= 0.010281
               fpu_opt_ChirpData 0.003676 0.00000  test    mintime= 0.002203
             sse1_ChirpData_ak8e 0.004432 0.00000  test    mintime= 0.004417
              sse2_ChirpData_ak8 0.003265 0.00000  test    mintime= 0.003256
              sse3_ChirpData_ak8 0.003119 0.00000  test    mintime= 0.003111
                 avx_ChirpData_a 0.001727 0.00000  test    mintime= 0.001723
                 avx_ChirpData_b 0.001693 0.00000  test    mintime= 0.001688
                 avx_ChirpData_c 0.001768 0.00000  test    mintime= 0.001752
                 avx_ChirpData_d 0.001614 0.00000  test    mintime= 0.001612
                 avx_ChirpData_e 0.001610 0.00000  test    mintime= 0.001605
                 avx_ChirpData_f 0.001721 0.00000  test    mintime= 0.001717
                 avx_ChirpData_g 0.001750 0.00000  test    mintime= 0.001736
                 avx_ChirpData_h 0.002148 0.00000  test    mintime= 0.002114
                 avx_ChirpData_i 0.001855 0.00000  test    mintime= 0.001837
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_e 0.001610 0.00000  choice

            Second run

                     v_ChirpData 0.003801 0.00000  test    mintime= 0.002389
                   fpu_ChirpData 0.010334 0.00000  test    mintime= 0.010292
               fpu_opt_ChirpData 0.003718 0.00000  test    mintime= 0.002202
             sse1_ChirpData_ak8e 0.004435 0.00000  test    mintime= 0.004411
              sse2_ChirpData_ak8 0.003280 0.00000  test    mintime= 0.003258
              sse3_ChirpData_ak8 0.003125 0.00000  test    mintime= 0.003112
                 avx_ChirpData_a 0.001725 0.00000  test    mintime= 0.001723
                 avx_ChirpData_b 0.001698 0.00000  test    mintime= 0.001689
                 avx_ChirpData_c 0.001755 0.00000  test    mintime= 0.001752
                 avx_ChirpData_d 0.001617 0.00000  test    mintime= 0.001612
                 avx_ChirpData_e 0.001608 0.00000  test    mintime= 0.001605
                 avx_ChirpData_f 0.001733 0.00000  test    mintime= 0.001720
                 avx_ChirpData_g 0.001741 0.00000  test    mintime= 0.001732
                 avx_ChirpData_h 0.002146 0.00000  test    mintime= 0.002111
                 avx_ChirpData_i 0.001862 0.00000  test    mintime= 0.001843
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_e 0.001608 0.00000  choice

            Third run

                     v_ChirpData 0.003781 0.00000  test    mintime= 0.002383
                   fpu_ChirpData 0.010354 0.00000  test    mintime= 0.010298
               fpu_opt_ChirpData 0.003670 0.00000  test    mintime= 0.002202
             sse1_ChirpData_ak8e 0.004439 0.00000  test    mintime= 0.004414
              sse2_ChirpData_ak8 0.003258 0.00000  test    mintime= 0.003255
              sse3_ChirpData_ak8 0.003139 0.00000  test    mintime= 0.003113
                 avx_ChirpData_a 0.001727 0.00000  test    mintime= 0.001723
                 avx_ChirpData_b 0.001697 0.00000  test    mintime= 0.001690
                 avx_ChirpData_c 0.001755 0.00000  test    mintime= 0.001753
                 avx_ChirpData_d 0.001621 0.00000  test    mintime= 0.001612
                 avx_ChirpData_e 0.001611 0.00000  test    mintime= 0.001605
                 avx_ChirpData_f 0.001727 0.00000  test    mintime= 0.001717
                 avx_ChirpData_g 0.001743 0.00000  test    mintime= 0.001735
                 avx_ChirpData_h 0.002145 0.00000  test    mintime= 0.002107
                 avx_ChirpData_i 0.001857 0.00000  test    mintime= 0.001840
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_e 0.001611 0.00000  choice

                   Test duration    12.43 seconds

Ftst_v7 completed successfully.

Hope this helps, regards,

Patrick.
Title: Re: AVX Optimized App Development
Post by: arkayn on 25 May 2012, 01:34:57 pm
So its possible the CPU is up/down -clocking?

That could possibly explain why results fluctuate more on your system.

My 8150 is residing in an ASUS Sabertooth 990FX, and is locked at 4.5, with CNQ and turbo turned off, as well as any other power saving states (C1E, C6). The SRQ/UNB/L3 cache is running at 2.4Ghz.

Locked clock will produce more predictable results, because the CPU cant decide to change speeds during tests.

But looking at mintimes on your 4100, it does seem to prefer d8, as that produces the fastest mintimes, so Josef's inclusion of mintimes are helpfull indeed.

Just restarted to check my BIOS and disabled Turbo and C1E, so there should be no major discrepancies now.

=========================================================
Ftst_v7_J54_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.009824 0.00000  test    mintime= 0.005371
                   fpu_ChirpData 0.017487 0.00000  test    mintime= 0.017333
               fpu_opt_ChirpData 0.009654 0.00000  test    mintime= 0.005122
             sse1_ChirpData_ak8e 0.007148 0.00000  test    mintime= 0.007111
              sse2_ChirpData_ak8 0.004559 0.00000  test    mintime= 0.004487
              sse3_ChirpData_ak8 0.004439 0.00000  test    mintime= 0.004402
                 avx_ChirpData_a 0.003772 0.00000  test    mintime= 0.003741
                 avx_ChirpData_b 0.003828 0.00000  test    mintime= 0.003732
                 avx_ChirpData_c 0.004082 0.00000  test    mintime= 0.004050
                 avx_ChirpData_d 0.003935 0.00000  test    mintime= 0.003932
                 avx_ChirpData_e 0.003859 0.00000  test    mintime= 0.003853
                 avx_ChirpData_f 0.003646 0.00000  test    mintime= 0.003635
                 avx_ChirpData_g 0.003545 0.00000  test    mintime= 0.003533
                 avx_ChirpData_h 0.004371 0.00000  test    mintime= 0.004342
                 avx_ChirpData_i 0.003838 0.00000  test    mintime= 0.003808
            avx_fma4_ChirpData_a 0.003330 0.00000  test    mintime= 0.003310
           avx_fma4_ChirpData_d4 0.003355 0.00000  test    mintime= 0.003341
           avx_fma4_ChirpData_d6 0.003351 0.00000  test    mintime= 0.003328
           avx_fma4_ChirpData_d8 0.003342 0.00000  test    mintime= 0.003325
            avx_fma4_ChirpData_e 0.003921 0.00000  test    mintime= 0.003904
            avx_fma4_ChirpData_a 0.003330 0.00000  choice

            Second run

                     v_ChirpData 0.009809 0.00000  test    mintime= 0.005367
                   fpu_ChirpData 0.017515 0.00000  test    mintime= 0.017334
               fpu_opt_ChirpData 0.009602 0.00000  test    mintime= 0.005055
             sse1_ChirpData_ak8e 0.007170 0.00000  test    mintime= 0.007113
              sse2_ChirpData_ak8 0.004509 0.00000  test    mintime= 0.004488
              sse3_ChirpData_ak8 0.004414 0.00000  test    mintime= 0.004390
                 avx_ChirpData_a 0.003774 0.00000  test    mintime= 0.003756
                 avx_ChirpData_b 0.003848 0.00000  test    mintime= 0.003806
                 avx_ChirpData_c 0.004058 0.00000  test    mintime= 0.004048
                 avx_ChirpData_d 0.003937 0.00000  test    mintime= 0.003932
                 avx_ChirpData_e 0.003857 0.00000  test    mintime= 0.003853
                 avx_ChirpData_f 0.003644 0.00000  test    mintime= 0.003635
                 avx_ChirpData_g 0.003543 0.00000  test    mintime= 0.003534
                 avx_ChirpData_h 0.004350 0.00000  test    mintime= 0.004335
                 avx_ChirpData_i 0.003856 0.00000  test    mintime= 0.003822
            avx_fma4_ChirpData_a 0.003331 0.00000  test    mintime= 0.003310
           avx_fma4_ChirpData_d4 0.003349 0.00000  test    mintime= 0.003341
           avx_fma4_ChirpData_d6 0.003335 0.00000  test    mintime= 0.003329
           avx_fma4_ChirpData_d8 0.003333 0.00000  test    mintime= 0.003326
            avx_fma4_ChirpData_e 0.003913 0.00000  test    mintime= 0.003900
            avx_fma4_ChirpData_a 0.003331 0.00000  choice

            Third run

                     v_ChirpData 0.009795 0.00000  test    mintime= 0.005379
                   fpu_ChirpData 0.017380 0.00000  test    mintime= 0.017333
               fpu_opt_ChirpData 0.009683 0.00000  test    mintime= 0.005122
             sse1_ChirpData_ak8e 0.007147 0.00000  test    mintime= 0.007113
              sse2_ChirpData_ak8 0.004544 0.00000  test    mintime= 0.004502
              sse3_ChirpData_ak8 0.004440 0.00000  test    mintime= 0.004403
                 avx_ChirpData_a 0.003776 0.00000  test    mintime= 0.003748
                 avx_ChirpData_b 0.003836 0.00000  test    mintime= 0.003741
                 avx_ChirpData_c 0.004129 0.00000  test    mintime= 0.004049
                 avx_ChirpData_d 0.003951 0.00000  test    mintime= 0.003937
                 avx_ChirpData_e 0.003870 0.00000  test    mintime= 0.003853
                 avx_ChirpData_f 0.003650 0.00000  test    mintime= 0.003638
                 avx_ChirpData_g 0.003574 0.00000  test    mintime= 0.003537
                 avx_ChirpData_h 0.004354 0.00000  test    mintime= 0.004334
                 avx_ChirpData_i 0.003865 0.00000  test    mintime= 0.003821
            avx_fma4_ChirpData_a 0.003316 0.00000  test    mintime= 0.003311
           avx_fma4_ChirpData_d4 0.003347 0.00000  test    mintime= 0.003342
           avx_fma4_ChirpData_d6 0.003332 0.00000  test    mintime= 0.003325
           avx_fma4_ChirpData_d8 0.003330 0.00000  test    mintime= 0.003326
            avx_fma4_ChirpData_e 0.003932 0.00000  test    mintime= 0.003908
            avx_fma4_ChirpData_a 0.003316 0.00000  choice

                   Test duration    10.93 seconds

Ftst_v7 completed successfully.
Title: Re: AVX Optimized App Development
Post by: KarVi on 25 May 2012, 01:40:03 pm
Well, now it doesn't prefer d8 (if it ever did) anymore, but at least its consistent with what it chooses. :)

Results are more stable it seems.
Title: Re: AVX Optimized App Development
Post by: arkayn on 25 May 2012, 01:44:00 pm
Actually, my system has fairly consistently preferred a, but d8 was usually a close second.
Title: Re: AVX Optimized App Development
Post by: KarVi on 25 May 2012, 01:52:11 pm
Yes.

Still it is a bit puzzling, that mine definately prefers d8.

Perhaps my SRQ/UNB/L3-cache is taxed harder, because of more cores asking for work?

But this test is singlethreaded (as far as I know), so that shouldn't be the case. Maybe the clockspeeds of L3 or memory play a role here?

Anyhow the differences are small, so I can live with whatever Josef chooses to work with.

Another thing, it is daunting to see an i7@3.4 comletely dominate my 8150@4.5. AMD has much catching up to do.
Title: Re: AVX Optimized App Development
Post by: arkayn on 25 May 2012, 02:01:52 pm
My i3 is also cruising past the FX computers.

=========================================================
Ftst_v7_J54_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.004736 0.00000  test    mintime= 0.003079
                   fpu_ChirpData 0.012392 0.00000  test    mintime= 0.012347
               fpu_opt_ChirpData 0.004540 0.00000  test    mintime= 0.002796
             sse1_ChirpData_ak8e 0.005779 0.00000  test    mintime= 0.005765
              sse2_ChirpData_ak8 0.004182 0.00000  test    mintime= 0.004173
              sse3_ChirpData_ak8 0.004011 0.00000  test    mintime= 0.003991
                 avx_ChirpData_a 0.002091 0.00000  test    mintime= 0.002079
                 avx_ChirpData_b 0.002050 0.00000  test    mintime= 0.002033
                 avx_ChirpData_c 0.002109 0.00000  test    mintime= 0.002099
                 avx_ChirpData_d 0.001937 0.00000  test    mintime= 0.001930
                 avx_ChirpData_e 0.001919 0.00000  test    mintime= 0.001915
                 avx_ChirpData_f 0.002059 0.00000  test    mintime= 0.002043
                 avx_ChirpData_g 0.002114 0.00000  test    mintime= 0.002072
                 avx_ChirpData_h 0.002664 0.00000  test    mintime= 0.002657
                 avx_ChirpData_i 0.002322 0.00000  test    mintime= 0.002216
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_e 0.001919 0.00000  choice

            Second run

                     v_ChirpData 0.004711 0.00000  test    mintime= 0.003087
                   fpu_ChirpData 0.012465 0.00000  test    mintime= 0.012372
               fpu_opt_ChirpData 0.004542 0.00000  test    mintime= 0.002788
             sse1_ChirpData_ak8e 0.005808 0.00000  test    mintime= 0.005765
              sse2_ChirpData_ak8 0.004187 0.00000  test    mintime= 0.004172
              sse3_ChirpData_ak8 0.004033 0.00000  test    mintime= 0.003997
                 avx_ChirpData_a 0.002120 0.00000  test    mintime= 0.002079
                 avx_ChirpData_b 0.002092 0.00000  test    mintime= 0.002032
                 avx_ChirpData_c 0.002111 0.00000  test    mintime= 0.002100
                 avx_ChirpData_d 0.001945 0.00000  test    mintime= 0.001933
                 avx_ChirpData_e 0.001928 0.00000  test    mintime= 0.001918
                 avx_ChirpData_f 0.002057 0.00000  test    mintime= 0.002042
                 avx_ChirpData_g 0.002103 0.00000  test    mintime= 0.002072
                 avx_ChirpData_h 0.002668 0.00000  test    mintime= 0.002656
                 avx_ChirpData_i 0.002222 0.00000  test    mintime= 0.002214
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_e 0.001928 0.00000  choice

            Third run

                     v_ChirpData 0.004706 0.00000  test    mintime= 0.003076
                   fpu_ChirpData 0.012670 0.00000  test    mintime= 0.012353
               fpu_opt_ChirpData 0.004944 0.00000  test    mintime= 0.002788
             sse1_ChirpData_ak8e 0.005822 0.00000  test    mintime= 0.005767
              sse2_ChirpData_ak8 0.004212 0.00000  test    mintime= 0.004173
              sse3_ChirpData_ak8 0.004047 0.00000  test    mintime= 0.003995
                 avx_ChirpData_a 0.002284 0.00000  test    mintime= 0.002082
                 avx_ChirpData_b 0.002036 0.00000  test    mintime= 0.002034
                 avx_ChirpData_c 0.002104 0.00000  test    mintime= 0.002100
                 avx_ChirpData_d 0.001941 0.00000  test    mintime= 0.001931
                 avx_ChirpData_e 0.001917 0.00000  test    mintime= 0.001916
                 avx_ChirpData_f 0.002052 0.00000  test    mintime= 0.002042
                 avx_ChirpData_g 0.002077 0.00000  test    mintime= 0.002072
                 avx_ChirpData_h 0.002668 0.00000  test    mintime= 0.002657
                 avx_ChirpData_i 0.002220 0.00000  test    mintime= 0.002213
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_e 0.001917 0.00000  choice

                   Test duration     8.06 seconds

Ftst_v7 completed successfully.
Title: Re: AVX Optimized App Development
Post by: KarVi on 25 May 2012, 02:24:00 pm
Just proves my point :)

It would be nice if Josef had the time for a more specific AMD build, now he is running AMD specific FMA4 anyway.

A build made to take advantage of any strengths, and avoid (m)any weakneses, specifically for BD, would probably perform even better.
I'm not a programmer, but I have read a little of what Agner Fog has written about optimizing code, and it seems there are many do's and don'ts for Bulldozer, and they don't allways correspond well with the do's and dont's for the i-series.

I don't now how AMD specific he is doing things, and AMD specific development would probably require that he had access to a BD based system, and I don't think he has that. The current remote testing is a bit slow :)

Under the circumstances I actually believe he's doing an excellent job.

But I hope he keeps up his efforts, I´ll keep an eye and test all that I can, to help him in his work.
Title: Re: AVX Optimized App Development
Post by: Claggy on 25 May 2012, 05:32:44 pm
i7-2600K @4.7GHz (Boinc running):

=========================================================
Ftst_v7_J54_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.013263 0.00000  test    mintime= 0.008009
                   fpu_ChirpData 0.016376 0.00000  test    mintime= 0.015240
               fpu_opt_ChirpData 0.010888 0.00000  test    mintime= 0.004957
             sse1_ChirpData_ak8e 0.006530 0.00000  test    mintime= 0.006036
              sse2_ChirpData_ak8 0.005245 0.00000  test    mintime= 0.004845
              sse3_ChirpData_ak8 0.005638 0.00000  test    mintime= 0.005391
                 avx_ChirpData_a 0.003428 0.00000  test    mintime= 0.002866
                 avx_ChirpData_b 0.003293 0.00000  test    mintime= 0.003004
                 avx_ChirpData_c 0.003464 0.00000  test    mintime= 0.002649
                 avx_ChirpData_d 0.003401 0.00000  test    mintime= 0.003068
                 avx_ChirpData_e 0.003336 0.00000  test    mintime= 0.002747
                 avx_ChirpData_f 0.003858 0.00000  test    mintime= 0.002764
                 avx_ChirpData_g 0.003393 0.00000  test    mintime= 0.002854
                 avx_ChirpData_h 0.004357 0.00000  test    mintime= 0.003769
                 avx_ChirpData_i 0.003741 0.00000  test    mintime= 0.003195
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_b 0.003293 0.00000  choice

            Second run

                     v_ChirpData 0.011919 0.00000  test    mintime= 0.005614
                   fpu_ChirpData 0.017020 0.00000  test    mintime= 0.015932
               fpu_opt_ChirpData 0.012288 0.00000  test    mintime= 0.005588
             sse1_ChirpData_ak8e 0.006986 0.00000  test    mintime= 0.006516
              sse2_ChirpData_ak8 0.005728 0.00000  test    mintime= 0.005103
              sse3_ChirpData_ak8 0.005483 0.00000  test    mintime= 0.005053
                 avx_ChirpData_a 0.003443 0.00000  test    mintime= 0.003055
                 avx_ChirpData_b 0.003343 0.00000  test    mintime= 0.002985
                 avx_ChirpData_c 0.003370 0.00000  test    mintime= 0.002868
                 avx_ChirpData_d 0.003293 0.00000  test    mintime= 0.002583
                 avx_ChirpData_e 0.003045 0.00000  test    mintime= 0.002483
                 avx_ChirpData_f 0.003491 0.00000  test    mintime= 0.003050
                 avx_ChirpData_g 0.003368 0.00000  test    mintime= 0.002979
                 avx_ChirpData_h 0.004322 0.00000  test    mintime= 0.003799
                 avx_ChirpData_i 0.003393 0.00000  test    mintime= 0.002930
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_e 0.003045 0.00000  choice

            Third run

                     v_ChirpData 0.011498 0.00000  test    mintime= 0.006496
                   fpu_ChirpData 0.017043 0.00000  test    mintime= 0.016015
               fpu_opt_ChirpData 0.012360 0.00000  test    mintime= 0.006857
             sse1_ChirpData_ak8e 0.006964 0.00000  test    mintime= 0.006531
              sse2_ChirpData_ak8 0.005478 0.00000  test    mintime= 0.004993
              sse3_ChirpData_ak8 0.005408 0.00000  test    mintime= 0.005107
                 avx_ChirpData_a 0.003465 0.00000  test    mintime= 0.003220
                 avx_ChirpData_b 0.003389 0.00000  test    mintime= 0.002860
                 avx_ChirpData_c 0.003296 0.00000  test    mintime= 0.002902
                 avx_ChirpData_d 0.002841 0.00000  test    mintime= 0.002393
                 avx_ChirpData_e 0.003209 0.00000  test    mintime= 0.002488
                 avx_ChirpData_f 0.003274 0.00000  test    mintime= 0.002586
                 avx_ChirpData_g 0.003199 0.00000  test    mintime= 0.002958
                 avx_ChirpData_h 0.003922 0.00000  test    mintime= 0.003441
                 avx_ChirpData_i 0.003587 0.00000  test    mintime= 0.003252
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_d 0.002841 0.00000  choice

                   Test duration     8.87 seconds

Ftst_v7 completed successfully.
=========================================================

i7-2600K @4.7GHz (Boinc suspended):

=========================================================
Ftst_v7_J54_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.003799 0.00000  test    mintime= 0.002485
                   fpu_ChirpData 0.008702 0.00000  test    mintime= 0.008688
               fpu_opt_ChirpData 0.003864 0.00000  test    mintime= 0.002353
             sse1_ChirpData_ak8e 0.004217 0.00000  test    mintime= 0.004188
              sse2_ChirpData_ak8 0.003165 0.00000  test    mintime= 0.003149
              sse3_ChirpData_ak8 0.002986 0.00000  test    mintime= 0.002965
                 avx_ChirpData_a 0.001482 0.00000  test    mintime= 0.001472
                 avx_ChirpData_b 0.001644 0.00000  test    mintime= 0.001640
                 avx_ChirpData_c 0.001485 0.00000  test    mintime= 0.001483
                 avx_ChirpData_d 0.001398 0.00000  test    mintime= 0.001375
                 avx_ChirpData_e 0.001535 0.00000  test    mintime= 0.001533
                 avx_ChirpData_f 0.001587 0.00000  test    mintime= 0.001578
                 avx_ChirpData_g 0.001639 0.00000  test    mintime= 0.001632
                 avx_ChirpData_h 0.002034 0.00000  test    mintime= 0.002018
                 avx_ChirpData_i 0.001738 0.00000  test    mintime= 0.001735
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_d 0.001398 0.00000  choice

            Second run

                     v_ChirpData 0.003811 0.00000  test    mintime= 0.002484
                   fpu_ChirpData 0.008764 0.00000  test    mintime= 0.008694
               fpu_opt_ChirpData 0.003714 0.00000  test    mintime= 0.002344
             sse1_ChirpData_ak8e 0.004225 0.00000  test    mintime= 0.004195
              sse2_ChirpData_ak8 0.003157 0.00000  test    mintime= 0.003152
              sse3_ChirpData_ak8 0.002983 0.00000  test    mintime= 0.002963
                 avx_ChirpData_a 0.001472 0.00000  test    mintime= 0.001471
                 avx_ChirpData_b 0.001644 0.00000  test    mintime= 0.001639
                 avx_ChirpData_c 0.001484 0.00000  test    mintime= 0.001481
                 avx_ChirpData_d 0.001377 0.00000  test    mintime= 0.001374
                 avx_ChirpData_e 0.001533 0.00000  test    mintime= 0.001530
                 avx_ChirpData_f 0.001586 0.00000  test    mintime= 0.001580
                 avx_ChirpData_g 0.001633 0.00000  test    mintime= 0.001630
                 avx_ChirpData_h 0.002026 0.00000  test    mintime= 0.002010
                 avx_ChirpData_i 0.001737 0.00000  test    mintime= 0.001734
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_d 0.001377 0.00000  choice

            Third run

                     v_ChirpData 0.003803 0.00000  test    mintime= 0.002487
                   fpu_ChirpData 0.008781 0.00000  test    mintime= 0.008689
               fpu_opt_ChirpData 0.003718 0.00000  test    mintime= 0.002357
             sse1_ChirpData_ak8e 0.004211 0.00000  test    mintime= 0.004175
              sse2_ChirpData_ak8 0.003170 0.00000  test    mintime= 0.003150
              sse3_ChirpData_ak8 0.002982 0.00000  test    mintime= 0.002965
                 avx_ChirpData_a 0.001477 0.00000  test    mintime= 0.001472
                 avx_ChirpData_b 0.001644 0.00000  test    mintime= 0.001640
                 avx_ChirpData_c 0.001492 0.00000  test    mintime= 0.001482
                 avx_ChirpData_d 0.001377 0.00000  test    mintime= 0.001374
                 avx_ChirpData_e 0.001535 0.00000  test    mintime= 0.001532
                 avx_ChirpData_f 0.001589 0.00000  test    mintime= 0.001575
                 avx_ChirpData_g 0.001633 0.00000  test    mintime= 0.001630
                 avx_ChirpData_h 0.002043 0.00000  test    mintime= 0.002011
                 avx_ChirpData_i 0.001739 0.00000  test    mintime= 0.001733
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_d 0.001377 0.00000  choice

                   Test duration     5.67 seconds

Ftst_v7 completed successfully.

Claggy
Title: Re: AVX Optimized App Development
Post by: Josef W. Segur on 28 May 2012, 11:17:57 am
Although there are still puzzles from the tests so far, with the attached J55 I've added another dimension to the tests. J54 and earlier have been doing full Mebisample chirping as needed before doing Gaussian, Pulse, and Triplet finding. For cases where that's not needed, AK_v8 becomes more cache friendly by subdividing. So I modified all the chirp functions to support that, and J55 does testing at 128K and 32K in addition. The timings ought to be about 1/8 and 1/32 of the full length tests.

I do appreciate the testing, and am glad the Ivy Bridge system reacted like other Intel CPUs. Whatever form of dispatch is eventually used, keeping the number of code paths low will be more efficient.
                                         Joe
Title: Re: AVX Optimized App Development
Post by: arkayn on 28 May 2012, 11:58:45 am
FX-4100@3.6
BOINC idle

=========================================================
Ftst_v7_J55_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------

   First run, 1048576 sample testing

                     v_ChirpData 0.051682 0.00000  test    mintime= 0.051531
                   fpu_ChirpData 0.017529 0.00000  test    mintime= 0.017479
             sse1_ChirpData_ak8e 0.007230 0.00000  test    mintime= 0.007164
              sse2_ChirpData_ak8 0.004583 0.00000  test    mintime= 0.004521
              sse3_ChirpData_ak8 0.004468 0.00000  test    mintime= 0.004435
                 avx_ChirpData_a 0.003825 0.00000  test    mintime= 0.003762
                 avx_ChirpData_b 0.003839 0.00000  test    mintime= 0.003779
                 avx_ChirpData_c 0.004100 0.00000  test    mintime= 0.004079
                 avx_ChirpData_d 0.003990 0.00000  test    mintime= 0.003967
                 avx_ChirpData_e 0.003914 0.00000  test    mintime= 0.003844
                 avx_ChirpData_f 0.003695 0.00000  test    mintime= 0.003664
                 avx_ChirpData_g 0.003653 0.00000  test    mintime= 0.003586
                 avx_ChirpData_h 0.004360 0.00000  test    mintime= 0.004313
                 avx_ChirpData_i 0.003781 0.00000  test    mintime= 0.003734
            avx_fma4_ChirpData_a 0.003349 0.00000  test    mintime= 0.003328
           avx_fma4_ChirpData_d4 0.003376 0.00000  test    mintime= 0.003356
           avx_fma4_ChirpData_d6 0.003417 0.00000  test    mintime= 0.003329
           avx_fma4_ChirpData_d8 0.003378 0.00000  test    mintime= 0.003339
            avx_fma4_ChirpData_e 0.003745 0.00000  test    mintime= 0.003706
            avx_fma4_ChirpData_a 0.003349 0.00000  choice

  Second run,  131072 sample testing

                     v_ChirpData 0.006409 0.00000  test    mintime= 0.006369
                   fpu_ChirpData 0.002194 0.00000  test    mintime= 0.002161
             sse1_ChirpData_ak8e 0.000900 0.00000  test    mintime= 0.000887
              sse2_ChirpData_ak8 0.000573 0.00000  test    mintime= 0.000564
              sse3_ChirpData_ak8 0.000561 0.00000  test    mintime= 0.000549
                 avx_ChirpData_a 0.000477 0.00000  test    mintime= 0.000470
                 avx_ChirpData_b 0.000486 0.00000  test    mintime= 0.000478
                 avx_ChirpData_c 0.000513 0.00000  test    mintime= 0.000505
                 avx_ChirpData_d 0.000502 0.00000  test    mintime= 0.000492
                 avx_ChirpData_e 0.000483 0.00000  test    mintime= 0.000456
                 avx_ChirpData_f 0.000460 0.00000  test    mintime= 0.000453
                 avx_ChirpData_g 0.000450 0.00000  test    mintime= 0.000440
                 avx_ChirpData_h 0.000543 0.00000  test    mintime= 0.000531
                 avx_ChirpData_i 0.000459 0.00000  test    mintime= 0.000446
            avx_fma4_ChirpData_a 0.000417 0.00000  test    mintime= 0.000410
           avx_fma4_ChirpData_d4 0.000429 0.00000  test    mintime= 0.000415
           avx_fma4_ChirpData_d6 0.000419 0.00000  test    mintime= 0.000414
           avx_fma4_ChirpData_d8 0.000423 0.00000  test    mintime= 0.000414
            avx_fma4_ChirpData_e 0.000465 0.00000  test    mintime= 0.000456
            avx_fma4_ChirpData_a 0.000417 0.00000  choice

   Third run,   32768 sample testing

                     v_ChirpData 0.001609 0.00000  test    mintime= 0.001590
                   fpu_ChirpData 0.000548 0.00000  test    mintime= 0.000537
             sse1_ChirpData_ak8e 0.000225 0.00000  test    mintime= 0.000221
              sse2_ChirpData_ak8 0.000144 0.00000  test    mintime= 0.000140
              sse3_ChirpData_ak8 0.000140 0.00000  test    mintime= 0.000137
                 avx_ChirpData_a 0.000120 0.00000  test    mintime= 0.000117
                 avx_ChirpData_b 0.000122 0.00000  test    mintime= 0.000120
                 avx_ChirpData_c 0.000129 0.00000  test    mintime= 0.000126
                 avx_ChirpData_d 0.000125 0.00000  test    mintime= 0.000123
                 avx_ChirpData_e 0.000119 0.00000  test    mintime= 0.000114
                 avx_ChirpData_f 0.000115 0.00000  test    mintime= 0.000113
                 avx_ChirpData_g 0.000112 0.00000  test    mintime= 0.000110
                 avx_ChirpData_h 0.000135 0.00000  test    mintime= 0.000132
                 avx_ChirpData_i 0.000113 0.00000  test    mintime= 0.000111
            avx_fma4_ChirpData_a 0.000104 0.00000  test    mintime= 0.000103
           avx_fma4_ChirpData_d4 0.000106 0.00000  test    mintime= 0.000104
           avx_fma4_ChirpData_d6 0.000105 0.00000  test    mintime= 0.000104
           avx_fma4_ChirpData_d8 0.000105 0.00000  test    mintime= 0.000104
            avx_fma4_ChirpData_e 0.000117 0.00000  test    mintime= 0.000114
            avx_fma4_ChirpData_a 0.000104 0.00000  choice

                   Test duration     7.34 seconds

Ftst_v7 completed successfully.

i3-2120@3.3
BOINC idle

=========================================================
Ftst_v7_J55_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------

   First run, 1048576 sample testing

                     v_ChirpData 0.058924 0.00000  test    mintime= 0.058849
                   fpu_ChirpData 0.012426 0.00000  test    mintime= 0.012339
             sse1_ChirpData_ak8e 0.005945 0.00000  test    mintime= 0.005699
              sse2_ChirpData_ak8 0.004193 0.00000  test    mintime= 0.004164
              sse3_ChirpData_ak8 0.004016 0.00000  test    mintime= 0.003993
                 avx_ChirpData_a 0.002082 0.00000  test    mintime= 0.002074
                 avx_ChirpData_b 0.002039 0.00000  test    mintime= 0.002034
                 avx_ChirpData_c 0.002107 0.00000  test    mintime= 0.002098
                 avx_ChirpData_d 0.001936 0.00000  test    mintime= 0.001932
                 avx_ChirpData_e 0.001928 0.00000  test    mintime= 0.001918
                 avx_ChirpData_f 0.002054 0.00000  test    mintime= 0.002044
                 avx_ChirpData_g 0.002078 0.00000  test    mintime= 0.002070
                 avx_ChirpData_h 0.002735 0.00000  test    mintime= 0.002641
                 avx_ChirpData_i 0.002223 0.00000  test    mintime= 0.002212
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_e 0.001928 0.00000  choice

  Second run,  131072 sample testing

                     v_ChirpData 0.007376 0.00000  test    mintime= 0.007337
                   fpu_ChirpData 0.001547 0.00000  test    mintime= 0.001540
             sse1_ChirpData_ak8e 0.000714 0.00000  test    mintime= 0.000712
              sse2_ChirpData_ak8 0.000522 0.00000  test    mintime= 0.000520
              sse3_ChirpData_ak8 0.000500 0.00000  test    mintime= 0.000498
                 avx_ChirpData_a 0.000260 0.00000  test    mintime= 0.000258
                 avx_ChirpData_b 0.000255 0.00000  test    mintime= 0.000254
                 avx_ChirpData_c 0.000264 0.00000  test    mintime= 0.000261
                 avx_ChirpData_d 0.000242 0.00000  test    mintime= 0.000241
                 avx_ChirpData_e 0.000242 0.00000  test    mintime= 0.000239
                 avx_ChirpData_f 0.000257 0.00000  test    mintime= 0.000255
                 avx_ChirpData_g 0.000260 0.00000  test    mintime= 0.000257
                 avx_ChirpData_h 0.000329 0.00000  test    mintime= 0.000322
                 avx_ChirpData_i 0.000271 0.00000  test    mintime= 0.000267
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_e 0.000242 0.00000  choice

   Third run,   32768 sample testing

                     v_ChirpData 0.001841 0.00000  test    mintime= 0.001834
                   fpu_ChirpData 0.000387 0.00000  test    mintime= 0.000385
             sse1_ChirpData_ak8e 0.000179 0.00000  test    mintime= 0.000178
              sse2_ChirpData_ak8 0.000131 0.00000  test    mintime= 0.000130
              sse3_ChirpData_ak8 0.000125 0.00000  test    mintime= 0.000124
                 avx_ChirpData_a 0.000065 0.00000  test    mintime= 0.000064
                 avx_ChirpData_b 0.000064 0.00000  test    mintime= 0.000063
                 avx_ChirpData_c 0.000066 0.00000  test    mintime= 0.000065
                 avx_ChirpData_d 0.000064 0.00000  test    mintime= 0.000060
                 avx_ChirpData_e 0.000060 0.00000  test    mintime= 0.000059
                 avx_ChirpData_f 0.000065 0.00000  test    mintime= 0.000063
                 avx_ChirpData_g 0.000065 0.00000  test    mintime= 0.000064
                 avx_ChirpData_h 0.000081 0.00000  test    mintime= 0.000079
                 avx_ChirpData_i 0.000069 0.00000  test    mintime= 0.000064
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_e 0.000060 0.00000  choice

                   Test duration     5.55 seconds

Ftst_v7 completed successfully.
Title: Re: AVX Optimized App Development
Post by: PatrickV2 on 28 May 2012, 12:46:11 pm
Although there are still puzzles from the tests so far, with the attached J55 I've added another dimension to the tests. J54 and earlier have been doing full Mebisample chirping as needed before doing Gaussian, Pulse, and Triplet finding. For cases where that's not needed, AK_v8 becomes more cache friendly by subdividing. So I modified all the chirp functions to support that, and J55 does testing at 128K and 32K in addition. The timings ought to be about 1/8 and 1/32 of the full length tests.

I do appreciate the testing, and am glad the Ivy Bridge system reacted like other Intel CPUs. Whatever form of dispatch is eventually used, keeping the number of code paths low will be more efficient.
                                         Joe

I have handed over the Ivy Bridge system to my (happy) brother (who is ~150kms away from me), so I will not be able to provide more feedback in that respect.

Regards, Patrick.
Title: Re: AVX Optimized App Development
Post by: Claggy on 28 May 2012, 01:04:39 pm
i7-2600K @4.7GHz (Boinc running):

=========================================================
Ftst_v7_J55_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------

   First run, 1048576 sample testing

                     v_ChirpData 0.047452 0.00000  test    mintime= 0.046795
                   fpu_ChirpData 0.015573 0.00000  test    mintime= 0.014707
             sse1_ChirpData_ak8e 0.006271 0.00000  test    mintime= 0.006084
              sse2_ChirpData_ak8 0.004890 0.00000  test    mintime= 0.004704
              sse3_ChirpData_ak8 0.004621 0.00000  test    mintime= 0.004309
                 avx_ChirpData_a 0.003329 0.00000  test    mintime= 0.002764
                 avx_ChirpData_b 0.003110 0.00000  test    mintime= 0.002663
                 avx_ChirpData_c 0.002965 0.00000  test    mintime= 0.002510
                 avx_ChirpData_d 0.002596 0.00000  test    mintime= 0.002251
                 avx_ChirpData_e 0.002902 0.00000  test    mintime= 0.002174
                 avx_ChirpData_f 0.003209 0.00000  test    mintime= 0.002657
                 avx_ChirpData_g 0.002810 0.00000  test    mintime= 0.002484
                 avx_ChirpData_h 0.003235 0.00000  test    mintime= 0.003037
                 avx_ChirpData_i 0.002924 0.00000  test    mintime= 0.002605
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_d 0.002596 0.00000  choice

  Second run,  131072 sample testing

                     v_ChirpData 0.005896 0.00000  test    mintime= 0.005775
                   fpu_ChirpData 0.001855 0.00000  test    mintime= 0.001815
             sse1_ChirpData_ak8e 0.000724 0.00000  test    mintime= 0.000704
              sse2_ChirpData_ak8 0.000571 0.00000  test    mintime= 0.000543
              sse3_ChirpData_ak8 0.000554 0.00000  test    mintime= 0.000531
                 avx_ChirpData_a 0.000306 0.00000  test    mintime= 0.000278
                 avx_ChirpData_b 0.000340 0.00000  test    mintime= 0.000290
                 avx_ChirpData_c 0.000356 0.00000  test    mintime= 0.000288
                 avx_ChirpData_d 0.000298 0.00000  test    mintime= 0.000264
                 avx_ChirpData_e 0.000323 0.00000  test    mintime= 0.000264
                 avx_ChirpData_f 0.000318 0.00000  test    mintime= 0.000271
                 avx_ChirpData_g 0.000340 0.00000  test    mintime= 0.000283
                 avx_ChirpData_h 0.000396 0.00000  test    mintime= 0.000339
                 avx_ChirpData_i 0.000351 0.00000  test    mintime= 0.000297
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_d 0.000298 0.00000  choice

   Third run,   32768 sample testing

                     v_ChirpData 0.001490 0.00000  test    mintime= 0.001426
                   fpu_ChirpData 0.000490 0.00000  test    mintime= 0.000440
             sse1_ChirpData_ak8e 0.000201 0.00000  test    mintime= 0.000175
              sse2_ChirpData_ak8 0.000158 0.00000  test    mintime= 0.000137
              sse3_ChirpData_ak8 0.000160 0.00000  test    mintime= 0.000132
                 avx_ChirpData_a 0.000099 0.00000  test    mintime= 0.000064
                 avx_ChirpData_b 0.000087 0.00000  test    mintime= 0.000068
                 avx_ChirpData_c 0.000092 0.00000  test    mintime= 0.000067
                 avx_ChirpData_d 0.000096 0.00000  test    mintime= 0.000063
                 avx_ChirpData_e 0.000103 0.00000  test    mintime= 0.000071
                 avx_ChirpData_f 0.000097 0.00000  test    mintime= 0.000070
                 avx_ChirpData_g 0.000093 0.00000  test    mintime= 0.000068
                 avx_ChirpData_h 0.000097 0.00000  test    mintime= 0.000081
                 avx_ChirpData_i 0.000088 0.00000  test    mintime= 0.000068
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_b 0.000087 0.00000  choice

                   Test duration     5.56 seconds

Ftst_v7 completed successfully.
=========================================================

i7-2600K @4.7GHz (Boinc suspended):

=========================================================
Ftst_v7_J55_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------

   First run, 1048576 sample testing

                     v_ChirpData 0.041361 0.00000  test    mintime= 0.041250
                   fpu_ChirpData 0.008720 0.00000  test    mintime= 0.008688
             sse1_ChirpData_ak8e 0.004220 0.00000  test    mintime= 0.004196
              sse2_ChirpData_ak8 0.003154 0.00000  test    mintime= 0.003142
              sse3_ChirpData_ak8 0.002983 0.00000  test    mintime= 0.002965
                 avx_ChirpData_a 0.001472 0.00000  test    mintime= 0.001470
                 avx_ChirpData_b 0.001646 0.00000  test    mintime= 0.001642
                 avx_ChirpData_c 0.001486 0.00000  test    mintime= 0.001484
                 avx_ChirpData_d 0.001385 0.00000  test    mintime= 0.001377
                 avx_ChirpData_e 0.001538 0.00000  test    mintime= 0.001532
                 avx_ChirpData_f 0.001587 0.00000  test    mintime= 0.001578
                 avx_ChirpData_g 0.001638 0.00000  test    mintime= 0.001632
                 avx_ChirpData_h 0.002020 0.00000  test    mintime= 0.002002
                 avx_ChirpData_i 0.001712 0.00000  test    mintime= 0.001708
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_d 0.001385 0.00000  choice

  Second run,  131072 sample testing

                     v_ChirpData 0.005160 0.00000  test    mintime= 0.005146
                   fpu_ChirpData 0.001093 0.00000  test    mintime= 0.001084
             sse1_ChirpData_ak8e 0.000528 0.00000  test    mintime= 0.000524
              sse2_ChirpData_ak8 0.000394 0.00000  test    mintime= 0.000393
              sse3_ChirpData_ak8 0.000373 0.00000  test    mintime= 0.000370
                 avx_ChirpData_a 0.000184 0.00000  test    mintime= 0.000183
                 avx_ChirpData_b 0.000206 0.00000  test    mintime= 0.000204
                 avx_ChirpData_c 0.000186 0.00000  test    mintime= 0.000185
                 avx_ChirpData_d 0.000173 0.00000  test    mintime= 0.000171
                 avx_ChirpData_e 0.000192 0.00000  test    mintime= 0.000191
                 avx_ChirpData_f 0.000198 0.00000  test    mintime= 0.000196
                 avx_ChirpData_g 0.000205 0.00000  test    mintime= 0.000203
                 avx_ChirpData_h 0.000250 0.00000  test    mintime= 0.000245
                 avx_ChirpData_i 0.000204 0.00000  test    mintime= 0.000201
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_d 0.000173 0.00000  choice

   Third run,   32768 sample testing

                     v_ChirpData 0.001291 0.00000  test    mintime= 0.001286
                   fpu_ChirpData 0.000272 0.00000  test    mintime= 0.000271
             sse1_ChirpData_ak8e 0.000132 0.00000  test    mintime= 0.000131
              sse2_ChirpData_ak8 0.000099 0.00000  test    mintime= 0.000098
              sse3_ChirpData_ak8 0.000093 0.00000  test    mintime= 0.000092
                 avx_ChirpData_a 0.000047 0.00000  test    mintime= 0.000046
                 avx_ChirpData_b 0.000052 0.00000  test    mintime= 0.000051
                 avx_ChirpData_c 0.000047 0.00000  test    mintime= 0.000046
                 avx_ChirpData_d 0.000043 0.00000  test    mintime= 0.000043
                 avx_ChirpData_e 0.000048 0.00000  test    mintime= 0.000047
                 avx_ChirpData_f 0.000050 0.00000  test    mintime= 0.000049
                 avx_ChirpData_g 0.000051 0.00000  test    mintime= 0.000051
                 avx_ChirpData_h 0.000062 0.00000  test    mintime= 0.000061
                 avx_ChirpData_i 0.000051 0.00000  test    mintime= 0.000050
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_d 0.000043 0.00000  choice

                   Test duration     3.92 seconds

Ftst_v7 completed successfully.

Claggy
Title: Re: AVX Optimized App Development
Post by: Josef W. Segur on 05 Jun 2012, 03:10:36 pm
The J55 test was built with GCC 4.5.1, I'm attaching J55b built with GCC 4.6.1 to see if there's any significant difference. If you have time to run both in order for the environment to be as similar as possible, that would be best. All functions may be affected, not just those targeting Bulldozer or Sandy Bridge.

One of the particular puzzles is why avx_fma4_ChirpData_a seems to be faster than avx_fma4_ChirpData_d4, the 4.5.1 build seemed not to optimize the instruction ordering of the d subvariants as well, but the CPU out of order execution capabilities ought to have been sufficient to handle it. These routines necessarily have serious dependency chain problems so there isn't a lot of room for reordering anyhow.
                                       Joe
Title: Re: AVX Optimized App Development
Post by: arkayn on 05 Jun 2012, 03:25:26 pm
FX-4100
BOINC Idle

=========================================================
Ftst_v7_J55_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------

   First run, 1048576 sample testing

                     v_ChirpData 0.051829 0.00000  test    mintime= 0.051639
                   fpu_ChirpData 0.017697 0.00000  test    mintime= 0.017562
             sse1_ChirpData_ak8e 0.007256 0.00000  test    mintime= 0.007218
              sse2_ChirpData_ak8 0.004547 0.00000  test    mintime= 0.004528
              sse3_ChirpData_ak8 0.004486 0.00000  test    mintime= 0.004450
                 avx_ChirpData_a 0.003830 0.00000  test    mintime= 0.003812
                 avx_ChirpData_b 0.003889 0.00000  test    mintime= 0.003792
                 avx_ChirpData_c 0.004161 0.00000  test    mintime= 0.004119
                 avx_ChirpData_d 0.004023 0.00000  test    mintime= 0.003978
                 avx_ChirpData_e 0.003911 0.00000  test    mintime= 0.003853
                 avx_ChirpData_f 0.003730 0.00000  test    mintime= 0.003684
                 avx_ChirpData_g 0.003687 0.00000  test    mintime= 0.003626
                 avx_ChirpData_h 0.004389 0.00000  test    mintime= 0.004343
                 avx_ChirpData_i 0.003824 0.00000  test    mintime= 0.003775
            avx_fma4_ChirpData_a 0.003376 0.00000  test    mintime= 0.003330
           avx_fma4_ChirpData_d4 0.003397 0.00000  test    mintime= 0.003355
           avx_fma4_ChirpData_d6 0.003379 0.00000  test    mintime= 0.003348
           avx_fma4_ChirpData_d8 0.003397 0.00000  test    mintime= 0.003363
            avx_fma4_ChirpData_e 0.003773 0.00000  test    mintime= 0.003720
            avx_fma4_ChirpData_a 0.003376 0.00000  choice

  Second run,  131072 sample testing

                     v_ChirpData 0.006456 0.00000  test    mintime= 0.006373
                   fpu_ChirpData 0.002205 0.00000  test    mintime= 0.002167
             sse1_ChirpData_ak8e 0.000905 0.00000  test    mintime= 0.000891
              sse2_ChirpData_ak8 0.000577 0.00000  test    mintime= 0.000564
              sse3_ChirpData_ak8 0.000561 0.00000  test    mintime= 0.000550
                 avx_ChirpData_a 0.000482 0.00000  test    mintime= 0.000470
                 avx_ChirpData_b 0.000488 0.00000  test    mintime= 0.000478
                 avx_ChirpData_c 0.000515 0.00000  test    mintime= 0.000505
                 avx_ChirpData_d 0.000502 0.00000  test    mintime= 0.000493
                 avx_ChirpData_e 0.000480 0.00000  test    mintime= 0.000456
                 avx_ChirpData_f 0.000461 0.00000  test    mintime= 0.000453
                 avx_ChirpData_g 0.000455 0.00000  test    mintime= 0.000441
                 avx_ChirpData_h 0.000545 0.00000  test    mintime= 0.000531
                 avx_ChirpData_i 0.000462 0.00000  test    mintime= 0.000446
            avx_fma4_ChirpData_a 0.000419 0.00000  test    mintime= 0.000411
           avx_fma4_ChirpData_d4 0.000423 0.00000  test    mintime= 0.000415
           avx_fma4_ChirpData_d6 0.000421 0.00000  test    mintime= 0.000415
           avx_fma4_ChirpData_d8 0.000422 0.00000  test    mintime= 0.000414
            avx_fma4_ChirpData_e 0.000468 0.00000  test    mintime= 0.000457
            avx_fma4_ChirpData_a 0.000419 0.00000  choice

   Third run,   32768 sample testing

                     v_ChirpData 0.001632 0.00000  test    mintime= 0.001590
                   fpu_ChirpData 0.000555 0.00000  test    mintime= 0.000539
             sse1_ChirpData_ak8e 0.000227 0.00000  test    mintime= 0.000222
              sse2_ChirpData_ak8 0.000145 0.00000  test    mintime= 0.000140
              sse3_ChirpData_ak8 0.000141 0.00000  test    mintime= 0.000137
                 avx_ChirpData_a 0.000120 0.00000  test    mintime= 0.000117
                 avx_ChirpData_b 0.000119 0.00000  test    mintime= 0.000116
                 avx_ChirpData_c 0.000129 0.00000  test    mintime= 0.000126
                 avx_ChirpData_d 0.000127 0.00000  test    mintime= 0.000123
                 avx_ChirpData_e 0.000120 0.00000  test    mintime= 0.000114
                 avx_ChirpData_f 0.000117 0.00000  test    mintime= 0.000113
                 avx_ChirpData_g 0.000114 0.00000  test    mintime= 0.000110
                 avx_ChirpData_h 0.000137 0.00000  test    mintime= 0.000133
                 avx_ChirpData_i 0.000115 0.00000  test    mintime= 0.000111
            avx_fma4_ChirpData_a 0.000105 0.00000  test    mintime= 0.000103
           avx_fma4_ChirpData_d4 0.000107 0.00000  test    mintime= 0.000104
           avx_fma4_ChirpData_d6 0.000106 0.00000  test    mintime= 0.000104
           avx_fma4_ChirpData_d8 0.000106 0.00000  test    mintime= 0.000104
            avx_fma4_ChirpData_e 0.000117 0.00000  test    mintime= 0.000114
            avx_fma4_ChirpData_a 0.000105 0.00000  choice

                   Test duration     7.39 seconds

Ftst_v7 completed successfully.

=========================================================
Ftst_v7_J55b_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------

   First run, 1048576 sample testing

                     v_ChirpData 0.052452 0.00000  test    mintime= 0.052096
                   fpu_ChirpData 0.018704 0.00000  test    mintime= 0.017854
             sse1_ChirpData_ak8e 0.007731 0.00000  test    mintime= 0.007256
              sse2_ChirpData_ak8 0.004579 0.00000  test    mintime= 0.004497
              sse3_ChirpData_ak8 0.004591 0.00000  test    mintime= 0.004549
                 avx_ChirpData_a 0.004131 0.00000  test    mintime= 0.003764
                 avx_ChirpData_b 0.004169 0.00000  test    mintime= 0.003948
                 avx_ChirpData_c 0.004434 0.00000  test    mintime= 0.003979
                 avx_ChirpData_d 0.004127 0.00000  test    mintime= 0.003956
                 avx_ChirpData_e 0.004005 0.00000  test    mintime= 0.003870
                 avx_ChirpData_f 0.003865 0.00000  test    mintime= 0.003655
                 avx_ChirpData_g 0.004126 0.00000  test    mintime= 0.003680
                 avx_ChirpData_h 0.004696 0.00000  test    mintime= 0.004399
                 avx_ChirpData_i 0.004318 0.00000  test    mintime= 0.003751
            avx_fma4_ChirpData_a 0.003619 0.00000  test    mintime= 0.003408
           avx_fma4_ChirpData_d4 0.003713 0.00000  test    mintime= 0.003264
           avx_fma4_ChirpData_d6 0.004176 0.00000  test    mintime= 0.003271
           avx_fma4_ChirpData_d8 0.003497 0.00000  test    mintime= 0.003206
            avx_fma4_ChirpData_e 0.003928 0.00000  test    mintime= 0.003882
           avx_fma4_ChirpData_d8 0.003497 0.00000  choice

  Second run,  131072 sample testing

                     v_ChirpData 0.006478 0.00000  test    mintime= 0.006380
                   fpu_ChirpData 0.002202 0.00000  test    mintime= 0.002172
             sse1_ChirpData_ak8e 0.000925 0.00000  test    mintime= 0.000902
              sse2_ChirpData_ak8 0.000579 0.00000  test    mintime= 0.000565
              sse3_ChirpData_ak8 0.000575 0.00000  test    mintime= 0.000565
                 avx_ChirpData_a 0.000478 0.00000  test    mintime= 0.000466
                 avx_ChirpData_b 0.000499 0.00000  test    mintime= 0.000487
                 avx_ChirpData_c 0.000498 0.00000  test    mintime= 0.000482
                 avx_ChirpData_d 0.000501 0.00000  test    mintime= 0.000490
                 avx_ChirpData_e 0.000482 0.00000  test    mintime= 0.000458
                 avx_ChirpData_f 0.000464 0.00000  test    mintime= 0.000453
                 avx_ChirpData_g 0.000452 0.00000  test    mintime= 0.000442
                 avx_ChirpData_h 0.000554 0.00000  test    mintime= 0.000542
                 avx_ChirpData_i 0.000459 0.00000  test    mintime= 0.000446
            avx_fma4_ChirpData_a 0.000431 0.00000  test    mintime= 0.000423
           avx_fma4_ChirpData_d4 0.000408 0.00000  test    mintime= 0.000399
           avx_fma4_ChirpData_d6 0.000406 0.00000  test    mintime= 0.000398
           avx_fma4_ChirpData_d8 0.000417 0.00000  test    mintime= 0.000398
            avx_fma4_ChirpData_e 0.000493 0.00000  test    mintime= 0.000478
           avx_fma4_ChirpData_d6 0.000406 0.00000  choice

   Third run,   32768 sample testing

                     v_ChirpData 0.001623 0.00000  test    mintime= 0.001589
                   fpu_ChirpData 0.000556 0.00000  test    mintime= 0.000544
             sse1_ChirpData_ak8e 0.000228 0.00000  test    mintime= 0.000222
              sse2_ChirpData_ak8 0.000146 0.00000  test    mintime= 0.000139
              sse3_ChirpData_ak8 0.000144 0.00000  test    mintime= 0.000141
                 avx_ChirpData_a 0.000118 0.00000  test    mintime= 0.000116
                 avx_ChirpData_b 0.000126 0.00000  test    mintime= 0.000122
                 avx_ChirpData_c 0.000123 0.00000  test    mintime= 0.000121
                 avx_ChirpData_d 0.000124 0.00000  test    mintime= 0.000122
                 avx_ChirpData_e 0.000117 0.00000  test    mintime= 0.000114
                 avx_ChirpData_f 0.000115 0.00000  test    mintime= 0.000113
                 avx_ChirpData_g 0.000118 0.00000  test    mintime= 0.000110
                 avx_ChirpData_h 0.000136 0.00000  test    mintime= 0.000133
                 avx_ChirpData_i 0.000114 0.00000  test    mintime= 0.000111
            avx_fma4_ChirpData_a 0.000108 0.00000  test    mintime= 0.000106
           avx_fma4_ChirpData_d4 0.000102 0.00000  test    mintime= 0.000099
           avx_fma4_ChirpData_d6 0.000101 0.00000  test    mintime= 0.000099
           avx_fma4_ChirpData_d8 0.000101 0.00000  test    mintime= 0.000099
            avx_fma4_ChirpData_e 0.000122 0.00000  test    mintime= 0.000119
           avx_fma4_ChirpData_d6 0.000101 0.00000  choice

                   Test duration     7.50 seconds

Ftst_v7 completed successfully.
Title: Re: AVX Optimized App Development
Post by: Claggy on 05 Jun 2012, 03:35:10 pm
C2D T8100 @2.1GHz (Boinc running one r558 AP task and one Gamma ray pulser search task, GPU suspended):

=========================================================
Ftst_v7_J55_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------

   First run, 1048576 sample testing

                     v_ChirpData 0.098244 0.00000  test    mintime= 0.095730
                   fpu_ChirpData 0.028331 0.00000  test    mintime= 0.027983
             sse1_ChirpData_ak8e 0.010573 0.00000  test    mintime= 0.010517
              sse2_ChirpData_ak8 0.009111 0.00000  test    mintime= 0.008991
              sse3_ChirpData_ak8 0.008971 0.00000  test    mintime= 0.008843
                 avx_ChirpData_a not supported by system
                 avx_ChirpData_b not supported by system
                 avx_ChirpData_c not supported by system
                 avx_ChirpData_d not supported by system
                 avx_ChirpData_e not supported by system
                 avx_ChirpData_f not supported by system
                 avx_ChirpData_g not supported by system
                 avx_ChirpData_h not supported by system
                 avx_ChirpData_i not supported by system
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
              sse3_ChirpData_ak8 0.008971 0.00000  choice

  Second run,  131072 sample testing

                     v_ChirpData 0.012057 0.00000  test    mintime= 0.011873
                   fpu_ChirpData 0.003536 0.00000  test    mintime= 0.003484
             sse1_ChirpData_ak8e 0.001318 0.00000  test    mintime= 0.001299
              sse2_ChirpData_ak8 0.001131 0.00000  test    mintime= 0.001103
              sse3_ChirpData_ak8 0.001104 0.00000  test    mintime= 0.001083
                 avx_ChirpData_a not supported by system
                 avx_ChirpData_b not supported by system
                 avx_ChirpData_c not supported by system
                 avx_ChirpData_d not supported by system
                 avx_ChirpData_e not supported by system
                 avx_ChirpData_f not supported by system
                 avx_ChirpData_g not supported by system
                 avx_ChirpData_h not supported by system
                 avx_ChirpData_i not supported by system
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
              sse3_ChirpData_ak8 0.001104 0.00000  choice

   Third run,   32768 sample testing

                     v_ChirpData 0.003022 0.00000  test    mintime= 0.002962
                   fpu_ChirpData 0.000889 0.00000  test    mintime= 0.000873
             sse1_ChirpData_ak8e 0.000331 0.00000  test    mintime= 0.000326
              sse2_ChirpData_ak8 0.000284 0.00000  test    mintime= 0.000276
              sse3_ChirpData_ak8 0.000280 0.00000  test    mintime= 0.000273
                 avx_ChirpData_a not supported by system
                 avx_ChirpData_b not supported by system
                 avx_ChirpData_c not supported by system
                 avx_ChirpData_d not supported by system
                 avx_ChirpData_e not supported by system
                 avx_ChirpData_f not supported by system
                 avx_ChirpData_g not supported by system
                 avx_ChirpData_h not supported by system
                 avx_ChirpData_i not supported by system
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
              sse3_ChirpData_ak8 0.000280 0.00000  choice

                   Test duration     6.89 seconds

Ftst_v7 completed successfully.
=========================================================
Ftst_v7_J55b_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------

   First run, 1048576 sample testing

                     v_ChirpData 0.096639 0.00000  test    mintime= 0.092699
                   fpu_ChirpData 0.029507 0.00000  test    mintime= 0.028389
             sse1_ChirpData_ak8e 0.010509 0.00000  test    mintime= 0.010354
              sse2_ChirpData_ak8 0.008984 0.00000  test    mintime= 0.008870
              sse3_ChirpData_ak8 0.009992 0.00000  test    mintime= 0.008673
                 avx_ChirpData_a not supported by system
                 avx_ChirpData_b not supported by system
                 avx_ChirpData_c not supported by system
                 avx_ChirpData_d not supported by system
                 avx_ChirpData_e not supported by system
                 avx_ChirpData_f not supported by system
                 avx_ChirpData_g not supported by system
                 avx_ChirpData_h not supported by system
                 avx_ChirpData_i not supported by system
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
              sse2_ChirpData_ak8 0.008984 0.00000  choice

  Second run,  131072 sample testing

                     v_ChirpData 0.011834 0.00000  test    mintime= 0.011402
                   fpu_ChirpData 0.003601 0.00000  test    mintime= 0.003493
             sse1_ChirpData_ak8e 0.001338 0.00000  test    mintime= 0.001299
              sse2_ChirpData_ak8 0.001167 0.00000  test    mintime= 0.001099
              sse3_ChirpData_ak8 0.001105 0.00000  test    mintime= 0.001076
                 avx_ChirpData_a not supported by system
                 avx_ChirpData_b not supported by system
                 avx_ChirpData_c not supported by system
                 avx_ChirpData_d not supported by system
                 avx_ChirpData_e not supported by system
                 avx_ChirpData_f not supported by system
                 avx_ChirpData_g not supported by system
                 avx_ChirpData_h not supported by system
                 avx_ChirpData_i not supported by system
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
              sse3_ChirpData_ak8 0.001105 0.00000  choice

   Third run,   32768 sample testing

                     v_ChirpData 0.003111 0.00000  test    mintime= 0.002848
                   fpu_ChirpData 0.000928 0.00000  test    mintime= 0.000882
             sse1_ChirpData_ak8e 0.000332 0.00000  test    mintime= 0.000325
              sse2_ChirpData_ak8 0.000290 0.00000  test    mintime= 0.000276
              sse3_ChirpData_ak8 0.000278 0.00000  test    mintime= 0.000271
                 avx_ChirpData_a not supported by system
                 avx_ChirpData_b not supported by system
                 avx_ChirpData_c not supported by system
                 avx_ChirpData_d not supported by system
                 avx_ChirpData_e not supported by system
                 avx_ChirpData_f not supported by system
                 avx_ChirpData_g not supported by system
                 avx_ChirpData_h not supported by system
                 avx_ChirpData_i not supported by system
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
              sse3_ChirpData_ak8 0.000278 0.00000  choice

                   Test duration     6.96 seconds

Ftst_v7 completed successfully.
=========================================================

C2D T8100 @2.1GHz (Boinc Suspended):

=========================================================
Ftst_v7_J55_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------

   First run, 1048576 sample testing

                     v_ChirpData 0.096623 0.00000  test    mintime= 0.095687
                   fpu_ChirpData 0.028555 0.00000  test    mintime= 0.028089
             sse1_ChirpData_ak8e 0.010543 0.00000  test    mintime= 0.010455
              sse2_ChirpData_ak8 0.008989 0.00000  test    mintime= 0.008898
              sse3_ChirpData_ak8 0.008841 0.00000  test    mintime= 0.008742
                 avx_ChirpData_a not supported by system
                 avx_ChirpData_b not supported by system
                 avx_ChirpData_c not supported by system
                 avx_ChirpData_d not supported by system
                 avx_ChirpData_e not supported by system
                 avx_ChirpData_f not supported by system
                 avx_ChirpData_g not supported by system
                 avx_ChirpData_h not supported by system
                 avx_ChirpData_i not supported by system
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
              sse3_ChirpData_ak8 0.008841 0.00000  choice

  Second run,  131072 sample testing

                     v_ChirpData 0.012088 0.00000  test    mintime= 0.011913
                   fpu_ChirpData 0.003532 0.00000  test    mintime= 0.003492
             sse1_ChirpData_ak8e 0.001320 0.00000  test    mintime= 0.001302
              sse2_ChirpData_ak8 0.001126 0.00000  test    mintime= 0.001097
              sse3_ChirpData_ak8 0.001097 0.00000  test    mintime= 0.001085
                 avx_ChirpData_a not supported by system
                 avx_ChirpData_b not supported by system
                 avx_ChirpData_c not supported by system
                 avx_ChirpData_d not supported by system
                 avx_ChirpData_e not supported by system
                 avx_ChirpData_f not supported by system
                 avx_ChirpData_g not supported by system
                 avx_ChirpData_h not supported by system
                 avx_ChirpData_i not supported by system
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
              sse3_ChirpData_ak8 0.001097 0.00000  choice

   Third run,   32768 sample testing

                     v_ChirpData 0.003020 0.00000  test    mintime= 0.002975
                   fpu_ChirpData 0.000886 0.00000  test    mintime= 0.000874
             sse1_ChirpData_ak8e 0.000332 0.00000  test    mintime= 0.000327
              sse2_ChirpData_ak8 0.000285 0.00000  test    mintime= 0.000276
              sse3_ChirpData_ak8 0.000278 0.00000  test    mintime= 0.000273
                 avx_ChirpData_a not supported by system
                 avx_ChirpData_b not supported by system
                 avx_ChirpData_c not supported by system
                 avx_ChirpData_d not supported by system
                 avx_ChirpData_e not supported by system
                 avx_ChirpData_f not supported by system
                 avx_ChirpData_g not supported by system
                 avx_ChirpData_h not supported by system
                 avx_ChirpData_i not supported by system
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
              sse3_ChirpData_ak8 0.000278 0.00000  choice

                   Test duration     6.59 seconds

Ftst_v7 completed successfully.
=========================================================
Ftst_v7_J55b_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------

   First run, 1048576 sample testing

                     v_ChirpData 0.092560 0.00000  test    mintime= 0.091904
                   fpu_ChirpData 0.028532 0.00000  test    mintime= 0.028326
             sse1_ChirpData_ak8e 0.010434 0.00000  test    mintime= 0.010371
              sse2_ChirpData_ak8 0.009024 0.00000  test    mintime= 0.008878
              sse3_ChirpData_ak8 0.008772 0.00000  test    mintime= 0.008631
                 avx_ChirpData_a not supported by system
                 avx_ChirpData_b not supported by system
                 avx_ChirpData_c not supported by system
                 avx_ChirpData_d not supported by system
                 avx_ChirpData_e not supported by system
                 avx_ChirpData_f not supported by system
                 avx_ChirpData_g not supported by system
                 avx_ChirpData_h not supported by system
                 avx_ChirpData_i not supported by system
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
              sse3_ChirpData_ak8 0.008772 0.00000  choice

  Second run,  131072 sample testing

                     v_ChirpData 0.011550 0.00000  test    mintime= 0.011407
                   fpu_ChirpData 0.003527 0.00000  test    mintime= 0.003495
             sse1_ChirpData_ak8e 0.001316 0.00000  test    mintime= 0.001298
              sse2_ChirpData_ak8 0.001129 0.00000  test    mintime= 0.001100
              sse3_ChirpData_ak8 0.001092 0.00000  test    mintime= 0.001077
                 avx_ChirpData_a not supported by system
                 avx_ChirpData_b not supported by system
                 avx_ChirpData_c not supported by system
                 avx_ChirpData_d not supported by system
                 avx_ChirpData_e not supported by system
                 avx_ChirpData_f not supported by system
                 avx_ChirpData_g not supported by system
                 avx_ChirpData_h not supported by system
                 avx_ChirpData_i not supported by system
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
              sse3_ChirpData_ak8 0.001092 0.00000  choice

   Third run,   32768 sample testing

                     v_ChirpData 0.002888 0.00000  test    mintime= 0.002849
                   fpu_ChirpData 0.000894 0.00000  test    mintime= 0.000883
             sse1_ChirpData_ak8e 0.000329 0.00000  test    mintime= 0.000323
              sse2_ChirpData_ak8 0.000285 0.00000  test    mintime= 0.000276
              sse3_ChirpData_ak8 0.000280 0.00000  test    mintime= 0.000271
                 avx_ChirpData_a not supported by system
                 avx_ChirpData_b not supported by system
                 avx_ChirpData_c not supported by system
                 avx_ChirpData_d not supported by system
                 avx_ChirpData_e not supported by system
                 avx_ChirpData_f not supported by system
                 avx_ChirpData_g not supported by system
                 avx_ChirpData_h not supported by system
                 avx_ChirpData_i not supported by system
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
              sse3_ChirpData_ak8 0.000280 0.00000  choice

                   Test duration     6.46 seconds

Ftst_v7 completed successfully.

Claggy
Title: Re: AVX Optimized App Development
Post by: KarVi on 05 Jun 2012, 03:50:20 pm
FX8150@4,5

J55 & J55B run right after another.

J55B seems faster. At least for the function chosen.

=========================================================
Ftst_v7_J55_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------

   First run, 1048576 sample testing

                     v_ChirpData 0.041397 0.00000  test    mintime= 0.041338
                   fpu_ChirpData 0.014045 0.00000  test    mintime= 0.014030
             sse1_ChirpData_ak8e 0.005757 0.00000  test    mintime= 0.005739
              sse2_ChirpData_ak8 0.003674 0.00000  test    mintime= 0.003653
              sse3_ChirpData_ak8 0.003617 0.00000  test    mintime= 0.003598
                 avx_ChirpData_a 0.003087 0.00000  test    mintime= 0.003052
                 avx_ChirpData_b 0.003056 0.00000  test    mintime= 0.003048
                 avx_ChirpData_c 0.003311 0.00000  test    mintime= 0.003298
                 avx_ChirpData_d 0.003241 0.00000  test    mintime= 0.003222
                 avx_ChirpData_e 0.003149 0.00000  test    mintime= 0.003139
                 avx_ChirpData_f 0.002986 0.00000  test    mintime= 0.002968
                 avx_ChirpData_g 0.002919 0.00000  test    mintime= 0.002893
                 avx_ChirpData_h 0.003529 0.00000  test    mintime= 0.003510
                 avx_ChirpData_i 0.003143 0.00000  test    mintime= 0.003078
            avx_fma4_ChirpData_a 0.002718 0.00000  test    mintime= 0.002693
           avx_fma4_ChirpData_d4 0.002741 0.00000  test    mintime= 0.002731
           avx_fma4_ChirpData_d6 0.002713 0.00000  test    mintime= 0.002688
           avx_fma4_ChirpData_d8 0.002703 0.00000  test    mintime= 0.002682
            avx_fma4_ChirpData_e 0.003032 0.00000  test    mintime= 0.003009
           avx_fma4_ChirpData_d8 0.002703 0.00000  choice

  Second run,  131072 sample testing

                     v_ChirpData 0.005124 0.00000  test    mintime= 0.005082
                   fpu_ChirpData 0.001754 0.00000  test    mintime= 0.001735
             sse1_ChirpData_ak8e 0.000720 0.00000  test    mintime= 0.000703
              sse2_ChirpData_ak8 0.000464 0.00000  test    mintime= 0.000451
              sse3_ChirpData_ak8 0.000455 0.00000  test    mintime= 0.000442
                 avx_ChirpData_a 0.000389 0.00000  test    mintime= 0.000376
                 avx_ChirpData_b 0.000385 0.00000  test    mintime= 0.000372
                 avx_ChirpData_c 0.000415 0.00000  test    mintime= 0.000404
                 avx_ChirpData_d 0.000407 0.00000  test    mintime= 0.000394
                 avx_ChirpData_e 0.000392 0.00000  test    mintime= 0.000366
                 avx_ChirpData_f 0.000376 0.00000  test    mintime= 0.000363
                 avx_ChirpData_g 0.000369 0.00000  test    mintime= 0.000353
                 avx_ChirpData_h 0.000445 0.00000  test    mintime= 0.000430
                 avx_ChirpData_i 0.000383 0.00000  test    mintime= 0.000365
            avx_fma4_ChirpData_a 0.000345 0.00000  test    mintime= 0.000332
           avx_fma4_ChirpData_d4 0.000348 0.00000  test    mintime= 0.000335
           avx_fma4_ChirpData_d6 0.000341 0.00000  test    mintime= 0.000332
           avx_fma4_ChirpData_d8 0.000339 0.00000  test    mintime= 0.000331
            avx_fma4_ChirpData_e 0.000388 0.00000  test    mintime= 0.000370
           avx_fma4_ChirpData_d8 0.000339 0.00000  choice

   Third run,   32768 sample testing

                     v_ChirpData 0.001281 0.00000  test    mintime= 0.001267
                   fpu_ChirpData 0.000438 0.00000  test    mintime= 0.000428
             sse1_ChirpData_ak8e 0.000180 0.00000  test    mintime= 0.000174
              sse2_ChirpData_ak8 0.000116 0.00000  test    mintime= 0.000112
              sse3_ChirpData_ak8 0.000114 0.00000  test    mintime= 0.000110
                 avx_ChirpData_a 0.000097 0.00000  test    mintime= 0.000094
                 avx_ChirpData_b 0.000097 0.00000  test    mintime= 0.000093
                 avx_ChirpData_c 0.000104 0.00000  test    mintime= 0.000101
                 avx_ChirpData_d 0.000102 0.00000  test    mintime= 0.000098
                 avx_ChirpData_e 0.000096 0.00000  test    mintime= 0.000091
                 avx_ChirpData_f 0.000094 0.00000  test    mintime= 0.000090
                 avx_ChirpData_g 0.000092 0.00000  test    mintime= 0.000088
                 avx_ChirpData_h 0.000111 0.00000  test    mintime= 0.000107
                 avx_ChirpData_i 0.000095 0.00000  test    mintime= 0.000090
            avx_fma4_ChirpData_a 0.000086 0.00000  test    mintime= 0.000083
           avx_fma4_ChirpData_d4 0.000087 0.00000  test    mintime= 0.000083
           avx_fma4_ChirpData_d6 0.000085 0.00000  test    mintime= 0.000083
           avx_fma4_ChirpData_d8 0.000085 0.00000  test    mintime= 0.000083
            avx_fma4_ChirpData_e 0.000097 0.00000  test    mintime= 0.000092
           avx_fma4_ChirpData_d8 0.000085 0.00000  choice

                   Test duration     5.92 seconds

Ftst_v7 completed successfully.
=========================================================
Ftst_v7_J55b_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------

   First run, 1048576 sample testing

                     v_ChirpData 0.041428 0.00000  test    mintime= 0.041376
                   fpu_ChirpData 0.014215 0.00000  test    mintime= 0.014206
             sse1_ChirpData_ak8e 0.005859 0.00000  test    mintime= 0.005808
              sse2_ChirpData_ak8 0.003686 0.00000  test    mintime= 0.003662
              sse3_ChirpData_ak8 0.003701 0.00000  test    mintime= 0.003684
                 avx_ChirpData_a 0.003048 0.00000  test    mintime= 0.003044
                 avx_ChirpData_b 0.003202 0.00000  test    mintime= 0.003189
                 avx_ChirpData_c 0.003214 0.00000  test    mintime= 0.003197
                 avx_ChirpData_d 0.003213 0.00000  test    mintime= 0.003196
                 avx_ChirpData_e 0.003146 0.00000  test    mintime= 0.003133
                 avx_ChirpData_f 0.002981 0.00000  test    mintime= 0.002969
                 avx_ChirpData_g 0.002924 0.00000  test    mintime= 0.002918
                 avx_ChirpData_h 0.003584 0.00000  test    mintime= 0.003552
                 avx_ChirpData_i 0.003092 0.00000  test    mintime= 0.003069
            avx_fma4_ChirpData_a 0.002813 0.00000  test    mintime= 0.002793
           avx_fma4_ChirpData_d4 0.002635 0.00000  test    mintime= 0.002621
           avx_fma4_ChirpData_d6 0.002613 0.00000  test    mintime= 0.002598
           avx_fma4_ChirpData_d8 0.002599 0.00000  test    mintime= 0.002583
            avx_fma4_ChirpData_e 0.003199 0.00000  test    mintime= 0.003187
           avx_fma4_ChirpData_d8 0.002599 0.00000  choice

  Second run,  131072 sample testing

                     v_ChirpData 0.005148 0.00000  test    mintime= 0.005099
                   fpu_ChirpData 0.001758 0.00000  test    mintime= 0.001728
             sse1_ChirpData_ak8e 0.000747 0.00000  test    mintime= 0.000720
              sse2_ChirpData_ak8 0.000469 0.00000  test    mintime= 0.000449
              sse3_ChirpData_ak8 0.000468 0.00000  test    mintime= 0.000454
                 avx_ChirpData_a 0.000385 0.00000  test    mintime= 0.000374
                 avx_ChirpData_b 0.000403 0.00000  test    mintime= 0.000390
                 avx_ChirpData_c 0.000404 0.00000  test    mintime= 0.000393
                 avx_ChirpData_d 0.000406 0.00000  test    mintime= 0.000393
                 avx_ChirpData_e 0.000392 0.00000  test    mintime= 0.000367
                 avx_ChirpData_f 0.000377 0.00000  test    mintime= 0.000363
                 avx_ChirpData_g 0.000370 0.00000  test    mintime= 0.000356
                 avx_ChirpData_h 0.000453 0.00000  test    mintime= 0.000440
                 avx_ChirpData_i 0.000386 0.00000  test    mintime= 0.000365
            avx_fma4_ChirpData_a 0.000354 0.00000  test    mintime= 0.000341
           avx_fma4_ChirpData_d4 0.000337 0.00000  test    mintime= 0.000324
           avx_fma4_ChirpData_d6 0.000330 0.00000  test    mintime= 0.000320
           avx_fma4_ChirpData_d8 0.000328 0.00000  test    mintime= 0.000318
            avx_fma4_ChirpData_e 0.000408 0.00000  test    mintime= 0.000394
           avx_fma4_ChirpData_d8 0.000328 0.00000  choice

   Third run,   32768 sample testing

                     v_ChirpData 0.001282 0.00000  test    mintime= 0.001267
                   fpu_ChirpData 0.000445 0.00000  test    mintime= 0.000435
             sse1_ChirpData_ak8e 0.000184 0.00000  test    mintime= 0.000176
              sse2_ChirpData_ak8 0.000118 0.00000  test    mintime= 0.000111
              sse3_ChirpData_ak8 0.000117 0.00000  test    mintime= 0.000113
                 avx_ChirpData_a 0.000096 0.00000  test    mintime= 0.000093
                 avx_ChirpData_b 0.000101 0.00000  test    mintime= 0.000097
                 avx_ChirpData_c 0.000101 0.00000  test    mintime= 0.000098
                 avx_ChirpData_d 0.000101 0.00000  test    mintime= 0.000098
                 avx_ChirpData_e 0.000096 0.00000  test    mintime= 0.000091
                 avx_ChirpData_f 0.000094 0.00000  test    mintime= 0.000090
                 avx_ChirpData_g 0.000092 0.00000  test    mintime= 0.000088
                 avx_ChirpData_h 0.000111 0.00000  test    mintime= 0.000107
                 avx_ChirpData_i 0.000095 0.00000  test    mintime= 0.000090
            avx_fma4_ChirpData_a 0.000089 0.00000  test    mintime= 0.000085
           avx_fma4_ChirpData_d4 0.000084 0.00000  test    mintime= 0.000080
           avx_fma4_ChirpData_d6 0.000084 0.00000  test    mintime= 0.000079
           avx_fma4_ChirpData_d8 0.000082 0.00000  test    mintime= 0.000079
            avx_fma4_ChirpData_e 0.000102 0.00000  test    mintime= 0.000096
           avx_fma4_ChirpData_d8 0.000082 0.00000  choice

                   Test duration     5.93 seconds

Ftst_v7 completed successfully.
Title: Re: AVX Optimized App Development
Post by: Claggy on 05 Jun 2012, 03:50:31 pm
i7-2600K @4.7GHz (Boinc running):

=========================================================
Ftst_v7_J55_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------

   First run, 1048576 sample testing

                     v_ChirpData 0.047451 0.00000  test    mintime= 0.046845
                   fpu_ChirpData 0.014815 0.00000  test    mintime= 0.014451
             sse1_ChirpData_ak8e 0.005853 0.00000  test    mintime= 0.005698
              sse2_ChirpData_ak8 0.004979 0.00000  test    mintime= 0.004540
              sse3_ChirpData_ak8 0.004948 0.00000  test    mintime= 0.004414
                 avx_ChirpData_a 0.002642 0.00000  test    mintime= 0.002258
                 avx_ChirpData_b 0.002542 0.00000  test    mintime= 0.002408
                 avx_ChirpData_c 0.002515 0.00000  test    mintime= 0.002437
                 avx_ChirpData_d 0.002440 0.00000  test    mintime= 0.002135
                 avx_ChirpData_e 0.002399 0.00000  test    mintime= 0.002115
                 avx_ChirpData_f 0.002568 0.00000  test    mintime= 0.002399
                 avx_ChirpData_g 0.002511 0.00000  test    mintime= 0.002384
                 avx_ChirpData_h 0.003148 0.00000  test    mintime= 0.002999
                 avx_ChirpData_i 0.002641 0.00000  test    mintime= 0.002399
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_e 0.002399 0.00000  choice

  Second run,  131072 sample testing

                     v_ChirpData 0.005898 0.00000  test    mintime= 0.005745
                   fpu_ChirpData 0.001973 0.00000  test    mintime= 0.001775
             sse1_ChirpData_ak8e 0.000767 0.00000  test    mintime= 0.000690
              sse2_ChirpData_ak8 0.000591 0.00000  test    mintime= 0.000532
              sse3_ChirpData_ak8 0.000589 0.00000  test    mintime= 0.000555
                 avx_ChirpData_a 0.000309 0.00000  test    mintime= 0.000267
                 avx_ChirpData_b 0.000317 0.00000  test    mintime= 0.000291
                 avx_ChirpData_c 0.000309 0.00000  test    mintime= 0.000289
                 avx_ChirpData_d 0.000291 0.00000  test    mintime= 0.000267
                 avx_ChirpData_e 0.000300 0.00000  test    mintime= 0.000255
                 avx_ChirpData_f 0.000314 0.00000  test    mintime= 0.000263
                 avx_ChirpData_g 0.000300 0.00000  test    mintime= 0.000282
                 avx_ChirpData_h 0.000350 0.00000  test    mintime= 0.000330
                 avx_ChirpData_i 0.000319 0.00000  test    mintime= 0.000284
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_d 0.000291 0.00000  choice

   Third run,   32768 sample testing

                     v_ChirpData 0.001485 0.00000  test    mintime= 0.001413
                   fpu_ChirpData 0.000482 0.00000  test    mintime= 0.000433
             sse1_ChirpData_ak8e 0.000183 0.00000  test    mintime= 0.000161
              sse2_ChirpData_ak8 0.000140 0.00000  test    mintime= 0.000135
              sse3_ChirpData_ak8 0.000136 0.00000  test    mintime= 0.000132
                 avx_ChirpData_a 0.000074 0.00000  test    mintime= 0.000069
                 avx_ChirpData_b 0.000075 0.00000  test    mintime= 0.000070
                 avx_ChirpData_c 0.000084 0.00000  test    mintime= 0.000070
                 avx_ChirpData_d 0.000069 0.00000  test    mintime= 0.000063
                 avx_ChirpData_e 0.000077 0.00000  test    mintime= 0.000066
                 avx_ChirpData_f 0.000076 0.00000  test    mintime= 0.000069
                 avx_ChirpData_g 0.000078 0.00000  test    mintime= 0.000069
                 avx_ChirpData_h 0.000099 0.00000  test    mintime= 0.000082
                 avx_ChirpData_i 0.000090 0.00000  test    mintime= 0.000070
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_d 0.000069 0.00000  choice

                   Test duration     5.19 seconds

Ftst_v7 completed successfully.
=========================================================
Ftst_v7_J55b_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------

   First run, 1048576 sample testing

                     v_ChirpData 0.054041 0.00000  test    mintime= 0.050972
                   fpu_ChirpData 0.017203 0.00000  test    mintime= 0.015304
             sse1_ChirpData_ak8e 0.006553 0.00000  test    mintime= 0.006175
              sse2_ChirpData_ak8 0.005535 0.00000  test    mintime= 0.005051
              sse3_ChirpData_ak8 0.005919 0.00000  test    mintime= 0.004259
                 avx_ChirpData_a 0.003052 0.00000  test    mintime= 0.002384
                 avx_ChirpData_b 0.002939 0.00000  test    mintime= 0.002507
                 avx_ChirpData_c 0.002462 0.00000  test    mintime= 0.002297
                 avx_ChirpData_d 0.002531 0.00000  test    mintime= 0.002170
                 avx_ChirpData_e 0.002873 0.00000  test    mintime= 0.002117
                 avx_ChirpData_f 0.002837 0.00000  test    mintime= 0.002500
                 avx_ChirpData_g 0.003056 0.00000  test    mintime= 0.002652
                 avx_ChirpData_h 0.003771 0.00000  test    mintime= 0.002864
                 avx_ChirpData_i 0.003058 0.00000  test    mintime= 0.002548
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_c 0.002462 0.00000  choice

  Second run,  131072 sample testing

                     v_ChirpData 0.005878 0.00000  test    mintime= 0.005697
                   fpu_ChirpData 0.001889 0.00000  test    mintime= 0.001762
             sse1_ChirpData_ak8e 0.000727 0.00000  test    mintime= 0.000707
              sse2_ChirpData_ak8 0.000573 0.00000  test    mintime= 0.000549
              sse3_ChirpData_ak8 0.000579 0.00000  test    mintime= 0.000538
                 avx_ChirpData_a 0.000326 0.00000  test    mintime= 0.000280
                 avx_ChirpData_b 0.000340 0.00000  test    mintime= 0.000290
                 avx_ChirpData_c 0.000314 0.00000  test    mintime= 0.000277
                 avx_ChirpData_d 0.000323 0.00000  test    mintime= 0.000267
                 avx_ChirpData_e 0.000317 0.00000  test    mintime= 0.000265
                 avx_ChirpData_f 0.000349 0.00000  test    mintime= 0.000267
                 avx_ChirpData_g 0.000351 0.00000  test    mintime= 0.000236
                 avx_ChirpData_h 0.000391 0.00000  test    mintime= 0.000330
                 avx_ChirpData_i 0.000360 0.00000  test    mintime= 0.000286
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_c 0.000314 0.00000  choice

   Third run,   32768 sample testing

                     v_ChirpData 0.001654 0.00000  test    mintime= 0.001408
                   fpu_ChirpData 0.000548 0.00000  test    mintime= 0.000434
             sse1_ChirpData_ak8e 0.000209 0.00000  test    mintime= 0.000169
              sse2_ChirpData_ak8 0.000162 0.00000  test    mintime= 0.000130
              sse3_ChirpData_ak8 0.000193 0.00000  test    mintime= 0.000129
                 avx_ChirpData_a 0.000097 0.00000  test    mintime= 0.000066
                 avx_ChirpData_b 0.000091 0.00000  test    mintime= 0.000071
                 avx_ChirpData_c 0.000087 0.00000  test    mintime= 0.000068
                 avx_ChirpData_d 0.000084 0.00000  test    mintime= 0.000064
                 avx_ChirpData_e 0.000083 0.00000  test    mintime= 0.000062
                 avx_ChirpData_f 0.000094 0.00000  test    mintime= 0.000067
                 avx_ChirpData_g 0.000084 0.00000  test    mintime= 0.000066
                 avx_ChirpData_h 0.000120 0.00000  test    mintime= 0.000081
                 avx_ChirpData_i 0.000095 0.00000  test    mintime= 0.000069
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_e 0.000083 0.00000  choice

                   Test duration     5.73 seconds

Ftst_v7 completed successfully.
=========================================================

i7-2600K @4.7GHz (Boinc suspended):

=========================================================
Ftst_v7_J55_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------

   First run, 1048576 sample testing

                     v_ChirpData 0.041483 0.00000  test    mintime= 0.041319
                   fpu_ChirpData 0.008740 0.00000  test    mintime= 0.008688
             sse1_ChirpData_ak8e 0.004215 0.00000  test    mintime= 0.004204
              sse2_ChirpData_ak8 0.003157 0.00000  test    mintime= 0.003142
              sse3_ChirpData_ak8 0.003004 0.00000  test    mintime= 0.002970
                 avx_ChirpData_a 0.001475 0.00000  test    mintime= 0.001471
                 avx_ChirpData_b 0.001646 0.00000  test    mintime= 0.001642
                 avx_ChirpData_c 0.001488 0.00000  test    mintime= 0.001483
                 avx_ChirpData_d 0.001381 0.00000  test    mintime= 0.001378
                 avx_ChirpData_e 0.001539 0.00000  test    mintime= 0.001533
                 avx_ChirpData_f 0.001590 0.00000  test    mintime= 0.001577
                 avx_ChirpData_g 0.001634 0.00000  test    mintime= 0.001630
                 avx_ChirpData_h 0.002023 0.00000  test    mintime= 0.002003
                 avx_ChirpData_i 0.001724 0.00000  test    mintime= 0.001708
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_d 0.001381 0.00000  choice

  Second run,  131072 sample testing

                     v_ChirpData 0.005173 0.00000  test    mintime= 0.005146
                   fpu_ChirpData 0.001093 0.00000  test    mintime= 0.001082
             sse1_ChirpData_ak8e 0.000530 0.00000  test    mintime= 0.000523
              sse2_ChirpData_ak8 0.000389 0.00000  test    mintime= 0.000385
              sse3_ChirpData_ak8 0.000357 0.00000  test    mintime= 0.000354
                 avx_ChirpData_a 0.000183 0.00000  test    mintime= 0.000182
                 avx_ChirpData_b 0.000202 0.00000  test    mintime= 0.000199
                 avx_ChirpData_c 0.000186 0.00000  test    mintime= 0.000184
                 avx_ChirpData_d 0.000172 0.00000  test    mintime= 0.000171
                 avx_ChirpData_e 0.000192 0.00000  test    mintime= 0.000191
                 avx_ChirpData_f 0.000198 0.00000  test    mintime= 0.000196
                 avx_ChirpData_g 0.000204 0.00000  test    mintime= 0.000203
                 avx_ChirpData_h 0.000249 0.00000  test    mintime= 0.000244
                 avx_ChirpData_i 0.000204 0.00000  test    mintime= 0.000201
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_d 0.000172 0.00000  choice

   Third run,   32768 sample testing

                     v_ChirpData 0.001295 0.00000  test    mintime= 0.001286
                   fpu_ChirpData 0.000272 0.00000  test    mintime= 0.000271
             sse1_ChirpData_ak8e 0.000132 0.00000  test    mintime= 0.000131
              sse2_ChirpData_ak8 0.000100 0.00000  test    mintime= 0.000096
              sse3_ChirpData_ak8 0.000094 0.00000  test    mintime= 0.000092
                 avx_ChirpData_a 0.000046 0.00000  test    mintime= 0.000046
                 avx_ChirpData_b 0.000052 0.00000  test    mintime= 0.000051
                 avx_ChirpData_c 0.000046 0.00000  test    mintime= 0.000046
                 avx_ChirpData_d 0.000043 0.00000  test    mintime= 0.000043
                 avx_ChirpData_e 0.000048 0.00000  test    mintime= 0.000047
                 avx_ChirpData_f 0.000050 0.00000  test    mintime= 0.000049
                 avx_ChirpData_g 0.000051 0.00000  test    mintime= 0.000051
                 avx_ChirpData_h 0.000063 0.00000  test    mintime= 0.000061
                 avx_ChirpData_i 0.000051 0.00000  test    mintime= 0.000050
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_d 0.000043 0.00000  choice

                   Test duration     3.91 seconds

Ftst_v7 completed successfully.
=========================================================
Ftst_v7_J55b_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------

   First run, 1048576 sample testing

                     v_ChirpData 0.042061 0.00000  test    mintime= 0.041816
                   fpu_ChirpData 0.008672 0.00000  test    mintime= 0.008649
             sse1_ChirpData_ak8e 0.004197 0.00000  test    mintime= 0.004188
              sse2_ChirpData_ak8 0.003140 0.00000  test    mintime= 0.003130
              sse3_ChirpData_ak8 0.002954 0.00000  test    mintime= 0.002916
                 avx_ChirpData_a 0.001466 0.00000  test    mintime= 0.001461
                 avx_ChirpData_b 0.001674 0.00000  test    mintime= 0.001668
                 avx_ChirpData_c 0.001460 0.00000  test    mintime= 0.001457
                 avx_ChirpData_d 0.001384 0.00000  test    mintime= 0.001373
                 avx_ChirpData_e 0.001540 0.00000  test    mintime= 0.001528
                 avx_ChirpData_f 0.001588 0.00000  test    mintime= 0.001572
                 avx_ChirpData_g 0.001635 0.00000  test    mintime= 0.001622
                 avx_ChirpData_h 0.002014 0.00000  test    mintime= 0.002000
                 avx_ChirpData_i 0.001710 0.00000  test    mintime= 0.001707
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_d 0.001384 0.00000  choice

  Second run,  131072 sample testing

                     v_ChirpData 0.005250 0.00000  test    mintime= 0.005216
                   fpu_ChirpData 0.001084 0.00000  test    mintime= 0.001073
             sse1_ChirpData_ak8e 0.000528 0.00000  test    mintime= 0.000523
              sse2_ChirpData_ak8 0.000394 0.00000  test    mintime= 0.000390
              sse3_ChirpData_ak8 0.000369 0.00000  test    mintime= 0.000365
                 avx_ChirpData_a 0.000183 0.00000  test    mintime= 0.000182
                 avx_ChirpData_b 0.000209 0.00000  test    mintime= 0.000207
                 avx_ChirpData_c 0.000183 0.00000  test    mintime= 0.000181
                 avx_ChirpData_d 0.000172 0.00000  test    mintime= 0.000170
                 avx_ChirpData_e 0.000191 0.00000  test    mintime= 0.000189
                 avx_ChirpData_f 0.000202 0.00000  test    mintime= 0.000195
                 avx_ChirpData_g 0.000202 0.00000  test    mintime= 0.000201
                 avx_ChirpData_h 0.000251 0.00000  test    mintime= 0.000246
                 avx_ChirpData_i 0.000205 0.00000  test    mintime= 0.000201
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_d 0.000172 0.00000  choice

   Third run,   32768 sample testing

                     v_ChirpData 0.001308 0.00000  test    mintime= 0.001303
                   fpu_ChirpData 0.000273 0.00000  test    mintime= 0.000268
             sse1_ChirpData_ak8e 0.000131 0.00000  test    mintime= 0.000130
              sse2_ChirpData_ak8 0.000098 0.00000  test    mintime= 0.000097
              sse3_ChirpData_ak8 0.000092 0.00000  test    mintime= 0.000090
                 avx_ChirpData_a 0.000046 0.00000  test    mintime= 0.000045
                 avx_ChirpData_b 0.000052 0.00000  test    mintime= 0.000052
                 avx_ChirpData_c 0.000046 0.00000  test    mintime= 0.000045
                 avx_ChirpData_d 0.000043 0.00000  test    mintime= 0.000042
                 avx_ChirpData_e 0.000049 0.00000  test    mintime= 0.000046
                 avx_ChirpData_f 0.000049 0.00000  test    mintime= 0.000047
                 avx_ChirpData_g 0.000051 0.00000  test    mintime= 0.000050
                 avx_ChirpData_h 0.000062 0.00000  test    mintime= 0.000060
                 avx_ChirpData_i 0.000050 0.00000  test    mintime= 0.000049
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_d 0.000043 0.00000  choice

                   Test duration     3.93 seconds

Ftst_v7 completed successfully.

Claggy
Title: Re: AVX Optimized App Development
Post by: arkayn on 05 Jun 2012, 04:05:14 pm
i3-2120
BOINC Idle
=========================================================
Ftst_v7_J55_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------

   First run, 1048576 sample testing

                     v_ChirpData 0.059010 0.00000  test    mintime= 0.058863
                   fpu_ChirpData 0.012374 0.00000  test    mintime= 0.012352
             sse1_ChirpData_ak8e 0.005708 0.00000  test    mintime= 0.005699
              sse2_ChirpData_ak8 0.004178 0.00000  test    mintime= 0.004165
              sse3_ChirpData_ak8 0.004003 0.00000  test    mintime= 0.003996
                 avx_ChirpData_a 0.002079 0.00000  test    mintime= 0.002073
                 avx_ChirpData_b 0.002033 0.00000  test    mintime= 0.002031
                 avx_ChirpData_c 0.002100 0.00000  test    mintime= 0.002097
                 avx_ChirpData_d 0.001937 0.00000  test    mintime= 0.001931
                 avx_ChirpData_e 0.001925 0.00000  test    mintime= 0.001917
                 avx_ChirpData_f 0.002049 0.00000  test    mintime= 0.002045
                 avx_ChirpData_g 0.002070 0.00000  test    mintime= 0.002067
                 avx_ChirpData_h 0.003057 0.00000  test    mintime= 0.002754
                 avx_ChirpData_i 0.002221 0.00000  test    mintime= 0.002213
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_e 0.001925 0.00000  choice

  Second run,  131072 sample testing

                     v_ChirpData 0.007356 0.00000  test    mintime= 0.007338
                   fpu_ChirpData 0.001546 0.00000  test    mintime= 0.001540
             sse1_ChirpData_ak8e 0.000999 0.00000  test    mintime= 0.000712
              sse2_ChirpData_ak8 0.000790 0.00000  test    mintime= 0.000719
              sse3_ChirpData_ak8 0.000540 0.00000  test    mintime= 0.000498
                 avx_ChirpData_a 0.000260 0.00000  test    mintime= 0.000258
                 avx_ChirpData_b 0.000257 0.00000  test    mintime= 0.000253
                 avx_ChirpData_c 0.000263 0.00000  test    mintime= 0.000262
                 avx_ChirpData_d 0.000243 0.00000  test    mintime= 0.000240
                 avx_ChirpData_e 0.000272 0.00000  test    mintime= 0.000270
                 avx_ChirpData_f 0.000279 0.00000  test    mintime= 0.000270
                 avx_ChirpData_g 0.000278 0.00000  test    mintime= 0.000258
                 avx_ChirpData_h 0.000329 0.00000  test    mintime= 0.000322
                 avx_ChirpData_i 0.000272 0.00000  test    mintime= 0.000267
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_d 0.000243 0.00000  choice

   Third run,   32768 sample testing

                     v_ChirpData 0.001841 0.00000  test    mintime= 0.001834
                   fpu_ChirpData 0.000568 0.00000  test    mintime= 0.000385
             sse1_ChirpData_ak8e 0.000186 0.00000  test    mintime= 0.000184
              sse2_ChirpData_ak8 0.000139 0.00000  test    mintime= 0.000130
              sse3_ChirpData_ak8 0.000125 0.00000  test    mintime= 0.000124
                 avx_ChirpData_a 0.000065 0.00000  test    mintime= 0.000064
                 avx_ChirpData_b 0.000066 0.00000  test    mintime= 0.000063
                 avx_ChirpData_c 0.000066 0.00000  test    mintime= 0.000065
                 avx_ChirpData_d 0.000061 0.00000  test    mintime= 0.000060
                 avx_ChirpData_e 0.000060 0.00000  test    mintime= 0.000059
                 avx_ChirpData_f 0.000064 0.00000  test    mintime= 0.000063
                 avx_ChirpData_g 0.000065 0.00000  test    mintime= 0.000064
                 avx_ChirpData_h 0.000081 0.00000  test    mintime= 0.000079
                 avx_ChirpData_i 0.000065 0.00000  test    mintime= 0.000064
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_e 0.000060 0.00000  choice

                   Test duration     5.71 seconds

Ftst_v7 completed successfully.

=========================================================
Ftst_v7_J55b_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------

   First run, 1048576 sample testing

                     v_ChirpData 0.059795 0.00000  test    mintime= 0.059657
                   fpu_ChirpData 0.012305 0.00000  test    mintime= 0.012282
             sse1_ChirpData_ak8e 0.005647 0.00000  test    mintime= 0.005621
              sse2_ChirpData_ak8 0.004166 0.00000  test    mintime= 0.004149
              sse3_ChirpData_ak8 0.003970 0.00000  test    mintime= 0.003961
                 avx_ChirpData_a 0.002058 0.00000  test    mintime= 0.002057
                 avx_ChirpData_b 0.002140 0.00000  test    mintime= 0.002136
                 avx_ChirpData_c 0.002060 0.00000  test    mintime= 0.002053
                 avx_ChirpData_d 0.001930 0.00000  test    mintime= 0.001926
                 avx_ChirpData_e 0.001920 0.00000  test    mintime= 0.001914
                 avx_ChirpData_f 0.002045 0.00000  test    mintime= 0.002035
                 avx_ChirpData_g 0.002084 0.00000  test    mintime= 0.002066
                 avx_ChirpData_h 0.002646 0.00000  test    mintime= 0.002640
                 avx_ChirpData_i 0.002205 0.00000  test    mintime= 0.002198
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_e 0.001920 0.00000  choice

  Second run,  131072 sample testing

                     v_ChirpData 0.007463 0.00000  test    mintime= 0.007437
                   fpu_ChirpData 0.001579 0.00000  test    mintime= 0.001523
             sse1_ChirpData_ak8e 0.000708 0.00000  test    mintime= 0.000706
              sse2_ChirpData_ak8 0.000546 0.00000  test    mintime= 0.000518
              sse3_ChirpData_ak8 0.000496 0.00000  test    mintime= 0.000494
                 avx_ChirpData_a 0.000258 0.00000  test    mintime= 0.000256
                 avx_ChirpData_b 0.000269 0.00000  test    mintime= 0.000267
                 avx_ChirpData_c 0.000257 0.00000  test    mintime= 0.000256
                 avx_ChirpData_d 0.000242 0.00000  test    mintime= 0.000240
                 avx_ChirpData_e 0.000241 0.00000  test    mintime= 0.000240
                 avx_ChirpData_f 0.000257 0.00000  test    mintime= 0.000255
                 avx_ChirpData_g 0.000260 0.00000  test    mintime= 0.000259
                 avx_ChirpData_h 0.000329 0.00000  test    mintime= 0.000322
                 avx_ChirpData_i 0.000271 0.00000  test    mintime= 0.000267
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_e 0.000241 0.00000  choice

   Third run,   32768 sample testing

                     v_ChirpData 0.001862 0.00000  test    mintime= 0.001858
                   fpu_ChirpData 0.000384 0.00000  test    mintime= 0.000383
             sse1_ChirpData_ak8e 0.000176 0.00000  test    mintime= 0.000175
              sse2_ChirpData_ak8 0.000130 0.00000  test    mintime= 0.000129
              sse3_ChirpData_ak8 0.000124 0.00000  test    mintime= 0.000123
                 avx_ChirpData_a 0.000064 0.00000  test    mintime= 0.000064
                 avx_ChirpData_b 0.000067 0.00000  test    mintime= 0.000066
                 avx_ChirpData_c 0.000064 0.00000  test    mintime= 0.000064
                 avx_ChirpData_d 0.000060 0.00000  test    mintime= 0.000060
                 avx_ChirpData_e 0.000060 0.00000  test    mintime= 0.000059
                 avx_ChirpData_f 0.000064 0.00000  test    mintime= 0.000063
                 avx_ChirpData_g 0.000065 0.00000  test    mintime= 0.000064
                 avx_ChirpData_h 0.000080 0.00000  test    mintime= 0.000079
                 avx_ChirpData_i 0.000065 0.00000  test    mintime= 0.000064
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_e 0.000060 0.00000  choice

                   Test duration     5.54 seconds

Ftst_v7 completed successfully.
Title: Re: AVX Optimized App Development
Post by: Richard Haselgrove on 30 Aug 2012, 05:31:57 am
i7-3770K, overclocked @ 4.5 GHz. BOINC busy, 7 CPU tasks running, plus GPU (one of the CPU tasks is Test4Theory running in a Vbox VM with vitualisation BIOS support enabled)


=========================================================
Ftst_v7_J52_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.005425 0.00000  test
                   fpu_ChirpData 0.015131 0.00000  test
               fpu_opt_ChirpData 0.005087 0.00000  test
             sse1_ChirpData_ak8e 0.005824 0.00000  test
              sse2_ChirpData_ak8 0.004417 0.00000  test
              sse3_ChirpData_ak8 0.004327 0.00000  test
                 avx_ChirpData_a 0.002338 0.00000  test
                 avx_ChirpData_b 0.002388 0.00000  test
                 avx_ChirpData_c 0.002360 0.00000  test
                 avx_ChirpData_d 0.002191 0.00000  test
                 avx_ChirpData_e 0.002240 0.00000  test
                 avx_ChirpData_f 0.002379 0.00000  test
                 avx_ChirpData_g 0.002397 0.00000  test
                 avx_ChirpData_h 0.002905 0.00000  test
                 avx_ChirpData_i 0.002537 0.00000  test
            avx_fma4_ChirpData_a not supported by system
            avx_fma4_ChirpData_b not supported by system
            avx_fma4_ChirpData_c not supported by system
                 avx_ChirpData_d 0.002191 0.00000  choice

            Second run

                     v_ChirpData 0.005390 0.00000  test
                   fpu_ChirpData 0.015163 0.00000  test
               fpu_opt_ChirpData 0.005582 0.00000  test
             sse1_ChirpData_ak8e 0.005794 0.00000  test
              sse2_ChirpData_ak8 0.004409 0.00000  test
              sse3_ChirpData_ak8 0.004267 0.00000  test
                 avx_ChirpData_a 0.002343 0.00000  test
                 avx_ChirpData_b 0.002378 0.00000  test
                 avx_ChirpData_c 0.002384 0.00000  test
                 avx_ChirpData_d 0.002185 0.00000  test
                 avx_ChirpData_e 0.002244 0.00000  test
                 avx_ChirpData_f 0.002384 0.00000  test
                 avx_ChirpData_g 0.002392 0.00000  test
                 avx_ChirpData_h 0.002887 0.00000  test
                 avx_ChirpData_i 0.002537 0.00000  test
            avx_fma4_ChirpData_a not supported by system
            avx_fma4_ChirpData_b not supported by system
            avx_fma4_ChirpData_c not supported by system
                 avx_ChirpData_d 0.002185 0.00000  choice

            Third run

                     v_ChirpData 0.005380 0.00000  test
                   fpu_ChirpData 0.015293 0.00000  test
               fpu_opt_ChirpData 0.005064 0.00000  test
             sse1_ChirpData_ak8e 0.005767 0.00000  test
              sse2_ChirpData_ak8 0.004404 0.00000  test
              sse3_ChirpData_ak8 0.004257 0.00000  test
                 avx_ChirpData_a 0.002327 0.00000  test
                 avx_ChirpData_b 0.002383 0.00000  test
                 avx_ChirpData_c 0.002373 0.00000  test
                 avx_ChirpData_d 0.002207 0.00000  test
                 avx_ChirpData_e 0.002235 0.00000  test
                 avx_ChirpData_f 0.002372 0.00000  test
                 avx_ChirpData_g 0.002390 0.00000  test
                 avx_ChirpData_h 0.002896 0.00000  test
                 avx_ChirpData_i 0.002535 0.00000  test
            avx_fma4_ChirpData_a not supported by system
            avx_fma4_ChirpData_b not supported by system
            avx_fma4_ChirpData_c not supported by system
                 avx_ChirpData_d 0.002207 0.00000  choice

                   Test duration     6.94 seconds

Ftst_v7 completed successfully.


=========================================================
Ftst_v7_J55_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------

   First run, 1048576 sample testing

                     v_ChirpData 0.047948 0.00000  test    mintime= 0.047722
                   fpu_ChirpData 0.014260 0.00000  test    mintime= 0.014089
             sse1_ChirpData_ak8e 0.005242 0.00000  test    mintime= 0.005155
              sse2_ChirpData_ak8 0.003972 0.00000  test    mintime= 0.003925
              sse3_ChirpData_ak8 0.003851 0.00000  test    mintime= 0.003782
                 avx_ChirpData_a 0.002135 0.00000  test    mintime= 0.002108
                 avx_ChirpData_b 0.002230 0.00000  test    mintime= 0.002208
                 avx_ChirpData_c 0.002190 0.00000  test    mintime= 0.002147
                 avx_ChirpData_d 0.002032 0.00000  test    mintime= 0.002010
                 avx_ChirpData_e 0.002447 0.00000  test    mintime= 0.002107
                 avx_ChirpData_f 0.002229 0.00000  test    mintime= 0.002205
                 avx_ChirpData_g 0.002269 0.00000  test    mintime= 0.002219
                 avx_ChirpData_h 0.002786 0.00000  test    mintime= 0.002702
                 avx_ChirpData_i 0.002398 0.00000  test    mintime= 0.002370
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_d 0.002032 0.00000  choice

  Second run,  131072 sample testing

                     v_ChirpData 0.005989 0.00000  test    mintime= 0.005882
                   fpu_ChirpData 0.001779 0.00000  test    mintime= 0.001747
             sse1_ChirpData_ak8e 0.000652 0.00000  test    mintime= 0.000634
              sse2_ChirpData_ak8 0.000498 0.00000  test    mintime= 0.000483
              sse3_ChirpData_ak8 0.000480 0.00000  test    mintime= 0.000463
                 avx_ChirpData_a 0.000267 0.00000  test    mintime= 0.000258
                 avx_ChirpData_b 0.000280 0.00000  test    mintime= 0.000269
                 avx_ChirpData_c 0.000271 0.00000  test    mintime= 0.000261
                 avx_ChirpData_d 0.000257 0.00000  test    mintime= 0.000247
                 avx_ChirpData_e 0.000265 0.00000  test    mintime= 0.000256
                 avx_ChirpData_f 0.000277 0.00000  test    mintime= 0.000269
                 avx_ChirpData_g 0.000281 0.00000  test    mintime= 0.000273
                 avx_ChirpData_h 0.000334 0.00000  test    mintime= 0.000325
                 avx_ChirpData_i 0.000290 0.00000  test    mintime= 0.000278
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_d 0.000257 0.00000  choice

   Third run,   32768 sample testing

                     v_ChirpData 0.001507 0.00000  test    mintime= 0.001459
                   fpu_ChirpData 0.000445 0.00000  test    mintime= 0.000426
             sse1_ChirpData_ak8e 0.000164 0.00000  test    mintime= 0.000156
              sse2_ChirpData_ak8 0.000124 0.00000  test    mintime= 0.000120
              sse3_ChirpData_ak8 0.000120 0.00000  test    mintime= 0.000113
                 avx_ChirpData_a 0.000067 0.00000  test    mintime= 0.000061
                 avx_ChirpData_b 0.000070 0.00000  test    mintime= 0.000066
                 avx_ChirpData_c 0.000068 0.00000  test    mintime= 0.000063
                 avx_ChirpData_d 0.000064 0.00000  test    mintime= 0.000060
                 avx_ChirpData_e 0.000066 0.00000  test    mintime= 0.000063
                 avx_ChirpData_f 0.000070 0.00000  test    mintime= 0.000065
                 avx_ChirpData_g 0.000070 0.00000  test    mintime= 0.000066
                 avx_ChirpData_h 0.000083 0.00000  test    mintime= 0.000079
                 avx_ChirpData_i 0.000070 0.00000  test    mintime= 0.000066
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_d 0.000064 0.00000  choice

                   Test duration     4.80 seconds

Ftst_v7 completed successfully.


=========================================================
Ftst_v7_J55b_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------

   First run, 1048576 sample testing

                     v_ChirpData 0.047290 0.00000  test    mintime= 0.047191
                   fpu_ChirpData 0.014682 0.00000  test    mintime= 0.014559
             sse1_ChirpData_ak8e 0.005332 0.00000  test    mintime= 0.005305
              sse2_ChirpData_ak8 0.004051 0.00000  test    mintime= 0.004023
              sse3_ChirpData_ak8 0.003886 0.00000  test    mintime= 0.003859
                 avx_ChirpData_a 0.002146 0.00000  test    mintime= 0.002131
                 avx_ChirpData_b 0.002359 0.00000  test    mintime= 0.002343
                 avx_ChirpData_c 0.002138 0.00000  test    mintime= 0.002112
                 avx_ChirpData_d 0.002043 0.00000  test    mintime= 0.002030
                 avx_ChirpData_e 0.002136 0.00000  test    mintime= 0.002126
                 avx_ChirpData_f 0.002251 0.00000  test    mintime= 0.002233
                 avx_ChirpData_g 0.002282 0.00000  test    mintime= 0.002265
                 avx_ChirpData_h 0.002752 0.00000  test    mintime= 0.002736
                 avx_ChirpData_i 0.002398 0.00000  test    mintime= 0.002387
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_d 0.002043 0.00000  choice

  Second run,  131072 sample testing

                     v_ChirpData 0.006023 0.00000  test    mintime= 0.005882
                   fpu_ChirpData 0.001809 0.00000  test    mintime= 0.001781
             sse1_ChirpData_ak8e 0.000665 0.00000  test    mintime= 0.000647
              sse2_ChirpData_ak8 0.000514 0.00000  test    mintime= 0.000506
              sse3_ChirpData_ak8 0.000495 0.00000  test    mintime= 0.000471
                 avx_ChirpData_a 0.000274 0.00000  test    mintime= 0.000268
                 avx_ChirpData_b 0.000296 0.00000  test    mintime= 0.000291
                 avx_ChirpData_c 0.000274 0.00000  test    mintime= 0.000267
                 avx_ChirpData_d 0.000262 0.00000  test    mintime= 0.000255
                 avx_ChirpData_e 0.000269 0.00000  test    mintime= 0.000265
                 avx_ChirpData_f 0.000281 0.00000  test    mintime= 0.000278
                 avx_ChirpData_g 0.000285 0.00000  test    mintime= 0.000281
                 avx_ChirpData_h 0.000337 0.00000  test    mintime= 0.000331
                 avx_ChirpData_i 0.000290 0.00000  test    mintime= 0.000283
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_d 0.000262 0.00000  choice

   Third run,   32768 sample testing

                     v_ChirpData 0.001537 0.00000  test    mintime= 0.001465
                   fpu_ChirpData 0.000451 0.00000  test    mintime= 0.000441
             sse1_ChirpData_ak8e 0.000166 0.00000  test    mintime= 0.000162
              sse2_ChirpData_ak8 0.000126 0.00000  test    mintime= 0.000122
              sse3_ChirpData_ak8 0.000158 0.00000  test    mintime= 0.000119
                 avx_ChirpData_a 0.000067 0.00000  test    mintime= 0.000066
                 avx_ChirpData_b 0.000073 0.00000  test    mintime= 0.000072
                 avx_ChirpData_c 0.000067 0.00000  test    mintime= 0.000064
                 avx_ChirpData_d 0.000063 0.00000  test    mintime= 0.000062
                 avx_ChirpData_e 0.000067 0.00000  test    mintime= 0.000064
                 avx_ChirpData_f 0.000070 0.00000  test    mintime= 0.000068
                 avx_ChirpData_g 0.000071 0.00000  test    mintime= 0.000070
                 avx_ChirpData_h 0.000090 0.00000  test    mintime= 0.000081
                 avx_ChirpData_i 0.000072 0.00000  test    mintime= 0.000068
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_d 0.000063 0.00000  choice

                   Test duration     4.81 seconds

Ftst_v7 completed successfully.
Title: Re: AVX Optimized App Development
Post by: Richard Haselgrove on 31 Aug 2012, 08:58:56 am
Same host, this time running with BOINC suspended and not much else running.


=========================================================
Ftst_v7_J52_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------
                     v_ChirpData 0.003897 0.00000  test
                   fpu_ChirpData 0.008944 0.00000  test
               fpu_opt_ChirpData 0.003988 0.00000  test
             sse1_ChirpData_ak8e 0.004430 0.00000  test
              sse2_ChirpData_ak8 0.002905 0.00000  test
              sse3_ChirpData_ak8 0.002731 0.00000  test
                 avx_ChirpData_a 0.001524 0.00000  test
                 avx_ChirpData_b 0.001527 0.00000  test
                 avx_ChirpData_c 0.001551 0.00000  test
                 avx_ChirpData_d 0.001445 0.00000  test
                 avx_ChirpData_e 0.001433 0.00000  test
                 avx_ChirpData_f 0.001516 0.00000  test
                 avx_ChirpData_g 0.001537 0.00000  test
                 avx_ChirpData_h 0.002187 0.00000  test
                 avx_ChirpData_i 0.001688 0.00000  test
            avx_fma4_ChirpData_a not supported by system
            avx_fma4_ChirpData_b not supported by system
            avx_fma4_ChirpData_c not supported by system
                 avx_ChirpData_e 0.001433 0.00000  choice

            Second run

                     v_ChirpData 0.003866 0.00000  test
                   fpu_ChirpData 0.008956 0.00000  test
               fpu_opt_ChirpData 0.003808 0.00000  test
             sse1_ChirpData_ak8e 0.003868 0.00000  test
              sse2_ChirpData_ak8 0.002854 0.00000  test
              sse3_ChirpData_ak8 0.002725 0.00000  test
                 avx_ChirpData_a 0.001527 0.00000  test
                 avx_ChirpData_b 0.001536 0.00000  test
                 avx_ChirpData_c 0.001570 0.00000  test
                 avx_ChirpData_d 0.001437 0.00000  test
                 avx_ChirpData_e 0.001440 0.00000  test
                 avx_ChirpData_f 0.001527 0.00000  test
                 avx_ChirpData_g 0.001535 0.00000  test
                 avx_ChirpData_h 0.002072 0.00000  test
                 avx_ChirpData_i 0.001684 0.00000  test
            avx_fma4_ChirpData_a not supported by system
            avx_fma4_ChirpData_b not supported by system
            avx_fma4_ChirpData_c not supported by system
                 avx_ChirpData_d 0.001437 0.00000  choice

            Third run

                     v_ChirpData 0.003900 0.00000  test
                   fpu_ChirpData 0.009065 0.00000  test
               fpu_opt_ChirpData 0.004296 0.00000  test
             sse1_ChirpData_ak8e 0.003866 0.00000  test
              sse2_ChirpData_ak8 0.002840 0.00000  test
              sse3_ChirpData_ak8 0.002725 0.00000  test
                 avx_ChirpData_a 0.001522 0.00000  test
                 avx_ChirpData_b 0.001526 0.00000  test
                 avx_ChirpData_c 0.001547 0.00000  test
                 avx_ChirpData_d 0.001426 0.00000  test
                 avx_ChirpData_e 0.001496 0.00000  test
                 avx_ChirpData_f 0.001524 0.00000  test
                 avx_ChirpData_g 0.001569 0.00000  test
                 avx_ChirpData_h 0.002060 0.00000  test
                 avx_ChirpData_i 0.001698 0.00000  test
            avx_fma4_ChirpData_a not supported by system
            avx_fma4_ChirpData_b not supported by system
            avx_fma4_ChirpData_c not supported by system
                 avx_ChirpData_d 0.001426 0.00000  choice

                   Test duration     5.91 seconds

Ftst_v7 completed successfully.

=========================================================
Ftst_v7_J55_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------

   First run, 1048576 sample testing

                     v_ChirpData 0.043213 0.00000  test    mintime= 0.043077
                   fpu_ChirpData 0.009013 0.00000  test    mintime= 0.008937
             sse1_ChirpData_ak8e 0.003854 0.00000  test    mintime= 0.003842
              sse2_ChirpData_ak8 0.002833 0.00000  test    mintime= 0.002829
              sse3_ChirpData_ak8 0.002718 0.00000  test    mintime= 0.002709
                 avx_ChirpData_a 0.001519 0.00000  test    mintime= 0.001514
                 avx_ChirpData_b 0.001736 0.00000  test    mintime= 0.001728
                 avx_ChirpData_c 0.001547 0.00000  test    mintime= 0.001544
                 avx_ChirpData_d 0.001433 0.00000  test    mintime= 0.001427
                 avx_ChirpData_e 0.001430 0.00000  test    mintime= 0.001418
                 avx_ChirpData_f 0.001656 0.00000  test    mintime= 0.001649
                 avx_ChirpData_g 0.001551 0.00000  test    mintime= 0.001535
                 avx_ChirpData_h 0.002173 0.00000  test    mintime= 0.002007
                 avx_ChirpData_i 0.001685 0.00000  test    mintime= 0.001675
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_e 0.001430 0.00000  choice

  Second run,  131072 sample testing

                     v_ChirpData 0.005396 0.00000  test    mintime= 0.005375
                   fpu_ChirpData 0.001321 0.00000  test    mintime= 0.001118
             sse1_ChirpData_ak8e 0.000515 0.00000  test    mintime= 0.000481
              sse2_ChirpData_ak8 0.000357 0.00000  test    mintime= 0.000353
              sse3_ChirpData_ak8 0.000409 0.00000  test    mintime= 0.000339
                 avx_ChirpData_a 0.000191 0.00000  test    mintime= 0.000188
                 avx_ChirpData_b 0.000209 0.00000  test    mintime= 0.000185
                 avx_ChirpData_c 0.000193 0.00000  test    mintime= 0.000191
                 avx_ChirpData_d 0.000192 0.00000  test    mintime= 0.000176
                 avx_ChirpData_e 0.000188 0.00000  test    mintime= 0.000175
                 avx_ChirpData_f 0.000196 0.00000  test    mintime= 0.000187
                 avx_ChirpData_g 0.000192 0.00000  test    mintime= 0.000188
                 avx_ChirpData_h 0.000244 0.00000  test    mintime= 0.000237
                 avx_ChirpData_i 0.000197 0.00000  test    mintime= 0.000191
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_e 0.000188 0.00000  choice

   Third run,   32768 sample testing

                     v_ChirpData 0.001349 0.00000  test    mintime= 0.001343
                   fpu_ChirpData 0.000291 0.00000  test    mintime= 0.000279
             sse1_ChirpData_ak8e 0.000122 0.00000  test    mintime= 0.000120
              sse2_ChirpData_ak8 0.000096 0.00000  test    mintime= 0.000088
              sse3_ChirpData_ak8 0.000093 0.00000  test    mintime= 0.000084
                 avx_ChirpData_a 0.000047 0.00000  test    mintime= 0.000046
                 avx_ChirpData_b 0.000050 0.00000  test    mintime= 0.000046
                 avx_ChirpData_c 0.000061 0.00000  test    mintime= 0.000047
                 avx_ChirpData_d 0.000045 0.00000  test    mintime= 0.000044
                 avx_ChirpData_e 0.000045 0.00000  test    mintime= 0.000044
                 avx_ChirpData_f 0.000047 0.00000  test    mintime= 0.000046
                 avx_ChirpData_g 0.000048 0.00000  test    mintime= 0.000047
                 avx_ChirpData_h 0.000062 0.00000  test    mintime= 0.000060
                 avx_ChirpData_i 0.000048 0.00000  test    mintime= 0.000046
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_e 0.000045 0.00000  choice

                   Test duration     4.09 seconds

Ftst_v7 completed successfully.

=========================================================
Ftst_v7_J55b_Chirponly started.

Optimal function choices:
--------------------------------------------------------
                            name   timing   error
--------------------------------------------------------

   First run, 1048576 sample testing

                     v_ChirpData 0.043410 0.00000  test    mintime= 0.043336
                   fpu_ChirpData 0.008939 0.00000  test    mintime= 0.008902
             sse1_ChirpData_ak8e 0.003835 0.00000  test    mintime= 0.003824
              sse2_ChirpData_ak8 0.002839 0.00000  test    mintime= 0.002837
              sse3_ChirpData_ak8 0.002715 0.00000  test    mintime= 0.002710
                 avx_ChirpData_a 0.001514 0.00000  test    mintime= 0.001508
                 avx_ChirpData_b 0.001577 0.00000  test    mintime= 0.001572
                 avx_ChirpData_c 0.001517 0.00000  test    mintime= 0.001512
                 avx_ChirpData_d 0.001426 0.00000  test    mintime= 0.001421
                 avx_ChirpData_e 0.001497 0.00000  test    mintime= 0.001452
                 avx_ChirpData_f 0.001534 0.00000  test    mintime= 0.001523
                 avx_ChirpData_g 0.001708 0.00000  test    mintime= 0.001703
                 avx_ChirpData_h 0.002067 0.00000  test    mintime= 0.002009
                 avx_ChirpData_i 0.001695 0.00000  test    mintime= 0.001663
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_d 0.001426 0.00000  choice

  Second run,  131072 sample testing

                     v_ChirpData 0.005465 0.00000  test    mintime= 0.005412
                   fpu_ChirpData 0.001115 0.00000  test    mintime= 0.001107
             sse1_ChirpData_ak8e 0.000483 0.00000  test    mintime= 0.000480
              sse2_ChirpData_ak8 0.000399 0.00000  test    mintime= 0.000354
              sse3_ChirpData_ak8 0.000370 0.00000  test    mintime= 0.000338
                 avx_ChirpData_a 0.000232 0.00000  test    mintime= 0.000187
                 avx_ChirpData_b 0.000212 0.00000  test    mintime= 0.000196
                 avx_ChirpData_c 0.000192 0.00000  test    mintime= 0.000187
                 avx_ChirpData_d 0.000180 0.00000  test    mintime= 0.000177
                 avx_ChirpData_e 0.000180 0.00000  test    mintime= 0.000177
                 avx_ChirpData_f 0.000190 0.00000  test    mintime= 0.000188
                 avx_ChirpData_g 0.000193 0.00000  test    mintime= 0.000190
                 avx_ChirpData_h 0.000256 0.00000  test    mintime= 0.000248
                 avx_ChirpData_i 0.000220 0.00000  test    mintime= 0.000197
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_e 0.000180 0.00000  choice

   Third run,   32768 sample testing

                     v_ChirpData 0.001356 0.00000  test    mintime= 0.001353
                   fpu_ChirpData 0.000281 0.00000  test    mintime= 0.000278
             sse1_ChirpData_ak8e 0.000120 0.00000  test    mintime= 0.000119
              sse2_ChirpData_ak8 0.000089 0.00000  test    mintime= 0.000088
              sse3_ChirpData_ak8 0.000089 0.00000  test    mintime= 0.000084
                 avx_ChirpData_a 0.000053 0.00000  test    mintime= 0.000046
                 avx_ChirpData_b 0.000049 0.00000  test    mintime= 0.000048
                 avx_ChirpData_c 0.000047 0.00000  test    mintime= 0.000046
                 avx_ChirpData_d 0.000045 0.00000  test    mintime= 0.000043
                 avx_ChirpData_e 0.000044 0.00000  test    mintime= 0.000043
                 avx_ChirpData_f 0.000053 0.00000  test    mintime= 0.000046
                 avx_ChirpData_g 0.000053 0.00000  test    mintime= 0.000051
                 avx_ChirpData_h 0.000062 0.00000  test    mintime= 0.000058
                 avx_ChirpData_i 0.000052 0.00000  test    mintime= 0.000046
            avx_fma4_ChirpData_a not supported by system
           avx_fma4_ChirpData_d4 not supported by system
           avx_fma4_ChirpData_d6 not supported by system
           avx_fma4_ChirpData_d8 not supported by system
            avx_fma4_ChirpData_e not supported by system
                 avx_ChirpData_e 0.000044 0.00000  choice

                   Test duration     4.08 seconds

Ftst_v7 completed successfully.