+- +-
Say hello if visiting :) by Gecko
11 Jan 2023, 07:43:05 pm

Seti is down again by Mike
09 Aug 2017, 10:02:44 am

Some considerations regarding OpenCL MultiBeam app tuning from algorithm view by Raistmer
11 Dec 2016, 06:30:56 am

Loading APU to the limit: performance considerations by Mike
05 Nov 2016, 06:49:26 am

Better sleep on Windows - new round by Raistmer
26 Aug 2016, 02:02:31 pm

Author Topic: optimized sources  (Read 548514 times)

Offline _heinz

  • Volunteer Developer
  • Knight who says 'Ni!'
  • *****
  • Posts: 2117
Re: optimized sources
« Reply #255 on: 09 Nov 2007, 10:26:39 am »
Hi Jason,

The compact loop construction PFLOOP runs.
some first impressions: --->

FFTlen 8192, PulsePoTLen 24,  1048576 loops.
             Standard:     9049838772 ticks, 8630.60 per loop, 0 rpt
Plan < 512 FPU swi ! :     3892589440 ticks, 3712.26 per loop, 0 rpt
 Plan < 512 AK SSE ! :     5260680348 ticks, 5016.98 per loop, 0 rpt
Plan < 512 BHx SSE ! :    13525734128 ticks, 12899.15 per loop, 0 rpt
 Plan < 512 BH SSE ! :     9339515956 ticks, 8906.86 per loop, 0 rpt

ar=0.435000 done. Total flop count: 108711033335.208650

PulTimB 0.5    Totals:  Ratio            Ticks
             standard:  1.000      87462139372
Plan < 512 FPU swi ! :  0.609      53291444096
 Plan < 512 AK SSE ! :  0.634      55471031448
Plan < 512 BHx SSE ! :  0.990      86608697300
 Plan < 512 BH SSE ! :  0.772      67556177968

Iīm surprised, did not expected it --->
Against the standard opt. case-construct it speeds up ~12% in FFTlen 8192, PulsePoTLen 24
And that it shows in FFTlen 8192, PulsePoTLen 24 ---> 3892589440 ticks, 3712.26   per loop
and the original code FFTlen 8192, PulsePoTLen 24---> 4427492996 ticks, 4222.39 per loop
looks like the LOOP-construct is faster in this case, but not in summary....
further measuring must manifest it.

All cases compiled with /Zi /Od no compiler optimization... and MS-Compiler...
so further improvement can be expected to use the Intel Compiler  ;D




Offline Jason G

  • Construction Fraggle
  • Knight who says 'Ni!'
  • *****
  • Posts: 8980
Re: optimized sources
« Reply #256 on: 09 Nov 2007, 11:03:35 am »
Yeah, It is good now I can have a look at Pulsefind again now msvs is fixed! :D,  I think you might be finding a similar thing to what I've been seeing from a different part of the code:

     -  the code is very sensitive to certain optimisation settings,

I haven't worked out yet whether this is because the optimiser is improving some weakness in the code, or whether the code is written to take advantage of the optimisers, or perhaps [more likely] a little of both.  Time [and examining the assembly output listing  ;) ] will tell,

I would easily place that 12% in the range of the optimiser so I have learned [the hard way] to take care to use final settings for timing comparison.  That unexpected surprise might be a phantom, though it will be nice if it isn't :D

Jason
« Last Edit: 09 Nov 2007, 11:15:02 am by j_groothu »

Offline _heinz

  • Volunteer Developer
  • Knight who says 'Ni!'
  • *****
  • Posts: 2117
Re: optimized sources
« Reply #257 on: 09 Nov 2007, 12:53:33 pm »
yes, all this must be analyzed.... I will have a look at the asm code...to see what is really going on there.
As Joe alredy stated, shorter code must not be automatic  fastest.

I have a lot of not necessary assignments to some vars eleminated, so results not stored meanwhile to the vars, they will be hold in the registers for next operations.  ;)  fewer instructions for the same result
We keep in mind every command must be loaded into the instruction register and executed by the instruction decoder so a well squeezed code can show any effects too, especially in big loops.  ;)   fewer instructions means smaller times

The optimizing by setting compiler flags ... unrolling loops and fill the cache properly etc. are a other big field....

heinz

Offline _heinz

  • Volunteer Developer
  • Knight who says 'Ni!'
  • *****
  • Posts: 2117
Re: optimized sources
« Reply #258 on: 12 Nov 2007, 11:41:57 am »
access of 23 000    .... I didnīt expected it..... looks like a hot thread
greatings to all who are reding here
heinz  ;)

Offline Jason G

  • Construction Fraggle
  • Knight who says 'Ni!'
  • *****
  • Posts: 8980
Re: optimized sources
« Reply #259 on: 12 Nov 2007, 12:34:25 pm »
access of 23 000    .... I didnīt expected it..... looks like a hot thread
greatings to all who are reding here
heinz  ;)

Ithink It'll get much bigger yet, with the optimisations you are trying, and maybe a few from me too if I can consolidate a little :D (and get some more study and work done first!  ;D)

Offline _heinz

  • Volunteer Developer
  • Knight who says 'Ni!'
  • *****
  • Posts: 2117
Re: optimized sources
« Reply #260 on: 13 Nov 2007, 06:57:38 am »
Hi Jason,

have you access to the "Pre-Release Applications" Forum ?  If not, ask the moderators to give you access rights.

heinz

Offline Jason G

  • Construction Fraggle
  • Knight who says 'Ni!'
  • *****
  • Posts: 8980
Re: optimized sources
« Reply #261 on: 13 Nov 2007, 09:09:09 am »
Hi Jason,

have you access to the "Pre-Release Applications" Forum ?  If not, ask the moderators to give you access rights.

heinz

No, I didn't know there was such a place  ::).  Have you let the cat out of the bag again Heinz?  Who are the Moderators? (Never did pay much attention to the tags on the posts... I guess I should really know that :D)

[Is there excellent stuff worth pestering a mod about  in there I might want or need ?]

Thanks, Jason
« Last Edit: 13 Nov 2007, 09:18:09 am by j_groothu »

Gecko_R7

  • Guest
Re: optimized sources
« Reply #262 on: 13 Nov 2007, 04:03:26 pm »
Hi Jason,

have you access to the "Pre-Release Applications" Forum ? If not, ask the moderators to give you access rights.


heinz

No, I didn't know there was such a place ::). Have you let the cat out of the bag again Heinz? Who are the Moderators? (Never did pay much attention to the tags on the posts... I guess I should really know that :D)

[Is there excellent stuff worth pestering a mod about in there I might want or need ?]

Thanks, Jason

Joe and I are Mods, though this is more like the Maytag repairman's job around here.
I think this can only be done by Admin rights (Simon), but have asked Joe if he is able to do it by chance as I don't see the option.  Hang tight.

Offline Jason G

  • Construction Fraggle
  • Knight who says 'Ni!'
  • *****
  • Posts: 8980
Re: optimized sources
« Reply #263 on: 13 Nov 2007, 11:00:42 pm »
Joe and I are Mods, though this is more like the Maytag repairman's job around here.
I think this can only be done by Admin rights (Simon), but have asked Joe if he is able to do it by chance as I don't see the option.  Hang tight.
thanks Gecko_R7! I have all the time in the world, no hurry.  I have been informed by PM that some interesting/important  things ARE in there, sounds good. Keep up with the intense moderation work :D

Jason
« Last Edit: 13 Nov 2007, 11:17:01 pm by j_groothu »

Offline Josef W. Segur

  • Janitor o' the Board
  • Knight who says 'Ni!'
  • *****
  • Posts: 3112
Re: optimized sources
« Reply #264 on: 14 Nov 2007, 07:59:04 am »
Joe and I are Mods, though this is more like the Maytag repairman's job around here.
I think this can only be done by Admin rights (Simon), but have asked Joe if he is able to do it by chance as I don't see the option.  Hang tight.
thanks Gecko_R7! I have all the time in the world, no hurry.  I have been informed by PM that some interesting/important  things ARE in there, sounds good. Keep up with the intense moderation work :D

Jason

I also cannot find a way to grant access, I'm sure Simon will when he becomes active again.

I agree with Heinz that you'd find some of the discussions interesting, but I don't think there's anything you really need hidden there. Because the postings in threads there were made with the expectation they'd only be read by a limited group, I won't move or copy those threads to this public area. I'll just say that any of my own postings there may be quoted here, so if Heinz had something specific in mind which can be satisfied that way...
                                                      Joe

Offline Jason G

  • Construction Fraggle
  • Knight who says 'Ni!'
  • *****
  • Posts: 8980
Re: optimized sources
« Reply #265 on: 14 Nov 2007, 08:32:15 am »
Thanks Joe, no probs :D

Offline _heinz

  • Volunteer Developer
  • Knight who says 'Ni!'
  • *****
  • Posts: 2117
Re: optimized sources
« Reply #266 on: 14 Nov 2007, 08:29:48 pm »
Compile FPUCOMP and AKSCOMP now two further compact versions of code
-----------------------------------------------------------------------------------------------------------
------ Rebuild All started: Project: Optimizer, Configuration: Release Win32 ------
Deleting intermediate and output files for project 'Optimizer', configuration 'Release|Win32'
Compiling...
Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 15.00.20404 for 80x86
Copyright (C) Microsoft Corporation.  All rights reserved.
cl /O2 /Ob2 /Oi /Ot /Oy /GT /GL /I "C:\I\SC\PulTimB_5\client\Header Files" /I "../../../boinc/win_build" /I ".." /I "..\.." /I "..\..\..\boinc\lib" /I "../../../boinc/api" /I "../../db" /I "C:\I\SC\PulTimB_5\client\vector" /I "C:\I\SC\PulTimB_5\client" /I "C:\I\SC\PulTimB_5\Optimizer" /I "C:\I\INTEL\IPP\5.2_beta\ia32\tools\staticlib" /I "C:\I\INTEL\IPP\5.2_beta\ia32\include" /D "USE_IPP" /D "USE_SSE2" /D "NDEBUG" /D "WIN32" /D "_WINDOWS" /D "_LIB" /D "_CONSOLE" /D "HAVE_SINF" /D "HAVE_COSF" /D "HAVE_ATANF" /D "USE_FPUCOMP" /D "USE_AKFCOMP" /D "USE_ASMLIB" /D "_DEBUG" /D "_WIN32" /D "_UNICODE" /D "UNICODE" /GF /Gm /EHsc /MTd /Zp16 /Gy /arch:SSE2 /fp:fast /Fo"Release\\" /Fd"Release\vc90.pdb" /W3 /c /Wp64 /Zi /TP .\AKfoldSSE.cpp
AKfoldSSE.cpp
-----AKFCOMP-----
Compiling...
Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 15.00.20404 for 80x86
Copyright (C) Microsoft Corporation.  All rights reserved.
cl /Od /Ot /Oy /GT /GL /I "C:\I\SC\PulTimB_5\client\Header Files" /I "../../../boinc/win_build" /I ".." /I "..\.." /I "..\..\..\boinc\lib" /I "../../../boinc/api" /I "../../db" /I "C:\I\SC\PulTimB_5\client\vector" /I "C:\I\SC\PulTimB_5\client" /I "C:\I\SC\PulTimB_5\Optimizer" /I "C:\I\INTEL\IPP\5.2_beta\ia32\tools\staticlib" /I "C:\I\INTEL\IPP\5.2_beta\ia32\include" /D "USE_FPUCOMP" /D "USE_AKFCOMP" /D "USE_ASMLIB" /D "_DEBUG" /D "WIN32" /D "_WIN32" /D "_WINDOWS" /D "_LIB" /D "_CONSOLE" /D "HAVE_SINF" /D "HAVE_COSF" /D "HAVE_ATANF" /D "_UNICODE" /D "UNICODE" /GF /Gm /EHsc /MTd /Zp16 /Gy /fp:fast /Fo"Release\\" /Fd"Release\vc90.pdb" /W3 /c /Wp64 /Zi /TP .\opt_unopt.cpp
opt_unopt.cpp
Compiling...
Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 15.00.20404 for 80x86
Copyright (C) Microsoft Corporation.  All rights reserved.
cl /O2 /Ob2 /Oi /Ot /Oy /GT /GL /I "C:\I\SC\PulTimB_5\client\Header Files" /I "../../../boinc/win_build" /I ".." /I "..\.." /I "..\..\..\boinc\lib" /I "../../../boinc/api" /I "../../db" /I "C:\I\SC\PulTimB_5\client\vector" /I "C:\I\SC\PulTimB_5\client" /I "C:\I\SC\PulTimB_5\Optimizer" /I "C:\I\INTEL\IPP\5.2_beta\ia32\tools\staticlib" /I "C:\I\INTEL\IPP\5.2_beta\ia32\include" /D "USE_IPP" /D "USE_SSE2" /D "NDEBUG" /D "WIN32" /D "_WINDOWS" /D "_LIB" /D "_CONSOLE" /D "HAVE_SINF" /D "HAVE_COSF" /D "HAVE_ATANF" /D "USE_FPUCOMP" /D "USE_AKFCOMP" /D "USE_ASMLIB" /D "_DEBUG" /D "_WIN32" /D "_UNICODE" /D "UNICODE" /GF /Gm /EHsc /MTd /Zp16 /Gy /arch:SSE /fp:fast /Fo"Release\\" /Fd"Release\vc90.pdb" /W3 /c /Wp64 /Zi /TP .\opt_SSEx.cpp
opt_SSEx.cpp
Compiling...
Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 15.00.20404 for 80x86
Copyright (C) Microsoft Corporation.  All rights reserved.
cl /O2 /Ob2 /Oi /Ot /Oy /GT /GL /I "C:\I\SC\PulTimB_5\client\Header Files" /I "../../../boinc/win_build" /I ".." /I "..\.." /I "..\..\..\boinc\lib" /I "../../../boinc/api" /I "../../db" /I "C:\I\SC\PulTimB_5\client\vector" /I "C:\I\SC\PulTimB_5\client" /I "C:\I\SC\PulTimB_5\Optimizer" /I "C:\I\INTEL\IPP\5.2_beta\ia32\tools\staticlib" /I "C:\I\INTEL\IPP\5.2_beta\ia32\include" /D "USE_IPP" /D "USE_SSE" /D "NDEBUG" /D "WIN32" /D "_WINDOWS" /D "_LIB" /D "_CONSOLE" /D "HAVE_SINF" /D "HAVE_COSF" /D "HAVE_ATANF" /D "USE_FPUCOMP" /D "USE_AKFCOMP" /D "USE_ASMLIB" /D "_DEBUG" /D "_WIN32" /D "_UNICODE" /D "UNICODE" /GF /Gm /EHsc /MTd /Zp16 /Gy /arch:SSE /fp:fast /Fo"Release\\" /Fd"Release\vc90.pdb" /W3 /c /Wp64 /Zi /TP .\opt_SSE.cpp
opt_SSE.cpp
.\opt_SSE.cpp(95) : warning C4311: 'type cast' : pointer truncation from 'const float *__w64 ' to 'unsigned int'
Compiling...
Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 15.00.20404 for 80x86
Copyright (C) Microsoft Corporation.  All rights reserved.
cl /Od /Ob2 /Ot /Oy /GT /GL /I "C:\I\SC\PulTimB_5\client\Header Files" /I "../../../boinc/win_build" /I ".." /I "..\.." /I "..\..\..\boinc\lib" /I "../../../boinc/api" /I "../../db" /I "C:\I\SC\PulTimB_5\client\vector" /I "C:\I\SC\PulTimB_5\client" /I "C:\I\SC\PulTimB_5\Optimizer" /I "C:\I\INTEL\IPP\5.2_beta\ia32\tools\staticlib" /I "C:\I\INTEL\IPP\5.2_beta\ia32\include" /D "USE_MMX" /D "USE_ASMLIB" /D "_DEBUG" /D "WIN32" /D "_WIN32" /D "_WINDOWS" /D "_LIB" /D "_CONSOLE" /D "HAVE_SINF" /D "HAVE_COSF" /D "HAVE_ATANF" /D "USE_FPUCOMP" /D "USE_AKFCOMP" /D "_UNICODE" /D "UNICODE" /GF /Gm /EHsc /MTd /Zp16 /Gy /fp:fast /Fo"Release\\" /Fd"Release\vc90.pdb" /W3 /c /Wp64 /Zi /TP .\opt_FPU.cpp
opt_FPU.cpp
-----FPUCOMP-----
Compiling...
Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 15.00.20404 for 80x86
Copyright (C) Microsoft Corporation.  All rights reserved.
cl /O2 /Ob2 /Ot /Oy /GT /GL /I "C:\I\SC\PulTimB_5\client\Header Files" /I "../../../boinc/win_build" /I ".." /I "..\.." /I "..\..\..\boinc\lib" /I "../../../boinc/api" /I "../../db" /I "C:\I\SC\PulTimB_5\client\vector" /I "C:\I\SC\PulTimB_5\client" /I "C:\I\SC\PulTimB_5\Optimizer" /I "C:\I\INTEL\IPP\5.2_beta\ia32\tools\staticlib" /I "C:\I\INTEL\IPP\5.2_beta\ia32\include" /D "USE_FPUCOMP" /D "USE_AKFCOMP" /D "USE_ASMLIB" /D "_DEBUG" /D "WIN32" /D "_WIN32" /D "_WINDOWS" /D "_LIB" /D "_CONSOLE" /D "HAVE_SINF" /D "HAVE_COSF" /D "HAVE_ATANF" /D "_UNICODE" /D "UNICODE" /GF /Gm /EHsc /MTd /Zp16 /Gy /fp:fast /Fo"Release\\" /Fd"Release\vc90.pdb" /W3 /c /Wp64 /Zi /TP .\benchmark.cpp
benchmark.cpp
Creating library...
Build log was saved at "file://c:\I\SC\PulTimB_5\Optimizer\Release\BuildLog.htm"
Optimizer - 0 error(s), 1 warning(s)
========== Rebuild All: 1 succeeded, 0 failed, 0 skipped ==========

heinz

Offline Jason G

  • Construction Fraggle
  • Knight who says 'Ni!'
  • *****
  • Posts: 8980
Re: optimized sources
« Reply #267 on: 17 Nov 2007, 09:31:15 am »
Okay, I'll be taking some time now to catch up on this in 'the area' now, look interesting :D

Jason

ScanMan

  • Guest
Re: optimized sources
« Reply #268 on: 17 Nov 2007, 11:54:17 am »
Hi,

I am new to this form and would like to know which app is best for my Computer.

The OS is Windows 2000 pro Service Pack 4 the Cpu is Dual Xeon 2.0 GHZ which app would be the best for my setup!

Regards

ScanMan

Gecko_R7

  • Guest
Re: optimized sources
« Reply #269 on: 17 Nov 2007, 03:40:47 pm »
Hi,

I am new to this form and would like to know which app is best for my Computer.

The OS is Windows 2000 pro Service Pack 4 the Cpu is Dual Xeon 2.0 GHZ which app would be the best for my setup!

Regards

ScanMan

Welcome ScanMan.
Check here: http://calbe.dw70.de/win32.html
 
If you have a Core2-based CPU, you can use the sse3, or ssse3 based aps.  Just decide whether you want pretty graphics version or not.

If a prescott-based Xeon, the sse2 or sse3 will do fine.  Some folks don't see any noticable gain w/ sse3 on prescott cpus.   Depends on the specific cpu and other factors.  You may or may not gain much vs. sse2 ap.  Can always try them both and judge for yourself.

BTW, if you have any further questions, please post in the following on-topic thread instead, or on the main Seti number crunching forum board  :) Thanks!  The subject matter of this particular thread is development-based.

http://lunatics.at/windows/crunch3r-new-apps-in-32-xp-sp2.0.html

Cheers!
« Last Edit: 17 Nov 2007, 03:43:19 pm by Gecko_R7 »

 

Welcome, Guest.
Please login or register.
 
 
 
Forgot your password?
Members
Total Members: 97
Latest: ToeBee
New This Month: 0
New This Week: 0
New Today: 0
Stats
Total Posts: 59559
Total Topics: 1672
Most Online Today: 40
Most Online Ever: 983
(20 Jan 2020, 03:17:55 pm)
Users Online
Members: 0
Guests: 21
Total: 21
Powered by EzPortal