FPGARelated.com
Forums

Hyperthreading vs. Dual proc

Started by Martin Euredjian December 22, 2003
I just got done reading a through a couple of recent threads on the subject
of "the best machine" to build for Xilinx tools.  Last week I had a
conversation the head a a design group who said that "getting hyperthreading
systems for my engineers made a huge difference in performance".

I'm looking to replace a 1.8GHz P4 with the latest and greatest and I find
myself confused between hyperthreading and dual processor boxes as two
distinct options at (maybe) different ends of the scale.  Also, Xeon vs. P4?

Sorry to stirr-up a slightly different version of a recent thread.



-- 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Martin Euredjian

To send private email:
0_0_0_0_@pacbell.net
where
"0_0_0_0_"  =  "martineu"


On Mon, 22 Dec 2003 10:26:20 GMT, "Martin Euredjian"
<0_0_0_0_@pacbell.net> wrote:

>I just got done reading a through a couple of recent threads on the subject >of "the best machine" to build for Xilinx tools. Last week I had a >conversation the head a a design group who said that "getting hyperthreading >systems for my engineers made a huge difference in performance". > >I'm looking to replace a 1.8GHz P4 with the latest and greatest and I find >myself confused between hyperthreading and dual processor boxes as two >distinct options at (maybe) different ends of the scale. Also, Xeon vs. P4? > >Sorry to stirr-up a slightly different version of a recent thread.
We have a dual processor box here with hyperthreading (i.e. 2 processors, each capable of running 2 threads at the same time) that we use for running xilinx software. I don't notice any great difference in speed when hyperthreading is switched on or off. I have it switched *off* at the moment, because that is supposed to be faster for the single threaded apps we are running (at most two apps at a time). The benefit of hyperthreading would be much more significant if there was only a single processor, or if there were lots of threads running. Note that hyperthreading doesn't work with win2k; you need XP (or SMP Linux). Regards, Allan.
Hyperthreading is a take-off on the parallel processing direction utilizing
the numerous execution units on the die. I believe it was cost-effective as
well.  The advantages are savings in real-estate on the board over a
multiple chip architecture. Utilization by applications at present are
scarce. I hoping Intel develops this further as on-chip parallel processing
would be (what I believe)  the best way to over-come speed and power
concerns.


On Mon, 22 Dec 2003 21:48:05 +1100, Allan Herriman wrote:

> On Mon, 22 Dec 2003 10:26:20 GMT, "Martin Euredjian" > <0_0_0_0_@pacbell.net> wrote: > >>I just got done reading a through a couple of recent threads on the subject >>of "the best machine" to build for Xilinx tools. Last week I had a >>conversation the head a a design group who said that "getting hyperthreading >>systems for my engineers made a huge difference in performance". >> >>I'm looking to replace a 1.8GHz P4 with the latest and greatest and I find >>myself confused between hyperthreading and dual processor boxes as two >>distinct options at (maybe) different ends of the scale. Also, Xeon vs. P4? >> >>Sorry to stirr-up a slightly different version of a recent thread. > > We have a dual processor box here with hyperthreading (i.e. 2 > processors, each capable of running 2 threads at the same time) that > we use for running xilinx software. > > I don't notice any great difference in speed when hyperthreading is > switched on or off. I have it switched *off* at the moment, because > that is supposed to be faster for the single threaded apps we are > running (at most two apps at a time). > > The benefit of hyperthreading would be much more significant if there > was only a single processor, or if there were lots of threads running. > > Note that hyperthreading doesn't work with win2k; you need XP (or SMP > Linux). > > Regards, > Allan.
Dual processors are very useful, hyperthreading in it's current incarnation on the P4 isn't. I have a dual Xeon system, I did a lot of benchmarking when I got it and found that hyperthreading improved the throughput slightly (about 10%) while hurting single thread performance by about 25%. It's not clear why hyperthreading works so badly on the P4, it could be a hardware issue, when hyperthreading is on the number of registers available to a single thread is halved as is the cache size. It's also prossible that the 2.4.x scheduler doesn't do a good job on hyperthreaded systems. It's possible that hyperthreading will work better on 2.6 kernels, I haven't tried 2.6 yet so I don't know. In the long run dual Opterons should do better than dual Xeons because each Opteron has it's own memory system so the total available memory bandwidth of a dual Opteron system is twice that of a dual Xeon. However memory access in an Opteron system is non-uniform (NUMA), specifically access to RAM on the other processor is much slower than access to local RAM. The 2.6 kernel is supposed to do a good job with NUMA systems, chances are the 2.4 kernel is sub-optimal in this area so it's possible that a Dual Opteron system won't live up to it's potential with a current distribution. I have minimal experience with Opterons so I'm not really qualified to speak about their current performance except to say that even with the 2.4 kernel it's competitive with the the Xeon (the dual Opteron system that I tried was roughly equal to a dual 3GHz Xeon when doing a big make -j 2).
In article <gFzFb.1536$zK7.50@newssvr25.news.prodigy.com>,
Martin Euredjian <0_0_0_0_@pacbell.net> wrote:
>I just got done reading a through a couple of recent threads on the subject >of "the best machine" to build for Xilinx tools. Last week I had a >conversation the head a a design group who said that "getting hyperthreading >systems for my engineers made a huge difference in performance". > >I'm looking to replace a 1.8GHz P4 with the latest and greatest and I find >myself confused between hyperthreading and dual processor boxes as two >distinct options at (maybe) different ends of the scale. Also, Xeon vs. P4?
SMT (Hyperthreading) and SMP (Symmetric multiprocessing) are orthoginal and complementary. Get either just SMT (single processor) or SMP+SMT (Dual processor using P4-HT or Xeons). Xeons have much better cache, but are otherwise effectively identical in function. Some of the Xeon chipsets are better (eg, better ECC support etc). GET ECC MEMORY/ECC SUPPORTING MOTHERBOARD. -- Nicholas C. Weaver nweaver@cs.berkeley.edu
Apparently there's something called "Pentium4 Extreme"?
Are marketing guys making it confusing on purpose?

-- 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Martin Euredjian

To send private email:
0_0_0_0_@pacbell.net
where
"0_0_0_0_"  =  "martineu"



"Nicholas C. Weaver" <nweaver@ribbit.CS.Berkeley.EDU> wrote in message
news:bs7t7a$2n2s$1@agate.berkeley.edu...
> In article <gFzFb.1536$zK7.50@newssvr25.news.prodigy.com>, > Martin Euredjian <0_0_0_0_@pacbell.net> wrote: > >I just got done reading a through a couple of recent threads on the
subject
> >of "the best machine" to build for Xilinx tools. Last week I had a > >conversation the head a a design group who said that "getting
hyperthreading
> >systems for my engineers made a huge difference in performance". > > > >I'm looking to replace a 1.8GHz P4 with the latest and greatest and I
find
> >myself confused between hyperthreading and dual processor boxes as two > >distinct options at (maybe) different ends of the scale. Also, Xeon vs.
P4?
> > SMT (Hyperthreading) and SMP (Symmetric multiprocessing) are > orthoginal and complementary. > > Get either just SMT (single processor) or SMP+SMT (Dual processor > using P4-HT or Xeons). > > Xeons have much better cache, but are otherwise effectively identical > in function. Some of the Xeon chipsets are better (eg, better ECC > support etc). > > GET ECC MEMORY/ECC SUPPORTING MOTHERBOARD. > > -- > Nicholas C. Weaver nweaver@cs.berkeley.edu
> I'm looking to replace a 1.8GHz P4 with the latest and greatest and I find > myself confused between hyperthreading and dual processor boxes as two > distinct options at (maybe) different ends of the scale. Also, Xeon vs.
P4? I don't believe Xilinx is utilizing this feature (Hyperthreading-HT) availible in the later P4 chips. It is not an intrinsic feature that software would utilize (ie such as a faster processor speed). SW would have to be designed to take advantage of this. Currently XP Professional utilizes the HT for some operating system functions (ie print) but can not specifically in the application. There are issues with cache utilization in hyperthreading where performance could actually be degraded as well as potential bottlenecking the FSB with concurrent processes - scheduling would again burden the application. I would personally like to see HT utilized for MTI simulation.
"Martin Euredjian" <0_0_0_0_@pacbell.net> wrote in message
news:H1ZFb.1797$oA5.541@newssvr25.news.prodigy.com...
> Apparently there's something called "Pentium4 Extreme"? > Are marketing guys making it confusing on purpose? > > -- > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ > Martin Euredjian
Yes, they took a xeon, and put it in a p4 package to try and counter the athlon 64. Mainly to make sure they stay ahead in the bench tables on the various games web sites. Can only be run in single proccessor system. Alex Gibson
Allan Herriman <allan.herriman.hates.spam@ctam.com.au.invalid> writes:

> We have a dual processor box here with hyperthreading (i.e. 2 > processors, each capable of running 2 threads at the same time) that > we use for running xilinx software. > > I don't notice any great difference in speed when hyperthreading is > switched on or off. I have it switched *off* at the moment, because > that is supposed to be faster for the single threaded apps we are > running (at most two apps at a time). > > The benefit of hyperthreading would be much more significant if there > was only a single processor, or if there were lots of threads running. >
I've found that enabling HT makes my machine useful for writing documentation, reading email and other non-demanding tasks whilst PAR is running.
> Note that hyperthreading doesn't work with win2k; you need XP (or SMP > Linux). >
Not quite - Win2K treats the "extra" processor as a whole extra (real) processor for scheduling purposes. Apparantly the XP scheduler understands the difference, and schedules things differently - I don't know what the differences are though. Cheers, Martin -- martin.j.thompson@trw.com TRW Conekt, Solihull, UK http://www.trw.com/conekt
"Martin Thompson" <martin.j.thompson@trw.com> wrote in message
news:u65fqln2u.fsf@trw.com...
> Allan Herriman <allan.herriman.hates.spam@ctam.com.au.invalid> writes: > > > We have a dual processor box here with hyperthreading (i.e. 2 > > processors, each capable of running 2 threads at the same time) that > > we use for running xilinx software. > > > > I don't notice any great difference in speed when hyperthreading is > > switched on or off. I have it switched *off* at the moment, because > > that is supposed to be faster for the single threaded apps we are > > running (at most two apps at a time). > > > > The benefit of hyperthreading would be much more significant if there > > was only a single processor, or if there were lots of threads running. > > > > I've found that enabling HT makes my machine useful for writing > documentation, reading email and other non-demanding tasks whilst PAR > is running. > > > Note that hyperthreading doesn't work with win2k; you need XP (or SMP > > Linux). > > > > Not quite - Win2K treats the "extra" processor as a whole extra (real) > processor for scheduling purposes. Apparantly the XP scheduler > understands the difference, and schedules things differently - I don't > know what the differences are though. >
I think (but is not sure) that if you have a Multiprocessing system, then there could be a problem using HT. I believe that Win2k and maybe WinXP restricts you to use 2 processors. If you want to use 2 physical processors with HT enabled, then this should count as 4 processors, and you will maybe need the server edition of Win2k/XP. I see that the major benefit is improved response time when windows (mis) behaves in the background... Got my Multiprocessor server board mainly to get more PCI slots. -- Best Regards Ulf at atmel dot com These comments are intended to be my own opinion and they may, or may not be shared by my employer, Atmel Sweden.