Jump to content
Strawberry Orange Banana Lime Leaf Slate Sky Blueberry Grape Watermelon Chocolate Marble
Strawberry Orange Banana Lime Leaf Slate Sky Blueberry Grape Watermelon Chocolate Marble

Colonel O'Neill

Processor management in 2000

Recommended Posts

Does Windows 2000 not use/manage dual-cores very efficiently?

For example: In a Thinkpad X61 with C2D 2.1 GHz processor.

Windows 2000 runs it at max speed all the time and the temperature stays up at 70-90 degrees.

Windows XP runs it with automatic speed adjustment and it's temperature is around 40 degrees.

On Windows 2000, I run RMClock and it automatically adjusts things but only lowers it down to 50 degrees, with some loss of responsiveness.

Could Windows 2000 be improved in this respect? (assuming it's not an error I made while setting it up).

Share this post


Link to post
Share on other sites

Fine, that's exactly what I was looking for!

This trouble specific to multiprocessors on W2k is known, Microsoft has issued a patch to correct it (post-Sp4 I believe), I read it somewhere but can't find it any more.

So if someone knows where this patch hides, please do tell us!

Share this post


Link to post
Share on other sites
Fine, that's exactly what I was looking for!

This trouble specific to multiprocessors on W2k is known, Microsoft has issued a patch to correct it (post-Sp4 I believe), I read it somewhere but can't find it any more.

So if someone knows where this patch hides, please do tell us!

I too would be very interested in more information about this.

I have dual Xeons and they both run extremely hot all the time.

If there's any way of helping with this issue I'd love to know!

:)

Share this post


Link to post
Share on other sites

If we're talking about TRUE multiprocessors (and not multi-core, or worse, hyperthreading), Windows 2000 should work fine without any additional changes. However, if we're talking about newer CPU parts that are multicore and/or hyperthreaded, Windows 2000's scheduler does not "understand" that these may be logical processors on physical CPUs (or in the case of hyperthreading, not even a real processor) and Windows 2000 will schedule across all "processors" equally regardless of whether or not they're a dedicated CPU, a dedicated core on a multi-core die, or an HT-enabled virtual processor (whereas XP "understands" hyperthreading, and Vista/2008 and Win7 actually understand the difference between a dedicated CPU and a CPU with multiple cores as well, and change processor scheduling accordingly). There have been fixes to Windows 2000 for AMD timer issues and for Services For Macintosh race conditions on hyperthreaded CPUs, but there's no patch to make Windows 2000 "understand" multiple cores or hyperthreaded CPUs.

Usually this is seen with hyperthreading and less with multicore chips. Is that the case here?

Share this post


Link to post
Share on other sites
If we're talking about TRUE multiprocessors (and not multi-core, or worse, hyperthreading), Windows 2000 should work fine without any additional changes. However, if we're talking about newer CPU parts that are multicore and/or hyperthreaded, Windows 2000's scheduler does not "understand" that these may be logical processors on physical CPUs (or in the case of hyperthreading, not even a real processor) and Windows 2000 will schedule across all "processors" equally regardless of whether or not they're a dedicated CPU, a dedicated core on a multi-core die, or an HT-enabled virtual processor (whereas XP "understands" hyperthreading, and Vista/2008 and Win7 actually understand the difference between a dedicated CPU and a CPU with multiple cores as well, and change processor scheduling accordingly). There have been fixes to Windows 2000 for AMD timer issues and for Services For Macintosh race conditions on hyperthreaded CPUs, but there's no patch to make Windows 2000 "understand" multiple cores or hyperthreaded CPUs.

Usually this is seen with hyperthreading and less with multicore chips. Is that the case here?

Ah, I've got two separate physical processors, presumably single core, so am I right in assuming that there's nothing I can do to improve things as far as how hot the processors run (apart from more and bigger cooling fans of course!)?

:lol:

Share this post


Link to post
Share on other sites

This is (according to Windows 2000) an Intel Core 2 Duo CPU T8100 @ 2.10GHz.

@cluberti: According to Wikipedia this is a multi-core chip. It does appear that Windows 2000 experiences some random hangs which resolve sometimes...

@pointertovoid: I will try to find a patch... Hoping this turns up somewhere.

----

Just wondering, does all versions of 2000 not understand them properly, or will one of the server editions do?

Share this post


Link to post
Share on other sites

All have the same limitations - technically most of that is still NT4 code, and didn't change much for XP or 2003 (it's better, but it's still somewhat inefficient). You would have to use an OS designed AFTER the advent of such multicore CPUs before you can really use them properly (XP came out before multicore, and 2003 is built on that codebase - however, Vista and 2008 were out after, and are tweaked and written to better utilize these types of CPUs).

What specifically are you trying to do? If all you want is to reduce CPU power and heat consumption, you can use apps (like RMClock or Intel SpeedStep, if supported) to try and compensate for Windows 2000's shortcomings.

Share this post


Link to post
Share on other sites

RMClock works for what I need but only when I'm logged in. RMClock says the temperature is 80 degrees immediately when it starts (which means the processor is at 80 degrees while booting up).

After reading the Wikipedia article on SpeedStep (and realizing my futile attempts at finding a Microsoft hotfix for 2000), I discovered the SpeedStep applet from the manufacturer Lenovo.

So I'm going to see how this works... Hopefully it will. :)

Unfortunately, the applet does not show up in Control Panel, nor does the computer fan stop working.

Edited by Colonel O'Neill

Share this post


Link to post
Share on other sites

One thing you also may wish to consider is that your laptop (Thinkpad x61) wasn't designed for Windows 2000 (it ships with Vista, I believe), and may not have the necessary apps and utilities to run said OS properly.

Share this post


Link to post
Share on other sites

True, the current Thinkpads all ship with Vista (except for the extra $ downgrade option).

This one was a year or two ago and it came preinstalled with XP. (Recovery partition's gone somehow.)

On the Lenovo website, it lists almost every driver as Vista 64bit, Vista 32bit and XP. Some of the drivers will say 2000, others for 2000 can be found through a redirect link at the bottom of every page. (Yay! Lenovo still has 2000 drivers.)

RMClock does the job very very well, except during booting.

Slightly Offtopic:

There's no working ICH8 SATA driver for Win2K, so hibernating takes about five minutes compared to 45 seconds on XP with 1GB of RAM. Kinda a letdown as I use Hibernate a lot. Surprisingly it resumes from hibernate in less than fifteen seconds from 2000. And there's no WPA for 2000, even with the Intel and Lenovo wireless configurators. :(

Share this post


Link to post
Share on other sites

Hibernate takes basically as long as plain old rebooting (without those storage driver problems which make it even slower), it's just that your stuff is already open. And S3 sleep means losing work when your battery runs out.

Vista's sleep is FAR better. Resuming is instantaneous just like S3 sleep, and you never lose work just like hibernate (along with better scheduling and everything else). Same for Win7's.

Share this post


Link to post
Share on other sites

As was already said, W2k ignores hyperthreading and multicore, and treats everything as if they were separate packages. Which means that disabling hyperthreading is often a good idea - and is recommended by Microsoft - if you have enough packages or cores to saturate your W2k's licence capacity.

For instance, if you have a hyperthreaded dual-core and your Bios numbers them 1-2 for the first core and 3-4 for the second one, a W2k Pro - which allows 2 "processors" - will use only the first core with HT seen as two processors, and will let the second core run empty at full speed without the patch.

In such a case, disabling HT would let W2k Pro run one thread on each core: far better.

-----

Just because W2k ignores hyperthreading and multicore, the post-Sp4 patch from Microsoft works equally on separately packaged processors and on multicores, by reducing the clock frequency of unused computing capacity.

So finding the patch would be useful for every case.

I don't remember details about that patch. My guess is that reducing clock frequency works identically on W2k Pro, Server, Advanced Server, Datacenter. Up to now, I've seen Server-specific patches for Server activities (Active Directory, Dns, Wins, Remote Desktop) but none for hardware use.

And all variants of W2k treat HT and multicore the same way. In this aspect, the only difference is the maximum number of "processors" their licence lets them use. W2k doesn't imagine neither that several cores might share a common L2 or L3 - so its use is a bit less than optimum - and is unable of using separated Ram connected to separated Cpu packages, as is the case in a mobo carrying several Core i7 packages.

-----

Having both W2k (=Nt5.0) and Nt4, I can tell you only a few percent of all system files are common. For instance, Nt4 ran most system core software in user mode and W2k does it in supervisor mode - this alone prevents using the same code. And as hardware detection and use was completely rewritten for W2k (Nt4 used the Bios for low-level operations, Nt5 doesn't), you may expect different behaviours in the way Nt4 and W2k use hardware.

-----

Col. O'Neill : a few blocks away from the present discussion, people had success using Ich7 drivers for W2k on Ich8. And BlackWingCat ran a Raid driver for W2k on ich9r - I still haven't looked in-depth how. I've checked that its Sys file calls only entry points available in W2k, but is it an Intel driver used on Ich9r, or did BlackWingCat rewrite an Xp Ich10r driver as he uses to do? This guy programs W2k drivers and dll in assembler, I wish I could read his site in Japanese.

Also, UniAta driver is released for Ich8, Ich8r, Ich9 and Ich9r. No Raid, no Ahci function up to now, but works for Nt4-2k-Xp-2k3.

-----

Bootup times: My PIII +pc133 takes 40s to boot W2k so anything longer on a Core is disappointing for sure, especially as the Bios should propose a legacy mode with performance similar to P-Ata133 which is very good. What does benchmark software say, especially Atto?

http://www.techpowerup.com/downloads/1137/...mark_v2.34.html

And did you use at least Intel's InfInst? They work very officially for Ich8 (and even X58's Ich10r) on W2k, even though they don't bring Ahci nor Raid.

Anyway, I've received my P45 and E8600, so I should know soon how W2k behaves on them.

Share this post


Link to post
Share on other sites
Does Windows 2000 not use/manage dual-cores very efficiently?

For example: In a Thinkpad X61 with C2D 2.1 GHz processor.

Windows 2000 runs it at max speed all the time and the temperature stays up at 70-90 degrees.

Windows XP runs it with automatic speed adjustment and it's temperature is around 40 degrees.

On Windows 2000, I run RMClock and it automatically adjusts things but only lowers it down to 50 degrees, with some loss of responsiveness.

Could Windows 2000 be improved in this respect? (assuming it's not an error I made while setting it up).

This should fix it:

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\HAL]
"14140000FFFFFFFF"=dword:00000010

Info:

http://support.microsoft.com/kb/919521

Edited by Groucho2004

Share this post


Link to post
Share on other sites
This should fix it:

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\HAL]
"14140000FFFFFFFF"=dword:00000010

Info:

http://support.microsoft.com/kb/919521

This will change Windows 2000's HAL to use the PMTimer instead of the ACPI timer. It might drop the CPU by a bit, but nowhere near as far as the other apps will. Using the PMTimer will lessen the load on a machine with an ACPI timer issue, but this is more relevant on AMD chips than Intel chips, and will do little on Intel chips (this makes a huge difference on AMD processors).

Share this post


Link to post
Share on other sites
This should fix it:

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\HAL]
"14140000FFFFFFFF"=dword:00000010

Info:

http://support.microsoft.com/kb/919521

This will change Windows 2000's HAL to use the PMTimer instead of the ACPI timer. It might drop the CPU by a bit, but nowhere near as far as the other apps will. Using the PMTimer will lessen the load on a machine with an ACPI timer issue, but this is more relevant on AMD chips than Intel chips, and will do little on Intel chips (this makes a huge difference on AMD processors).

I suppose you're right. I only applied this fix a long time ago on an old computer with VIA K8T800Pro and an Athlon 4000+ which worked fine.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...