1. Re: A good PC hardware for CLN ? (Joerg Arndt) 2. Re: A good PC hardware for CLN ? (Richard B. Kreckel)
Thank you very much for your answers.
----------------------------------------------------------------------
Message: 1 Date: Tue, 24 Jan 2006 16:33:40 +0100 From: Joerg Arndt <jj@suse.de>
I invariably recommend AMD64 these days (socket 939).
My off the shelf 2.2GHz system is on par with a 3.6GHz intel equivalent (EMT64(?), ex-pen-sive!) for the interesting stuff. System is 2-3.5 times faster than Athlon at same clock. Memory throughput is a dream.
The timings given (by Granlund) are a true eye opener: http://swox.com/doc/x86-timing.pdf
Today's intel 64bit cores are a lousy hack at best.
Alternative architectures (PPC) might be fine but are surely much more expensive.
I'll follow you and the document : AMD64 ! Are dual core useful ? I looked at the prices (France) in this cheap store : http://www.ldlc.com/navigation/cat.html?sscat=140025&constructeur=C000000805&refParam1=PA069&refParam2=PA1112¶mValue1=Socket+939¶mValue2= I noticed on this page : - AMD Athlon 64 3700+ - 2.2 GHz, Cache L2 1 Mo Socket 939 0.09 micron - Core San-Diego (version boîte) 259,01 euros and - AMD Athlon 64 X2 Dual-Core 3800+ Socket 939 0.09 micron (version boîte) 338,99 euros.
Message: 2 Date: Tue, 24 Jan 2006 22:45:39 +0100 From: "Richard B. Kreckel" <kreckel@ginac.de>
Even without x86-64 Assembler code, the use of 64 bit Digits gives an very impressive performance gain. If you buy such a machine, make sure to run int in 64 bit userland if arbitrary precision arithmetic is important for what you're doing.
Please, what does 64 bit userland mean ? Maybe recompiling your .cc sources for 64 bits will improve the speed too ? Does g++3.3 is able to produce such code ? Arbitrary precision arithmetic is a fun stuff and then very important to soften the hard life ! Sorry for my poor english language. When I wrote : "Is the motherboard worthy ?", that didn't had any meaning. I meant : "Is the motherboard important for speed too ?". I wonder if processor cache size is important for integer computations with CLN ? ( I focus on integers. ) And RAM amount ? Dual channel ? Can we forget hard drive perfs, hoping a huge RAM avoids to swap ? Regards Fabrice
* Fabrice Marchant <fabricemarchant@free.fr> [Jan 26. 2006 10:47]:
1. Re: A good PC hardware for CLN ? (Joerg Arndt) 2. Re: A good PC hardware for CLN ? (Richard B. Kreckel)
Thank you very much for your answers.
----------------------------------------------------------------------
Message: 1 Date: Tue, 24 Jan 2006 16:33:40 +0100 From: Joerg Arndt <jj@suse.de>
I invariably recommend AMD64 these days (socket 939).
[...] I'll follow you and the document : AMD64 ! Are dual core useful ?
Well, you can run two processes in parallel. Or two threads of one process. Very few programs exploit the advantage of multi-core systems. Single core processes may run a little slower on multi-core systems (concurrent access to RAM, cache). You can start in single-CPU mode if that ever matters (boot parameter maxcpus=1 with linux)
I looked at the prices (France) in this cheap store : http://www.ldlc.com/navigation/cat.html?sscat=140025&constructeur=C000000805&refParam1=PA069&refParam2=PA1112¶mValue1=Socket+939¶mValue2=
I noticed on this page : - AMD Athlon 64 3700+ - 2.2 GHz, Cache L2 1 Mo Socket 939 0.09 micron - Core San-Diego (version boîte) 259,01 euros and
fine CPU.
- AMD Athlon 64 X2 Dual-Core 3800+ Socket 939 0.09 micron (version boîte) 338,99 euros.
with that you can start your parallel programming experience ;-) Also: you can run a CPU hog all the time and still have (almost) full performance with your compilations etc. Note that two cores require a bigger power supply. (dunno the difference though, 40Watts?) If silence is a must check noise level beforehand.
Message: 2 Date: Tue, 24 Jan 2006 22:45:39 +0100 From: "Richard B. Kreckel" <kreckel@ginac.de>
[...]
Please, what does 64 bit userland mean ? Maybe recompiling your .cc sources for 64 bits will improve the speed too ?
Yes: e.g. CPU has a 64x64==128 bit integer multiply, takes 4 mults on a 32bit system.
Does g++3.3 is able to produce such code ?
yes
Arbitrary precision arithmetic is a fun stuff and then very important to soften the hard life !
ACK
I wonder if processor cache size is important for integer computations with CLN ? ( I focus on integers. )
_first_level_ cache seems to be more important, and AMD64 has 64k data + 64k instruction (two way associative) intel has a stinkin 8k. second level: AMD64 has >=512k (and 16 way assoc.) that is enough. Insane amounts of cache (e.g. intel itanium with 16MB(!)) indicates that problems of the CPU are papered over.
And RAM amount ?
take >=1G
Dual channel ?
You want that (i.e. socket 939)! Gives you the mem bandwidth which you positively want. (must have two identical pieces of RAM in the machine).
Can we forget hard drive perfs, hoping a huge RAM avoids to swap ?
depends 8-) If you must have processes that cause swap than create the swap partition on a seperate drive. And on the outer tracks. Off the shelf SATA gives you 60MB/sec read performance. Forget PATA btw. But then, insane amounts of RAM never hurt. Take 2G if in your budget. Important: only buy quality RAM! (a 3 year warranty indicates quality). all the best, jj -- p=2^q-1 prime <== q>2, cosh(2^(q-2)*log(2+sqrt(3)))%p=0 Life is hard and then you die.
Fabrice Marchant wrote:
Please, what does 64 bit userland mean ?
sizeof(void*) == sizeof(long) == 64 == intDsize
Maybe recompiling your .cc sources for 64 bits will improve the speed too ?
You betcha!
Does g++3.3 is able to produce such code ?
Yes, sure. Regards -richy. -- Richard B. Kreckel <http://www.ginac.de/~kreckel/>
participants (3)
-
Fabrice Marchant
-
Joerg Arndt
-
Richard B. Kreckel