Generational Windows Multicore Performance Tests
snydeq writes "Windows XP, Windows Vista, and (soon) Windows 7 all support SMP out of the box, but as InfoWorld's Randall Kennedy notes, 'experience has shown that multiprocessing across discrete CPUs is not the same thing as multiprocessing across integrated cores within the same CPU.' As such, Kennedy set out to stress the multiprocessing capabilities of Windows XP, Windows Vista, and Windows 7 in dual-core and quad-core performance tests. The comprehensive, multiprocess workload tests were undertaken to document scalability, execution efficiency, and raw performance of workloads. 'What I found may surprise you,' Kennedy writes. 'Not only does Microsoft have a firm grasp of multicore tuning, but its scalability story promises to keep getting better with time. In other words, Windows Vista and Windows 7 are poised to reap ever greater performance benefits as Intel and AMD extend the number of cores in future editions of their processors.'"
Are we supposed to be surprised that the leading OS vendor, who's had deep, intertwined relationships for decades with hardware makers is exploiting that hardware properly?
Honest question: where's the news here?
Not really, wasn't one of the major complaints about Vista that they were changing the OS architecture to tune multicore processors to the detriment of single core processors?
Some great mathematics in this review... it also appears as if Vista isn't just not solving the problems presented to it, but also adds new ones to increase its own workload.
Fascinating...
And XP is still faster than vista or 7, even on 4 cores... And he speculates that it would be faster on 8 (although he didn't measure that)
Scalability doesn't matter if you're still slower in absolute terms on systems that are available commercially at a reasonable price. (going past 8 cores these days is a very large price jump per core)
Ian Ameline
I tried RTFA (sorry, please mod me done for this ;) but, after clicked the "print" version, I couldn't find anything that looked like a benchmark report. No numbers. No tables. No graphs. All I saw was a page of [[weasel words]] or something like that.
Sigh..
Colorless green Cthulhu waits dreaming furiously.
It is interesting that WinXP is still better in terms of performance than either. The article suggests that Win7 and Vista would be better on systems that hypothetically had 16+ cores.
/., the most popular thing to do is run VMs with virtual instances of Windows, which reduces all the hassles associated with dealing with win cruft. Got a worm? restore machine. Drivers made system unstable? restore machine. The vms are typically only given 1-2 cores, the exact use case where WinXP does way better than its successors.
But nowadays, especially in tech savvy crowds like on
So even if we move to a world with 16+ core processors, if Win7 cannot do better than a 10 year old OS, in common scenarios, how can that be called progress?
Legally obligatory sig : My opinions are my own... etc etc
When you see bullshit buzzwords in articles that look as if they've been written by marketing people then look out. Marketing-led, buzzword-laden people always have stories. Are we really supposed to be impressed that the richest OS developer in the world can actually create a SMP capable OS that actually works reasonably given that SMP systems have been around for years? From the tone of the article it's like they're shocked that it works.
Basically, this article states the obvious: Windows XP 64 is just plain faster than Vista 64 or Win7 64. By a factor of 20-40%. But to understand why, you need to read the MONEY quote. Here it is:
It's the DRM baby. You strip that out of the Kernel, and Vista and Win7 will EASILY outpace XP with their more advanced and flexible SMP capability. Until Microsoft understands that people DO NOT WANT DRM and removes it from their newer OSes, these new OSes will continue to suffer from performance problems, and thusly, acceptance and sales problems.
Come on Microsoft. Apple has figured it out, DRM is a sales loser. Do you really want to keep wasting time on a loser technology in the midst of a global recession? You blew it with Vista, but you still have a chance with Win7. Offer people a DRM-Free kernel and Win7 will FLY off the shelves.
Official Heretic from the "Church of Global Warming". Proven right thanks to whistle blowers. AGW = Flat Earth Theory
First, go to the real story, bypassing an intermediate blog and two interstitial ads.
Second, the article says the performance of the newer OSs is worse than XP. "In fact, during extensive multiprocess benchmark testing, Windows 7 essentially mirrored Vista in almost every scenario. Database tasks? Roughly 118 percent slower than XP on dual-core (Vista was 92 percent slower) and 19 percent slower than XP on quad-core (identical to Vista). Workflow? A respectable 38 percent slower than XP on dual-core (Vista was 98 percent slower) and 59 percent slower on quad-core (Vista was 66 percent slower)."
Third, there are no tables or graphs anywhere in these articles, and very few numbers. As a benchmarking article, this is awful.
From page 2 of TFA:
(emphasis mine)
So we are supposed to believe that the database test on Windows 7 runs 571 percent faster on a quad-core compared to a dual core?
That would be a factor of 6.71, or in terms of performance per core, a factor of 3.355. In other words, the quad core would do 3.355 times more work per core than the dual core. That sounds not very believable, considering similar tests the German C't magazine has done in the past (for Linux and Windows 2000). In those tests, both OS scaled at best linear with the number of CPUs, so the "performance boost" from going from dual to quad core was at best 100% (in most tests more like 80%).
Maybe I'm misunderstanding what Randall C. Kennedy wanted to say. Here it would have helped if he posted his raw data and test configuration, as most reputable testers do. But as he only posted a few end results, I can only say that his numbers seem bogus. I rated the Infoworld article with 1 of 5 points.
C - the footgun of programming languages
As a HPC developer, there's a few areas where XP falls down. With the release of the new Core i7 line from Intel, the end of the FSB is in sight. Both Intel and AMD now use a ccNUMA memory architecture, which has tremendous implications on software design. In short, if your software isn't aware of the system's memory topology, you're going to end up with most of your memory traffic going over the processor interconnects and that's a substantial performance hit over going directly to memory (2-4 times slower).
XP's NUMA support is very weak. Sometimes the easiest solution is to write your own allocator (and preallocate huge chunks of ram).
And before somebody comes along and says 'no real HPC is done in Windows!' there are a lot of old, crusty engineering software packages that everybody is scared of porting.
Nobody is going to argue that if you run one single application (a database something), a "small" OS will work better. There are Linux versions that are specifically geared towards doing that sort of thing, right? Ubuntu is probably slower at something than [insert other dist].
The real question is, though... what about normal usage? Unfortunately, that's hard to measure... but how does Vista/Windows 7 affect normal user productivity and speed as opposed to simple benchmarks designed to test out efficiency at doing ONE thing?
If Vista and Windows 7 were designed to have a lot of background processes to help the user do this or that, then why not test that, too? XP wasn't designed that way, apparently, while Windows Vista/7 are more designed that way. So give it a level playing field and test what it was designed to do.
I don't have an answer of whether or not Vista/Win7 are slower or faster when doing other things (like, say, searching for a file because you can't remember where you put it, running multiple applications, using something DRM enabled, or whatever), but it'd be interesting to try to test it rather than a generic "XP runs a single application faster than Vista because Vista has more stuff running in the background." It'd be interesting to try to physically load the system with lots of applications and see which is better then.
How does the system 'know' when to start running the DRM?
The application goes "Hey ! Windows ! I need a protected path before I can play this media."
There must be something running at all times "just in case" the paying customer decides to excersise their right to play their own stuff.
No, there does not.
It is not the OS's job to check whether or not a given file (more accurately, byte stream) is DRM-encumbered, nor does it make any attempt to do so. It is only the OS's job to provide DRM-capable output (and ensure it remains DRM-encumbered) when an application asks for it, which is what it does.
In short: If you aren't playing DRM-encumbered content, the DRM does NOTHING.
I don't know the details of Vista/7's implementations, but come on - just use your head.
If the file header has the broadcast flag, or otherwise indicates the file is DRM crippled, the DRM checks begin.
If no, then DRM checks aren't going to run.
It's about the same level as:
OH NO. My PC is automatically adjusting my clock for daylight saving time. MY FUCKING CLOCK CYCLES ARE BEING STOLEN!
Complete and utter bullshit.
We're a VFX company. We work with all manner of multi-core applications. Cloth simulation, Global Illumination, Caustics, Optical Flow tracking, compositing etc etc.
Every single one of our computers are 64 bit. We have Windows XP x64 and we have Vista x64.
I'm looking at a chart right this very second of render times for our current job. 9 million polygons, 6GB of RAM usage, 100% CPU usage across all 4 cores. NO RENDER PERFORMANCE HIT. Render software scales better than just about anything else on earth. Each core renders its little slice of the scene and returns it to the application. There is no cross talk, it scales pretty much linearlly with very very little overhead. If anything is going to expose some sort of massive performance hit, it would be rendering.
If Vista x64 is running a DRM check on every ray casting function we would see it. If Vista was running 118% slower we would see it. We have identical machines running the identical piece of software and they're returning on average statistically identical results.
I've got millions of photons bouncing around a scene and supposedly each calculation is being 'taxed' by some DRM check? I don't see it.
They're all generating pixels, what could be more "DRM related" than reading footage, processing footage and creating new footage?
Maybe this test found some piece of software that doesn't run well on Vista. I can buy that argument. But Vista and Windows 7 are not substantially slower than XP at processing. In fact they seem to be no slower from my experience with a wide variety of extremely processor and memory intensive tasks.