Do you know?
-
What do you mean optimized?
XP home can do multicore.
XP Pro and MCE can do 2 physical processors.
I'd guess M$ knew that multicore was future. It's other apps that are kind of behind taking advantage of these new processors. -
They can do multicore, but Vista is apparantly optimized for it... Or so I heard...
And thats really the only way to explain how a bigger, more ram intensive system can run games faster... -
-
Best Foot Forward Notebook Evangelist
No, from what I've read. (take with a pinch of salt) Home Basic is not optimised for dual core operation. All the rest do however.
-
Both Vista, XP, 2000 and Windows 95/98 are multithreaded. All of them are "optimized" for multicore.
There is no magic needed. The OS is made of a ton of processes, each of which typically consist of several threads. That means the OS itself will use multicore systems as long as the scheduler is capable of assigning tasks to multiple cores.
The easiest way to check whether your OS can do that is to go into task manager and see how many CPU's are listed. If it only shows one, on a multicore system, then you're running a version of Windows on which this is disabled. (My guess is you might see this on Win95, maybe 98 as well. But 2k and XP can certainly handle multiple cores as well as Vista)
There's no particular "optimization" involved.
The OS holds a queue of threads that wish to execute. Every x milliseconds, the OS interrupts the running thread(s), places them at the back of the queue, and pick new ones from the front of the queue to execute. If the system has 4 cores, it picks 4 threads at a time. If it has one, it picks just one.
That is all the OS does, or *can* do to take advantage of multicore systems.
There aren't really many optimizations possible.
It still relies on the applications (and the OS itself) to be programmed to use multiple threads, but the OS certainly does that, and many regular apps do the same.
But actually, if it *was* possible to offload processing like that, it would by far be the most efficient way of working. It would free the developer from having to worry about threads at all.
But no, there's no big difference in how Vista and other OS'es handles multiple threads. The scheduler might work slightly differently (but they can only make very subtle changes, because whatever else, the scheduler is supposed to ensure that all threads get executed regularly, and make sure all threads are treated "fairly". -
^ Ah thanks for clearing that up.
Anyways The Home Basic and Home Premium editions won't support dual processors
Then found this from the MS FAQ
-
Actually Osiris, you knew more of what you were talking about
.
I only have Vista on my Pentium D (I'm only gonna put it on my dual core machines, the athlon machines can stay in xp land), and I notice something...
In XP, one core is mainly used all the way, and the second core is used a tad...
In Vista however, both cores are used equally...
I noticed this was the case whenever you did optimizations for dual core games...
If a game is optimized for dual core but isn't turned on, only one core is used while the other core is used a tad. If it's optimized, both cores show equal usage.
I'm noticing the equal usage in Vista.
I also notice slightly better usage of the two cores for single player games, and better usage for dual core games, which explains why they run faster.
I have a G15, so core usage shows up on the lcd screen. I specifically moved it to the pentium d to test this out.
However, after upgrading my pc again, I really don't feel like getting an ultimate edition of Vista. I'm seriously, SERIOUSLY, considering the business version, as opposed to home premium, which is why I'm asking about home premium.
Both home and home premium support dual cores, no questions asked. But are they optimized? That's all I want to know. Anyone with any experience, let me know. -
CalebSchmerge Woof NBR Reviewer
From what I know and have read, Zellio and Osiris are close. What Jalf said is still correct though. The OS just tells which processor what to do, then interrupts and does it again. I would be more concerned about your programs running on the OS and how they handle the dual cores/processors, since they can have a greater performance impact.
-
It's entirely understandable.
The OS controls everything, when you have an OS that handles multi core, and a game that handles multi core, then things move faster...
And yes, I have noticed slightly better optimization with single threaded apps too...
My point is though, even though XP said it was for dual core processors, it was really single core. Try running a G15, or checking your processor usage. You'll find in XP mostly one core is used, even with the dual core optimizer, while with vista, it's more optmized, much more even.
That's what I meant.
So, are all versions like this? -
FYI, there are also different schedulers, as per what Jalf said. The scheduler for Vista may have been improved. I know that there was a constant-time scheduler for Linux that was introduced just a few years ago, and that has made a huge difference in process switching for Linux. It's not out of the question that Windows had a similar improvement between it's XP and Vista schedulers. Just because the processor can only be busy or not busy doesn't mean that it can't switch between the states more efficiently.
-
-
CalebSchmerge Woof NBR Reviewer
With the update its always best to install straight to SP2, instead of upgrade. Lots of people had trouble with the update.
-
I've done the dual core fix, I've had many reformats of windows xp (I used to hate it, but now I find reformatting every 3 months to be good). Vista uses two cores much more efficently.
-
Dude... every 3 months? Are you serious? Why don't you get an operating system that works, or learn to keep yours working?
-
if by utilizes dual cores more effectively you mean splits the threads across the cores, sure. Unless Intel changed the L1 cache access, utilizing 25% of each core on your c2d is essentially the same as using 50% of one
I dunno if this was stated clearly before, but all versions of Vista can handle multiple cores on a single chip, but only certain versions can use multiple physical chips ( SMP). -
There is no "optimization" to perform.
When you see a difference, it is more likely because:
- Certain bug fixes (XP has a few oddities that can occasionally cause problems with multicore systems. Most of this can be fixed with hotfixes, patches or registry tweaks though). But some, mostly related to timers, is a bit trickier, and Vista might be able to solve those bugs more efficiently. But then the question isn't "Is Vista optimized for dualcore", but rather "Is Vista less buggy regarding multithreading".
- Different drivers (Quite simply, a driver for Vista is a month or two old at most. That means it's written when dualcore is pretty common, which means it'll typically be better optimized for multithreading. By comparison, XP drivers are typically either relatively old, or simple bugfixes on top of old drivers.
And finally, increasing load on your second core doesn't neccesarily mean Vista is better. It could just mean Vista requires more CPU power to do the same... Only if you can also say overall performance is better, does it become really interesting. (So far, Vista's performance in games at least seems to be lower though)
It's very limited what the OS itself can do. Pitabred is right, the scheduler can be changed, but as far as I'm aware, it uses basically the same strategy (fixed priority, round robin, extended timeslice to the process that has focus)
They may have tweaked how long a timeslice is slightly, but I doubt they've done anything really noticeable. It's a pretty good scheduler, optimized for single-user systems where you usually only process that requires serious CPU time, and that is at the foreground of the UI.
Servers (Including Windows Server), use a slightly different strategy because they're less concerned with responsiveness, and more with throughput.
(By comparison, Linux and *nix'es have historically been rather shaky at this stuff, actually. Preemptive scheduling wasn't implemented until relatively late, and is still "an optional extra", for example. Moreover, Linux used to use heavily server-oriented schedulers, but over the last few years, as it's been encroaching on the desktop market, it's been changed to use much more Windows-like schedulers (shorter timeslices for greater responsiveness, at the cost of processing throughput)
And OSX threading is completely messed up, let's not even go there! -
Well.... Sometimes 3 months. More like every 3-6 months.
In the desktop realm, people format alot.
EDIT: Jalf, that is the thing, it DOES speed up performance, when all you do is dual core. On a dual core chip (the pentium d, obviously), and a dual core game (Quake 4), I got 20% performance increase. Doom 3, a single core game, gave me 10-20% performance DECREASE. I was able to add mods to Quake 4 and keep it running at 60 fps, I had to get rid of mods on Doom 3 I had in Xp. -
it's totally the application causing the performance changes. if the application basically breaks itself down into multiple little bits to process (threads,) it can take advantage of the multiple cores, quake 4 had a multi-threading patch released post-release, that's what made the difference - the same boost came on my desktop running XP. if the app is basically one big chunk to process, only one core can be used.
-
Um, Quake 4 with the multithreading patch in XP, versus Quake 4 in Vista with multithreading patch. Vista was 20% faster.
-
20%? I find it VERY hard to believe that Quake4 was that CPU limited on an x1900xt (i.e., it's impossible). Are you sure you weren't running at different resolutions or with AA or AF force-enabled on XP and not enabled on Vista?
Are all versions of Vista optimized for dual core?
Discussion in 'Windows OS and Software' started by Zellio, Dec 10, 2006.