Microsoft trying to make sense of multicore
From a marketing perspective, multicore processors are an easy sell. Two brains are better than one. Four brains are better than two. You get the idea.
The challenge is that a whole lot of computer software has been designed to take advantage of ever-faster brains, not a computer packed full of them. It's a particular challenge for desktop and mobile computers. On the server and supercomputing side, the notion of parallel computing has been around for some time.
In the PC world, software makers have been scrambling to find new ways of thinking as Moore's law is quickly taking the chip world into a realm where there may be dozens or hundreds of processing units, or cores, on a single chip. In its latest attempt to figure out what to do with all those cores, Microsoft said Friday it is setting up a joint research center in Barcelona with the Barcelona Supercomputing Center.
The BSC-Microsoft research center "will focus on the way microprocessors and software for the mobile and desktop market segments will be designed and interact over the next 10 years and beyond," Microsoft said in a statement. "The advent of many- and multi-core processor computing architectures will make it possible to deliver enormous computational power on a single chip, with profound implications for the way software is developed."
The center will look at new approaches to software design.
"To optimize the designs and interactions of multicore processors and software, we need to start from parallel programming," Barcelona Supercomputing Center director Mateo Valero said in a statement. "The way to deal with this multicore architecture challenge is to bring together computer architects and programming language experts."
During her years at CNET News, Ina Fried has changed beats several times, changed genders once, and covered both of the Pirates of Silicon Valley. These days, most of her attention is focused on Microsoft. E-mail Ina. 





"Adding more processing cores to a CPU should have been a relatively painless evolution of computer technology but it turned out to be a real pain in the ass, programming wise. Why? To understand the problem, we must go back to the very beginning of the computer age, close to a hundred and fifty years ago, when an Englishman named Charles Babbage designed the world?s first general purpose computer, the analytical engine."
Quoted from "Parellel Programming, Math and the Curse of the Algorithm:
http://rebelscience.blogspot.com/2007/10/parallel-programming-math-and-curse-of.html
specific cores.
For example, they could assign antivirus and antispyware to one
core, firewalls and updates to another, etc.
That way we might have enough uninterrupted processing power
from our new PC to play Solitare and run WordPad at the same
time. ;)
Why would I wait 10 years for them to get or maybe not get it ? The ones that already get it, will also advance.
A more significant improvement will be seen by running an application in one core, so the other cores can run different apps.
The usage and challenges of end-user computing is completely different from supercomputing and other MP systems and API's. Comparing them, as MS seems to want to will lead nowhere.
- ParallelFX and Threading Building Blocks
- by kfarnham January 19, 2008 8:02 AM PST
- It's surprising that this article doesn't mention ParallelFX, Microsoft's .NET multithreading library that was released as a community technology preview a few months ago. ParallelFX is somewhat similar to Threading Building Blocks, a C++ template library invented by Intel, then turned into an open source project: see http://ThreadingBuildingBlocks.org
- Like this Reply to this comment
-
(9 Comments)Both ParallelFX and Threading Building Blocks offer paths to multithreading old and new applications without the developer having to manage the threading details. TBB (the more mature of the two) is gaining a following in universities around the world.