Small Linux vs. Windows Benchmark (Whetstone) question


log in

Advanced search

Message boards : Number crunching : Small Linux vs. Windows Benchmark (Whetstone) question

Author Message
Profile FalconFlyProject donor
Avatar
Send message
Joined: 5 Oct 99
Posts: 393
Credit: 16,078,835
RAC: 2,309
Germany
Message 27494 - Posted: 17 Sep 2004, 23:11:05 UTC
Last modified: 17 Sep 2004, 23:58:08 UTC

Not sure if this has been discussed before, but having just seen all Boxes doing a fresh benchmark after the update V4.05 - V4.09, I noted that the second time now.

Although apparently yielding nominal performance, my Linux box is rated at almost 60% below average (compared to its Windows companion) in FPU Performance (?)

That'll result in it requesting very low Credit, which won't only affect me but also the others working on the same WorkUnit.

Nothing spectacular, but is this a bug or a feature? *g*

Comparison :
AthlonXP 2500+ (1833MHz, FSB333 512k L2, Linux) : 986 MFlops FPU
AthlonXP-M 1800+ (1533Mhz, FSB266 256k L2, WinXP) : 1863 MFlops FPU

The number is really far off from what I would expect; and it does perform completely normal, outpacing the XP1800+ anytime of course (?)

Saw that first in the V4.05 BOINC for Linux, and it's the same with V4.09; I re-ran the Bench but it didn't change anything.

BOINCview Data (est. CobbleStones per hour)
AthlonXP-M 1800+ : 9.87
AthlonXP 2500+ : 6.75 :(

I'll make some comparison benches on other Linux Systems, just to make sure it's not that one Box :p

-- edit --
Hm, found another User Profile with alot of Linux/AthlonXP Systems.
His Benchmark scores match up with mine.

Is BOINC compensating for the ~60-70% loss in benchmarks under Linux ?
___________________________________________
<p>Scientific Network : 36200 MHz «» 8204 MB «» 815.0 GB </p>

Profile Paul D. Buck
Volunteer tester
Send message
Joined: 19 Jul 00
Posts: 3898
Credit: 1,158,042
RAC: 0
United States
Message 27657 - Posted: 18 Sep 2004, 10:24:58 UTC - in response to Message 27494.

> Not sure if this has been discussed before, but having just seen all Boxes
> doing a fresh benchmark after the update V4.05 - V4.09, I noted that the
> second time now.

Yes, we have discussed this before. :)

From my limited perspective there are many, much more important issues that need attention at this juncture. I am sure that when we have more experience with BOINC things like this will be looked at.

Part of the problem is that the compilers, in some cases seem to be tinkering with the benchmark code. This would account for what you are seeing.
<p>
For BOINC Documentaion: Click Me!


Nuwanda
Avatar
Send message
Joined: 2 Aug 03
Posts: 71
Credit: 1,191,971
RAC: 0
United Arab Emirates
Message 27662 - Posted: 18 Sep 2004, 10:30:59 UTC

its true...the linux client is slower than the win client. ive heard ppl say though, that running the win client on linux via wine improves performance. not sure tho.
----------------------------
Team X-BTF S@H Forums
S@h Berkeley's Staff Friends Club © member
<img>

Profile Paul D. Buck
Volunteer tester
Send message
Joined: 19 Jul 00
Posts: 3898
Credit: 1,158,042
RAC: 0
United States
Message 27680 - Posted: 18 Sep 2004, 11:13:36 UTC - in response to Message 27662.

> its true...the linux client is slower than the win client. ive heard ppl say
> though, that running the win client on linux via wine improves performance.
> not sure tho.
> ----------------------------

Now that would be funny. I am just going to sit tight and wait for the work done by the "optimizers" starts being put into the baseline ...
<p>
For BOINC Documentaion: Click Me!


WerK
Send message
Joined: 30 Jun 02
Posts: 26
Credit: 204,105
RAC: 0
Czech Republic
Message 27692 - Posted: 18 Sep 2004, 12:30:39 UTC

The Linux client is slower beacuse gcc ( linux C compiler ) is focusing on portability, not speed. Howewer you can optimize it using compiler flags. I have an Athlon XP too and optimizing gave me much better results. Right now I'm testing if such optimization flags doesnt screw up the results, but everything looks fine. I'm using these flags : CFLAGS='-pipe -O4 -mcpu=athlon-xp -march=athlon-xp -mfpmath=387 -m3dnow -mmmx -msse -funroll-loops -s -static -fomit-frame-pointer -fexpensive-optimizations -ffast-math' . If you are not familiar with compiling clients, mail to werkklan (at) seznam (dot) cz and i can send you my athlon xp binaries for BOINC & seti_client

Regards,
WerK

Manuel
Send message
Joined: 12 Jul 99
Posts: 6
Credit: 125,104
RAC: 0
United States
Message 27757 - Posted: 18 Sep 2004, 19:05:17 UTC - in response to Message 27692.

I downloaded the source for boinc_public and compiled it "as-is" on
a Fedora FC2 machines. It generates V4.10 (vs the V4.09). The benchmarks
are similar to V4.05 and 4.09. Can anyone please tell me what flags to
add/change and where (in what file) for a i686 (Pentium III Coppermine)?
Thanks.

WerK
Send message
Joined: 30 Jun 02
Posts: 26
Credit: 204,105
RAC: 0
Czech Republic
Message 27779 - Posted: 18 Sep 2004, 20:41:54 UTC - in response to Message 27757.
Last modified: 18 Sep 2004, 20:42:39 UTC

> I downloaded the source for boinc_public and compiled it "as-is" on
> a Fedora FC2 machines. It generates V4.10 (vs the V4.09). The benchmarks
> are similar to V4.05 and 4.09. Can anyone please tell me what flags to
> add/change and where (in what file) for a i686 (Pentium III Coppermine)?
> Thanks.
>
>

Take a look at this page : http://www.freehackers.org/gentoo/gccflags/flag_gcc3opt.html and choose flags which you want. Then open file .bash_profile in your home directory (if it doesnt exists, create it). Now add :
export CFLAGS="your flags here"
export CXXFLAGS="${CFLAGS}"

So for instance

export CFLAGS="-march=pentium3 -O3 -pipe -fomit-frame-pointer -fforce-addr -falign-functions=4 -fprefetch-loop-arrays -ffast-math"
export CXXFLAGS="${CFLAGS}"

some people thinks that the -ffast-math flag can corrupt your results, but its also very big performance boost with, it so im using it and credit being still granted for now. beware not to put any newline characters (enter) and do the same to the .bashrc file. Then its important to close and open again your terminal to reread changes. Do : echo $CFLAGS to see if your flags are loaded and then compile as usual.

Regards,
WerK

Manuel
Send message
Joined: 12 Jul 99
Posts: 6
Credit: 125,104
RAC: 0
United States
Message 27841 - Posted: 19 Sep 2004, 0:22:44 UTC - in response to Message 27779.

Impecable, thanks. 50% increase in benchmarks w/o using fast_math. Later
I'll try this optimization. Regards, -Manuel

> > I downloaded the source for boinc_public and compiled it "as-is" on
> > a Fedora FC2 machines. It generates V4.10 (vs the V4.09). The benchmarks
> > are similar to V4.05 and 4.09. Can anyone please tell me what flags to
> > add/change and where (in what file) for a i686 (Pentium III Coppermine)?
> > Thanks.
> >
> >
>
> Take a look at this page :
> http://www.freehackers.org/gentoo/gccflags/flag_gcc3opt.html and choose flags
> which you want. Then open file .bash_profile in your home directory (if it
> doesnt exists, create it). Now add :
> export CFLAGS="your flags here"
> export CXXFLAGS="${CFLAGS}"
>
> So for instance
>
> export CFLAGS="-march=pentium3 -O3 -pipe -fomit-frame-pointer -fforce-addr
> -falign-functions=4 -fprefetch-loop-arrays -ffast-math"
> export CXXFLAGS="${CFLAGS}"
>
> some people thinks that the -ffast-math flag can corrupt your results, but its
> also very big performance boost with, it so im using it and credit being still
> granted for now. beware not to put any newline characters (enter) and do the
> same to the .bashrc file. Then its important to close and open again your
> terminal to reread changes. Do : echo $CFLAGS to see if your flags are loaded
> and then compile as usual.
>
> Regards,
> WerK
>

Profile Paul D. Buck
Volunteer tester
Send message
Joined: 19 Jul 00
Posts: 3898
Credit: 1,158,042
RAC: 0
United States
Message 27847 - Posted: 19 Sep 2004, 0:36:01 UTC - in response to Message 27779.

> some people thinks that the -ffast-math flag can corrupt your results, but its
> also very big performance boost with, it so im using it and credit being still
> granted for now. beware not to put any newline characters (enter) and do the
> same to the .bashrc file. Then its important to close and open again your
> terminal to reread changes. Do : echo $CFLAGS to see if your flags are loaded
> and then compile as usual.

You may want to reconsider that one optimization. If it is doing what I wouild expect it is taking sortcuts in the processing and returning less precise results. Even if credit is your motivation, what gains you to get speed if the results are not valid?
<p>
For BOINC Documentaion: Click Me!


WerK
Send message
Joined: 30 Jun 02
Posts: 26
Credit: 204,105
RAC: 0
Czech Republic
Message 27937 - Posted: 19 Sep 2004, 8:21:21 UTC - in response to Message 27847.

> > some people thinks that the -ffast-math flag can corrupt your results,
> but its
> > also very big performance boost with, it so im using it and credit being
> still
> > granted for now. beware not to put any newline characters (enter) and do
> the
> > same to the .bashrc file. Then its important to close and open again
> your
> > terminal to reread changes. Do : echo $CFLAGS to see if your flags are
> loaded
> > and then compile as usual.
>
> You may want to reconsider that one optimization. If it is doing what I wouild
> expect it is taking sortcuts in the processing and returning less precise
> results. Even if credit is your motivation, what gains you to get speed if
> the results are not valid?
> <p>
> For BOINC Documentaion: Click Me!

Well, I thinked of it if course and then noticed the reference_wu which comes with client and tried to crunch it using various optimized versions and even the windows version under wine. I was surprised because even the windows default and linux default version were having different results (of course we are talking about eighth number right of decimal point). Computations with floating point will always be not *absolutely* precise because of rounding, this is where 64bit technology could help much because it haves much more "space" to store the floating point numbers.

Profile Paul D. Buck
Volunteer tester
Send message
Joined: 19 Jul 00
Posts: 3898
Credit: 1,158,042
RAC: 0
United States
Message 27975 - Posted: 19 Sep 2004, 10:31:47 UTC - in response to Message 27937.

> Well, I thinked of it if course and then noticed the reference_wu which comes
> with client and tried to crunch it using various optimized versions and even
> the windows version under wine. I was surprised because even the windows
> default and linux default version were having different results (of course we
> are talking about eighth number right of decimal point). Computations with
> floating point will always be not *absolutely* precise because of rounding,
> this is where 64bit technology could help much because it haves much more
> "space" to store the floating point numbers.

Only if the compilers use word length as single and doouble word for double. If they don't, then you will have the "identical" precision as with the current crop of CPUs.
<p>
For BOINC Documentaion: Click Me!


Profile FalconFlyProject donor
Avatar
Send message
Joined: 5 Oct 99
Posts: 393
Credit: 16,078,835
RAC: 2,309
Germany
Message 28031 - Posted: 19 Sep 2004, 16:57:06 UTC - in response to Message 27975.

Okidok, so it seems the naked Benchmark scores themself are indeed significantly different from Windows Clients.

Although, actual performance is pretty exactly where I remember it using SETI Classic, maybe 10-15% below the Windows Clients.

It was solely the Benchmark scores (which were massively below normal) that catched my eye, but Credits-wise, there seems to be a compensation factor in the System (judging from CPDN and LHC Credit comparisons); so there's no real disadvantage I guess.
___________________________________________
<p>Scientific Network : 36200 MHz «» 8204 MB «» 815.0 GB </p>

Message boards : Number crunching : Small Linux vs. Windows Benchmark (Whetstone) question

Copyright © 2014 University of California