Microsoft wants multicore boost from Windows 7
It's a question we all face: with chips getting more processing cores instead of more gigahertz, is your next computer going to actually run your software faster?
Microsoft is one of the companies that feels the pressure to most acutely when it comes to putting those cores to work. Though it doesn't pretend to have the problem licked, Microsoft does believe Windows 7 provides a better foundation for using multicore systems than earlier versions of the operating system.
Jon DeVaan, head of Windows Core Operating System Division
(Credit: Microsoft)One key part of solving the PC's multicore problems draws from the world of big iron, and Windows 7 can support much bigger iron--servers with as many as 256 processor cores compared with 64 for its predecessor. Now a few years into the multicore era, even today's laptops are able to juggle as many tasks as reasonably powerful servers from just a few years ago. Intel's new Core i7 "Clarksfield" processor for mobile computers has four cores that manage a total of eight separate "threads" of work.
"One dimension is support for a much larger number of processors and getting good linear scaling on that change from 64 to 256 processors," said Jon DeVaan, senior vice president of Microsoft's Windows Core Operating System Division. "There's all kinds of depth in that change."
Linear scaling means that doubling the number of processors means a doubling in performance--something rarely achieved in real-world computing. But what does 256 or even 64 processors have to do with a PC with four or eight cores? In short, updating the Windows plumbing to support bigger servers also helps work run more smoothly on smaller multicore machines, for example by ensuring data cached in memory is close on hand to the processor core that needs it, DeVaan said.
It's crucial that Microsoft help solve multicore issues. The company is responsible not just for the most widely used personal-computer operating system but also for the programming tools many use to create the software that runs on it. That's why another broad attempt to ease multicore pains takes place within Visual Studio 2010, the upcoming version of Microsoft's programming tools.
"People have been working on this for a long time. So far there haven't been any magic bullets," Devaan said. "The commercial reality is creating a lot more urgency now, so I think we'll see a lot more approaches taken."
Unlocking multicore power is a point of competition, too: Apple's newest version of Mac OS X, Snow Leopard, adds a facility called Grand Central Dispatch to centralize management of all the various threads of programs as they run on a system.
Intel and Advanced Micro Devices bear responsibility, too, since they embraced multicore designs once heat problems put an end to the clock-frequency race, but Microsoft has much more clout in developer relations.
Windows 7 is due to ship October 22.
(Credit: Microsoft)Multicore designs can help easily when people are running many separate programs or when running programs that are "embarrassingly parallel"--in other words, when a task has many naturally independent subtasks, such as rendering each of a video's many frames. But many programs won't easily make the jump to a parallel design when they're set up as a single sequence of steps today.
"An operating system is never going to be able to take an application that isn't already parallel and make it so. Developers still need to multi-thread their apps," said Evans Data analyst Janel Garvin.
Visual Studio 2010
So it's good Microsoft is working on parallel programming aids within Visual Studio.
"Microsoft has done surprisingly little until recently to help developers write parallel applications, except for their alliance with Intel to promote Parallel Studio," an Intel collection of programming tools for parallel programming, Garvin said. "However, in the last year they've made some announcements and promises for Visual Studio 2010 about enhanced tools for parallel programming. It's likely that the success of Parallel Studio has impressed upon them the importance of providing Windows developers with the tools they need to remain competitive going into the future when manycore will be the standard."
Eventually, programmers will have to embrace parallel programming to be competitive, Garvin said. Parallel Studio helped bring the concepts to a much more mainstream audience, she said, and Evans Data's spring 2009 global developer survey found 40 percent of programmers are working on multithreaded applications today and another 15 percent plan to in the next year.
"Parallel programming is complex, difficult and labor-intensive, for even the most skilled developers, which has led developers to avoid writing parallel programs, leaving many CPU cycles unused," according to Steve Teixeira, Microsoft's principal product unit manager of parallel computing. The company's attempt to improve the situation comes not just in Visual Studio 2010 but also in another future product, version 4 of the company's .Net Development Framework.
Parallel programming tools
Among those features:
The Task Parallel Library, which lets .Net programmers write more parallel code in familiar terms. For example, programmers are used to "for loops" that repeat a particular task a specific number of times; library lets each step of the loop happen simultaneously instead of sequentially.
The new Intel Core i7 processor for mobile computers has four cores and can run eight threads.
(Credit: Intel) The Microsoft Concurrency Runtime can provides a shared resource for scheduling tasks and allocating resources--and which works better on Windows 7.
The Asynchronous Agents Library can permit separate threads of execution to pass messages among each other. That's useful in cases where separate threads need to head off no-no conditions such as when
Parallel Language Integrated Query (PLINQ) technology lets programmers perform some operations with data in parallel rather than sequentially.
The Parallel Pattern Library is designed to make parallel programming easier for those using the C++ language.
Microsoft knows none of this is truly easy, though. DeVaan wonders about cases when existing software is being parallelized--is each step in a parallel for loop really independent of the others? He sees "a lot of hand-waving" around the computing industry that glosses over the true difficulties.
"As an industry, we're going to be working hard to make it work better and working with broad set of developers to target (multicore programming) without undue work," DeVaan said. "Will these approaches really accomplish it? That's an open question."
Stephen Shankland writes about a wide range of technology and products, but has a particular focus on browsers and digital photography. He joined CNET News in 1998 and since then also has covered Google, Yahoo, servers, supercomputing, Linux and open-source software, and science. E-mail Stephen, or follow him on Twitter at http://www.twitter.com/stshank. 






And by the way, the experts have already analysed and concluded that 7 is more secure than XP and Mac. But since your market share is so low, the bad guys aren't interested in pouring their time and money into OS's that give back to little in return. So you are better off not to have people switching. Instead bask in the glory of knowing you don't have to spend any money on security software. Or do you? Hmmm- I wonder!
Funny thing is, the only mention in parent's post about a Mac is the guy's 'nym. You fanboys must be more than just a little nervous these days...
The reason he was labeled as a "fan boy" was that he was trying to compare Grand Central Dispatch with this Windows effort and concluded that it's "safe to say that Windows won't" (be better)... No other information supporting that argument was given, so the only reason is "just because it's Windows".
But just a quick comment on the article itself... The OS should not have to rely on the application developers to optimize their code for multi-core because most application developers won't care. The OS should be able to make the proper adjustments.
Indeed it's very complex and harder to test and debug. Many times, it's simply not worth the effort especially for business systems... you can't even explain that benefit to customers.
The article does not make any direct comparison between the two and I don't have much insight on how both systems work to make a judgment on which one is better.
Stephen, maybe that's a good follow-up article: a head-on (apples-to-apples) comparison with Windows multi-core efforts vs Grand Central...
"Indeed it's very complex and harder to test and debug. Many times, it's simply not worth the effort especially for business systems... you can't even explain that benefit to customers."
You know? I've heard arguments like that against writing code to run in a GUI environment... ;)
As for the mac fanboi who started this, the apple standard skewed lies campaign is no longer believable. See below for several articles that contradict what you have been led to believe by apple.
Windows XP (and Vista and 7 and even older versions) allow you to write a win32 or .NET application that uses multi-threading to use all cores.
"And how about the ability to run 32 and 64 bit apps side by side on the Mac, "
Sorry but Windows XP/Vista/7 64-bit has allowed you to do this for several years now. Welcome to the 21st century Apple.
And there isn't any desktop applications released as 64-bit only - why would one application need 4+ GB of ram? Even on the server, most programs/systems still come in both flavors.
2. "run 32 and 64 bit apps side by side" has always been possible on windows x64. If you had used it even once, you would know this. The only thing that must match are the hardware drivers, and that hasn't been an issue for years in windows. Quit spouting LIES.
@ausername...You obviously have no clue what you're talking about. Thread affinity (assigning a process to one or more cores) has been in Windows since XP. Also Windows has had 32 and 64 bit side by side since XP64 (called Windows on Windows). So while you're crowing about features Mac has just gotten, you're also making yourself look like an idiot (as if paying the Mac premium didn't do that already).
@eadeguzman Sorry, it's (nearly) impossible to make an application multi-threaded when it wasn't programmed that way. Now what the OS can do is make it where multiple apps can access the resources at the same time (which is what all modern OSes do). It's strictly on the developers' shoulders to take the tools the OS (and programming framework) provides to take advantage of multi-core.
For the most part, the article just states the facts. Win7 allows access to more cores than its predecessors. But to really tap into that power requires the effort of developers.
"your - possessive
1. Belonging to you; of you; related to you (singular; one owner).
Let's meet tomorrow at your convenience.
Is this your cat?
2. Belonging to you; of you; related to you (plural; more owners)."
You are (you're) is NOT the same as "your." I think this distinction is covered is 3rd or 4th grade English class, so you might not have made it that far...
Now you know.
Uh, yeah. Divx movies anyone?
Folding @ Home anyone?
How about fluid flow simulations in Solidworks? Not as many, okay.. ;)
Do they need the cores? Of course not. But it's 200% as fast (or better with SMP) using my Dual Core.
(and I wish every other rendering engine I used would do ti too... makes render times shorter. Like having a mini render farm of sorts...)
Database Servers....even on the desk this increases performance.
Like the article stated parallel processing takes discipline something many, not all, of today?s programmers lack. Have you ever called support with the error code displayed by a program only to be told by the support team they have no idea what the code means?
There have been demonstrations of server apps (including SQL Server I believe) achieving this on Windows 7 / Server 2008 R2.
I'm not sure what you mean by "cost in performance" - there is no cost, only benefit.
And as far as accepting that users will upgrade to the new OS, I hope they do. And I hope it is secure. The better Windows 7 actually does is good for competition. As a long time Windows user and short (3 years) Mac user all I really want is the best that can be made. When that is Windows, I'll switch back. I don't owe any company allegiance. I simply want the best product that I can get. We'll see how Windows 7 does. Microsoft has a great track record of "Security" as we all know. I love that people tout the Mac insecurities, no OS is perfect. But when it comes to real world security, Windows has always failed. It can't help it being built on DOS.
I would love to Apple make OS X even more secure. And hopefully they will before someone actually makes a virus for OS X. Right now, as long as I don't install a trojan horse on my Mac, I'm good.
Can someone tell me again why its so easy for a virus to infect a Windows computer? Mac OS 9 had viruses, and there weren't as many Mac users back then. So why is it that Mac OS X does have viruses? Hell, there was a virus for iPod Linux!!! Don't give me that security by obscurity BS. Blame M$. They could do a lot better, and should. Shame on them for being the worlds largest software company, and not having the best software.
http://news.cnet.com/8301-1009_3-10154662-83.html
The Macintosh and base Linux kernel operating systems have dominated the top spots for vulnerabilities by operating system over the past three years
http://news.cnet.com/8301-1009_3-10199652-83.html?tag=mncol;posts
Safari hole exploited in seconds at security conference
http://i.gizmodo.com/256768/mac-os-x-less-secure-than-vista
http://www.computerworld.com/action/article.do?command=viewArticleBasic&articleId=9072959
http://www.zdnet.com.au/news/security/soa/Mac-OS-X-hacked-under-30-minutes/0,130061744,139241748,00.htm
http://blogs.zdnet.com/security/?p=2941
http://www.wired.com/gadgetlab/2009/09/security-snow-leopard
http://news.cnet.com/8301-27080_3-10318943-245.html
Contrary to popular Mac fanboy belief, Macintosh is not more secure from a software standpoint than modern Windows
Now that is a load of BS
Read that properly!
Read that properly!
if you keep posting the same url all the time, then you are not really showing only one perspective. you're obsessed with that story. ether way, no AV and no malware on my mac.
Security varies in different systems.
I can walk up to *any* Mac or Linux box, power it up and boot into single user mode and have access to the entire system. I can change the administrator password, do whatever I want to the system and you'll never know I was there.
I can't do that to a Windows system. For physical on site access, Windows is more secure there.
It's hard to infect any machine these days with a virus. Criminals rely more on social exploits and no amount of OS security is going to help when end users are ignorant enough to click on popup boxes asking if they want to infect their machines. :/
"I can't do that to a Windows system. For physical on site access, Windows is more secure there. "
Ahem... i have a CD that can reset any NT password and/or allow complete registry access. (Google "Emergency Boot CD") As for the user data, I simply put in my Ubuntu Live cd and have complete hard drive access.
Lesson: The only good way to physically secure a computer is with bars and dogs.
You are right about the social exploits though.
You want to convince me that Live CD can't read and screw any Linux extfs partition? And mess with the passwords file?
But if you have BitLocker boot partition, you can't do that with Windows installation.
Also, the window manager has to be designed to take advantage of the video accelerator on the individual chip, not the processor. In addition, the A9 runs the same instruction set as the A8, so the code will be no different.
lmao! not that bright are ya?
And don't even start with the 'Viruses also run on it' bullcrap. The fact is that viruses run on a Mac if you are stupid enough to INSTALL THEM on the system and they are written to run on that system.
WIndows 7 and Vista however have protections that if something is doing something hinky, it informs you of that and ask you "Do you really want to allow this program to delete your entire hard drive!?" so you can say NO!
Windows 7 is based on DOS..nice claim. Viruses infect Windows comps easily because most people are stupid, and click OK on every UAC prompt.
and for @ausernamenoonehaschosen,
you're just too pathetic that i won't waste time explaining.
Please point out where anyone in this article or this thread claimed that 32bit win could run 64bit apps. What is true, is that 64bit win can run both 64bit and 32bit apps (side by side), and has been able to do so for a long, long time (since 64bit xp).
ausername - Why are you defending Apple's continuously delayed transition to 64-bit? You realize they're taking the same approach DOS took to get to 32-bit, right? Did you defend that as well?
Fact is, Windows users who buy a new PC today get a fully top-to-bottom 64-bit OS, not some messy mishmash of 32-bit underpinnings and 64-bit compatibility layers (the extent and arrangement of which depends entirely on which hardware you happen to have / buy). 64-bit Windows has complete support for 32-bit applications AND has had nearly a decade to get full driver and app extension support in place. Driver certification for Vista *required* that a 64-bit driver be offered even though 64-bit was not mainstream yet, and LOTS of IHVs were brought on board back in 2003. That proactive forward-thinking is paying off now that 64-bit versions of Windows dominate the market.
Steve Teixeira knows what he's talking about. He's not your typical Microsoft dev... he actually came from Borland (then Microsoft's biggest competitor in the tools space). Steve literally "wrote the book" on Delphi and authored several other books on C++ and Java. For many years he also led Visual C++ team and probably has many MFC scars to prove it.
As to multithreading, I have 3 observations:
1. In my day job I write programs for medical image processing. The primary toolkit we use (Insight, www.itk.org) has been designed from the ground up to be highly multi-threaded. To use the library, you don't need to know anything about multithreading. To write new code based on the library, you just have to decide the best way to partition your task, and the library framework does the rest for you.
2. So in my case, parallelism isn't that difficult. Engineering and scientific software has many applications and libraries that already use parallelism. Sure it's a 'hard' programming problem, but if you leverage other people's work, it's ranges from 'not too hard' to 'dead easy.' This seems to be lost on a lot of tech journalists, and CNet commenters.
2. My avocation is electronic music, a field that has been revolutionized by the rise of fast personal computers. Every major music application takes advantage of parallel computing. Some better than others, but audio software has no problem saturating CPU bandwidth at all.
So to conclude -- loads of real world applications use parallel processing, and it's only hard if you try to do everything yourself from scratch.
Btw, regarding the Mac vs Windows discussion: I need to point something out. Recently I installed OSX on my netbook, I benchmarked both OS on my netbook, the results? Windows is slightly faster in the integer test but OSX is about 80% faster in floating point and slightly faster in memory speed test. Believe it or not, even with 1gb of ram, it runs faster than XP on the same hardware.
If you do 3d rendering, the Mac is faster - nothing to do with the hardware, it's the OS. But of course if you want to build a render-farm, mac is a waste of money.
Grand Central Dispatch allows apps that are not optimized for multi-cores to take full advantage of it. Lets hope this is what MS is doing for Win7.
@ElementalMac,
Windows 7 is based on DOS..nice claim. Viruses infect Windows comps easily because most people are stupid, and click OK on every UAC prompt.
DOTA... you have finally put the argument into words that even the trolls and shills can understand:
Stupid people use PCs. It's quite a scary thought though, considering they have 90% of the market. But then again, evolution will take care of this as it has in the past. C'mon, all you MS meat eaters, take a bite of that Apple. Even the bible says it comes from the tree of knowledge. What have you got to lose besides the "stupidity" that DOTA claims you have?
Also, say I decided to switch to Mac, today:
Can I build a custom rig that uses it (My hobby): Not without some hacking.
Can I play my favorite games on it: No, not without bootcamp/parralells.
Can I still get viruses on it: Yes, if I'm dumb enough to click on them, same as vista
Can I still use things like Paint.NET, Chrome (yes I know there is an *unstable* build of chrome for mac), or even the Cooliris FF addon: Not without bootcamp/parralells
Can I upgrade the hardware when it gets outdated and slow: Again, not without some hacking.
Last time I checked, windows can do all that.
Until Mac can, there is NO WAY I will switch.
Spotlight search technology is the core of OSX, I always assumed Google helped Apple developed it since the CEO of Google worked for Apple for the last 3 years. This search engine is fast, it even indexes pdf, emails and third party app's documents. With a few keywords I can locate the the info I want from thousands of pdfs, type in numeral calculations and it searches for the results in the calculator! You can't do that in Windows.
Vista was built from scratch to implement a new indexing engine, not only does it slows down the OS - the search is inefficient.
Another thing is the GPU accelerated GUI - OSX managed this even on crappy low end hardware (Intel GMA950 with no integrated ram, if you want to know) Vista on the other hand needs a DX10 card with at least 128mb vram, and even with that you still won't get the same level of performance.
I still want Win7 though, on my main workstation - Most of my apps are Windows version. Maybe I took the wrong path in the past...
@ Seaspray... sorry, but intelligence is the basis for buying Apple, not fanatics. ROI, productivity and customer satisfaction round out the list. Stupid people buy what everyone tells them to without finding out exactly what it is they are getting.
safari is not faster than chrome =.=
ur comment about stupid ppl have ppl tell them what to buy.... ur doing that telling right now =.=
and dude... u just made urself a fanboy ur certificate will be mailed out to u in a few days
Oh, yes, that's true, we not talking phone's here but real boys toys, well I used to have a G4 and Then the worlds fastest computer, the G5, the adds still ring in my ears, I have left it all behind and use Windows with Xeon systems now.
I do lot's of video conversion, audio & graphic work, what generally is realtime on the PC needs to be rendered on a mac, and yes, even the Dual Xeon MacPro's with Final cut Studio or media 100 are the same, render, render, render.
Some more takers for Mac vs PC in the pro arena ???? yes, any one, no one, i thought so :)
http://forums.creativecow.net/readpost/2/867951
However generally the 32bit limitation is not windows but maths.
If it's not a windows limitation, then why can't the 32bit versions of XP/Server 2003/Vista.... address more than 4GB of RAM (and often it's only 3.5GB) but any my Mac's can address more than 4GB?
This is especially bad on the server side. The only way to get more than 4GB of RAM, is to install 64bit Windows, which opens up a whole slew of driver and application compatibility issues.
In the desktop versions, the limitation was purely artificial: MS capped the maximum RAM to avoid ****** drivers (It's safe to say they're the majority compared to the well-built ones) to crash your system if you try to use anything above the 4GB mark.
(obviously, this assumes you have a CPU capable of using Physical Address Extension, allowing 36-bit memory adresses)
(please stop with the FUD: name one server application that does not run on 64-bit windows environments)
lol that marketing material part was right on the spot
No FUD, just the truth. x64 versions of windows require special drivers, which often aren't made, especially for expansion cards.
@superswiss
No offense, but I'm really not going to 'trust' you that Apple re-wrote NL b/c of any 32bit/64 bit issues. Following your logic, Apple would have released 32 & x64 versions of SL. But they didn't.
They must be tired of all the Vista abuse they've taken, or maybe they're lashing out b/c of the horrible reception for Windows Mobile 6.5 (By the way, *** is up with those Windows icons in tights?! They're almost as freaky as the Palm Pre chick!)
Or maybe the Windows fanboys are just getting ready for the avalanche of bad press from the Microsoft, er, I mean, Danger outage that wiped out thousands of users personal data.....
Really classy how Microsoft couldn't take the blame for not having a working backup plan for everyone's data, and instead just blamed Danger.
Oh, wait M$ owns Danger.....</end sarcasm>
Vista? (well, that was pretty much non-sense. The OS, that is, not my comment about it)
The bad WinMob 6.5 press?
The freaky WinMob 6.5 ad?
The Danger Outage?
Blaming Danger for not having a backup plan in place?
The thousands of p******ed of Sidekick customers?
Pointing out how defensive the Windows fanboys are on this forum. As if they've been repressing all their anger from the litany of bad press they've endured and have finally snapped.
If I am not mistaken Linux supported SMP as far back as 1997 and multi-core within months of multi-core processors being released to retail (2003) .
http://en.wikipedia.org/wiki/Linux_kernel
http://en.wikipedia.org/wiki/Athlon_64
- by OptionsS October 13, 2009 10:13 AM PDT
- Its just my opinion.
- Like this Reply to this comment
-
-
- by Nataku4ca October 13, 2009 2:45 PM PDT
- have to agree with ur last line, too many comments that are emotional and worthless
- Like this
-
Showing 1 of 2 pages (113 Comments)I really don't care about what lies beneath as long as I get things done faster without any problems.
I use both PC and Mac. Both are good at ripping of users and you get what you pay for.
I have a $600 PCwhich was good for 1.5 years ( sold it for 250) and a Mac that was good for 3 years ( sold it for 450).
I liked Mac better for its Speed,usability and build quality.
It doesn't really matter if 1 billion use it or 1 Million use it as long as you like the system.
Grow up and stop fighting unless you own/work for any of these companies