Sign in to follow this  
talman

Should I even bother with XP?

Recommended Posts

Hello, I'm new here and I've recently purchased a new workstation for my office. It's a Dell Precision Workstation 650 with dual 2.8 Xeon's (hyperthread enabled). I've also purchased 4 18GB Seagate Cheetah 15K.3's to install the OS, swapfile etc.

My question is, based on the reports of SCSI problems in XP, would you recommend that I not even try loading XP and just stick with 2K Pro?

Thanks for the advice!

Share this post


Link to post
Share on other sites

We need some people with confirm that 2K does indeed show better performance on their drive compared to XP. I guess there probably have already been a few who've done this.

What I'm going to do, though it may take me a few days, is to install 2K on a partition of my IDE drive and then see if my 15K drive still runs like mud. If it doesn't, then I'll know that my dismal SCSI performance is XP.

Share this post


Link to post
Share on other sites
Hello, I'm new here and I've recently purchased a new workstation for my office.  It's a Dell Precision Workstation 650 with dual 2.8 Xeon's (hyperthread enabled).  I've  also purchased 4 18GB Seagate Cheetah 15K.3's to install the OS, swapfile etc.

My question is, based on the reports of SCSI problems in XP, would you recommend that I not even try loading XP and just stick with 2K Pro?

Thanks for the advice!

Actually, you're about as firmly wedged between a rock and a hard place as you can get.

XP is generally slower than Win2k across the board, with one specific exception: SMP. Insofar as SMP is concerned, nothing can touch XP for raw performance across the board with apps that are not necessarily themselves SMP-aware.

I'm not sure whether hyperthreading boosts performance, hurts performance, or normally just gets disabled when running true SMP, but I also know that only XP supports it today.

If I had to choose, I'd probably go with XP, on the theory that XP's SCSI performance will improve long before Win2k gets hyperthreading or better at handling SMP (a safe bet; Win2k is officially a semi-discontinued legacy product)... and you'll probably get better performance overall with XP's superior SMP (compromised by its poor SCSI performance) than you'd get with Win2k's better SCSI performance, but less-capable SMP.

Share this post


Link to post
Share on other sites

What XP does specifically that Win2K does not as far as hyperthreading goes is 2 things:

1) XP has a hyperthreading-aware scheduler that will by default use a virtual processor that is available on an idle PHYSICAL processor if one is available. A little diagram to illustrate what happens when only your first virtual processor is in use and a new thread begings:

Physical |Virtual | 

CPU #   | CPU #  | Active

 0      |  0     |  Yes

 0      |  1     |  No <- Win2K will start a thread on this one next

 1      |  2     |  No <- WinXP will start a thread on this one next

 1      |  3     |  No

Because of this scheduling on a multi-CPU hyperthreaded system such as yours Win2K will often be slower than if hyperthreading was turned off. (With a single-CPU hyperthreading system or multi-CPU non-hyperthreaded system its not an issue)

2) Licensing: Programs using Microsoft's license manager to do per-CPU licensing treat a hyperthreaded CPU as 1 CPU under WinXP but 2 CPUs under Win2K.

Personally I dislike XP for many other reasons besides the SCSI issue and would recommend just turning hyperthreading off and using Win2K. But if you really need the hyperthreading with multiple CPUs, its probably worth using XP.

Share this post


Link to post
Share on other sites

We're now three weeks away from heading into 2003 - what do you think the remaining lifecycle is of a product titled Windows 2000? Time to go XP, if only because you will end up there shortly anyway...unless you put a penguin in your box instead :twisted:

Seriously, I have run NT-based OSes on all my Wintel machines for the last 7 years, and I do like XP the best, despite the reputed SCSI issues...I find it just to be improved in a host of different ways, including the UI (which is very subjective, of course).

Future Shock

N.B. Of course, my first home machines ran OSI OS, and later CP/M, so maybe I'm easy to impress...

Share this post


Link to post
Share on other sites
Actually, you're about as firmly wedged between a rock and a hard place as you can get.

XP is generally slower than Win2k across the board, with one specific exception: SMP. Insofar as SMP is concerned, nothing can touch XP for raw performance across the board with apps that are not necessarily themselves SMP-aware.

I'm not sure whether hyperthreading boosts performance, hurts performance, or normally just gets disabled when running true SMP, but I also know that only XP supports it today.

While this is a discussion about Windows, your statement about "nothing" supporting hyperthreading is strong enough that I must interject. Windows XP is not alone in the HyperThreading universe. Linux supports it as well, as do beta copies of .NET server.

Share this post


Link to post
Share on other sites

Is there really a non-beta Linux kernel that properly supports hyperthreading? Or load-balancing non-SMP apps, for that matter? I was under the impression that Linux could be tricked into treating it like SMP, but it would suffer the same performance consequences as Win2k and NT under the same circumstances.

Actually, the last time I checked (admittedly, a few months ago... when the 2.4 kernel was still new), Linux *still* made no effort to efficiently use two CPUs with non-SMP-aware apps. It'll happily let SMP-aware apps put them to good use, but won't itself take it upon itself to load balance threads of non-SMP apps between the two the way Windows 2000 and XP do.

I assume the Linux core developers are sick of getting endlessly kicked and heckled by Windows people over and over again about that particular shortcoming and are actively working to rectify it, but as far as I know it's still not a mainstream Linux reality yet.

Share this post


Link to post
Share on other sites
Is there really a non-beta Linux kernel that properly supports hyperthreading? Or load-balancing non-SMP apps, for that matter? I was under the impression that Linux could be tricked into treating it like SMP, but it would suffer the same performance consequences as Win2k and NT under the same circumstances.
First, there's the "old" scheduler (which kernel 2.4 mainline still has). It indeed has this problem.

Then there's the O(1) scheduler. This is a newer scheduler, and there are several variants of it floating around. One variant is what Red Hat includes in their 2.4.18-XX kernels. Another newer variant will ship in kernel 2.6. Most of the variants of this scheduler aren't fully HT-aware, but they tend to avoid doing bad scheduling too often (I don't remember the details). The result is usually that there's consistently a speed increase with HT but the size of the speed increase is volatile. It's not 100% optimal but it's enough to make HT absolutely worthwhile (speaking from personal experience).

Then there are the fully HT-enabled variants of the O(1) scheduler. Last time I checked (a few months ago, I think) these had stability problems, which is why they're not in the main kernel (unless it was added to 2.5 and I didn't notice).

Actually, the last time I checked (admittedly, a few months ago... when the 2.4 kernel was still new), Linux *still* made no effort to efficiently use two CPUs with non-SMP-aware apps. It'll happily let SMP-aware apps put them to good use, but won't itself take it upon itself to load balance threads of non-SMP apps between the two the way Windows 2000 and XP do.
Linux has been "load balanc[ing] threads of non-SMP apps between the two [CPUs]" for years now (since at least kernel 2.2). Maybe there's a more specific problem it has, but I'm not sure what that could be.

Unless you're talking about the problem that 2.4 (and maybe 2.2) had/has where a single non-threaded non-SMP app using 100% CPU, without another 100% CPU non-threaded non-SMP app running alongside it, would be "bounced" between the two CPUs, degrading performance. That's one of the problems fixed in the O(1) scheduler.

I assume the Linux core developers are sick of getting endlessly kicked and heckled by Windows people over and over again about that particular shortcoming and are actively working to rectify it, but as far as I know it's still not a mainstream Linux reality yet.
Unless I'm misunderstanding you, that shortcoming was fixed years ago (if it ever existed that is). Certainly none of the core developers are being heckled over it (at least not in public).

Share this post


Link to post
Share on other sites

I think I'll go the XP route and hope that some definative fixes come out of Redmond in the near future. For me, this box must be all about multitasking.

Share this post


Link to post
Share on other sites
We're now three weeks away from heading into 2003 - what do you think the remaining lifecycle is of a product titled Windows 2000?  Time to go XP, if only because you will end up there shortly anyway...unless you put a penguin in your box instead :twisted:  

Win2k will be supported till 2005 at least, and I certainly plan to keep using it for a good while yet.

Share this post


Link to post
Share on other sites

First off...

I don't have too much of a problem with SCSI on my XP box (Corporate Edition). I have a 2916LP and a LSI-53c1010. I know under any other OS the drives are noticably faster.

Personally I'd say hell with XP. It's a POS! I only installed it to try it out and becuase the place I work gives it out to us for free. I regret installing it and want to go back to Win2k/98.

Linux would also be good for what you want to do. We have a Quad-Box running linux and it runs fine (our admin did do some stuff in c++ and assembly with it though).

Share this post


Link to post
Share on other sites
Win2k will be supported till 2005 at least, and I certainly plan to keep using it for a good while yet.

Name one OS, post-Windows 3.1, which Microsoft has officially supported for 5 years.

Share this post


Link to post
Share on other sites

As posted on Microsoft's site here , Pradeep is indeed correct - Win2000 Pro will be supported until 2005, according to M$'es newly updated strategy (dated Oct. 15th, 2002).

I stand corrected (and a month and a half out of the know). I believe that earlier plans had made references to a much earlier end of mainstream life, as M$ was widely expected to push W2K users to XP if only for the licensing and support benefits (to M$, of course).

Thanks, Pradeep, for setting that straight - but I STILL recommend XP as an overall better user experience... :D

Future Shock

Share this post


Link to post
Share on other sites
Win2k will be supported till 2005 at least, and I certainly plan to keep using it for a good while yet.

Name one OS, post-Windows 3.1, which Microsoft has officially supported for 5 years.

Windows 95 and Windows Nt 4.0.

Support for Windows 95 officially ended at Midnight of December 31, 2001.

NT 4 roughly the same time.

Share this post


Link to post
Share on other sites

Interesting problem with these new Hyperthreading machines.

HT in the simplest terms splits the CPU into two, so you get "multi-processing" with a single chip. If you've two CPUs, then with HT enabled you've got 4 virtual CPUs.

Problem is, Windows 2000 Pro and Windows XP Pro only support dual CPUs.

So, to run a Xeon workstation with HT enabled on both processors, you need to run Windows 2000 Server.

Personally, I've had no end of trouble with XP on machines that ran 2000 for years without issue. Put 2000 back on and they continue to run crash and hang free.

Share this post


Link to post
Share on other sites

ZStation:

I thought about that the other day. I assumed since it was only 2 physical processors I'd be OK. Apparently not. Can anyone offer a definative answer or link?? Thanks!

Share this post


Link to post
Share on other sites
Interesting problem with these new Hyperthreading machines.

HT in the simplest terms splits the CPU into two, so you get "multi-processing" with a single chip.  If you've two CPUs, then with HT enabled you've got 4 virtual CPUs.

Problem is, Windows 2000 Pro and Windows XP Pro only support dual CPUs. 

So, to run a Xeon workstation with HT enabled on both processors, you need to run Windows 2000 Server.

Personally, I've had no end of trouble with XP on machines that ran 2000 for years without issue.  Put 2000 back on and they continue to run crash and hang free.

No. Windows XP is capable of recognizing between physical and logical CPUs. I'm currently running with hyperthreading enabled and there are 4 processors shown. Windows 2000 is not capable of recognizing between logical and physical, so you don't want to enable it on any of the versions.

Share this post


Link to post
Share on other sites

Not necessarily. You might be better off using Win2k without hyperthreading, and utilizing all the power that your SCSI array will have. (Sounds like the drives will have a lot of work to do) It all depends on the application and if it is CPU or Hard Drive dependent.

Share this post


Link to post
Share on other sites
Not necessarily. You might be better off using Win2k without hyperthreading, and utilizing all the power that your SCSI array will have. (Sounds like the drives will have a lot of work to do) It all depends on the application and if it is CPU or Hard Drive dependent.

Good point. Most of the apps I use are not multiproc enabled. Guess I should research how much of a hit the array would take in XP before deciding.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this