Microsoft, Intel pour $20 million into parallel computing research

News
Mar 20, 20084 mins

Programming languages for multicore processing to be developed

Microsoft and Intel are giving a $20 million boost to parallel-computing researchers.

Microsoft  and Intel are giving a $20 million boost to parallel computing researchers who are developing better ways of writing applications that can take advantage of multicore processors.

The $20 million will be distributed over five years to the University of California, Berkeley  and the University of Illinois at Urbana-Champaign (UIUC). Another $15 million is expected to come from a California state-grant program and UIUC.

Dual- and quad-core processors are becoming increasingly common, and the number of cores in each processor will only grow in coming years. Intel already is developing an 80-core processor.

Software designed for single-core processors, however, can’t take full advantage of multicore computing, which can execute multiple threads and processes simultaneously; many programmers find it difficult to write applications suited for the multicore world. The goal of this initiative, announced this week, is to eventually make “parallel programming . . . synonymous with programming.”

“There have been no major efforts on how to make parallel programming easier for the average programmer,” says Marc Snir, a professor of computer science and electrical and computer engineering at UIUC. Laptop computers and PDAs, in particular, have been unable to leverage all the benefits of parallel computing, he says.

Snir and his colleagues aim to develop new programming languages and other technologies to help programmers take advantage of multicore processing. They also are developing new ideas for how vendors like Intel and Advanced Micro Devices can design multicore processing to make programming easier, he says.

One problem with parallel computing today occurs when simultaneous threads run at different speeds, Snir says. In a simple example, say two people are trying to book a plane reservation at the same time, and there is only one seat left. If the requests are being handled by two threads, the person whose request is being processed by the faster thread will get the seat.

In a complex research environment, the outcome of a computation using multiple threads may depend on calculations being solved in an exact order. If one thread unexpectedly goes faster than another, running the same program twice could yield two different answers. “How you avoid this problem is for us a major research issue,” Snir says. The goal is to make sure that “parallel codes are deterministic, repeatable and always give you the same answer for the same input.”

Microsoft and Intel said their $20 million combined investment will create two “Universal Parallel Computing Research centers” at the California and Illinois universities.

The center at Illinois has been in existence for a good two years, although the group of faculty members working on parallel computing hadn’t given it a formal name or sought major publicity, Snir says.The extra money “will allow us to expand our work, and it will allow us to work together in a more coherent manner,” he says. “It certainly will allow us to have more Ph.D students involved in this work.”

Berkeley and UIUC were chosen from 25 parallel-computing research institutions who sought the grants from Microsoft and Intel.

The vendors said parallel computing is essential for enhancing program performance and meeting power-efficiency goals, and that the technology industry must extend the benefits of processing on “tens or hundreds of cores” to mainstream developers and consumers. “Working with Microsoft and these two prestigious universities will help catalyze the long-term breakthroughs that are needed to enable dramatic new applications for the mainstream user,” Intel research director Andrew Chien said in a press release. “We think these new applications will have the ability to efficiently and robustly sense and act in our everyday world with new capabilities: rich digital media and visual interfaces, powerful statistical analyses and search, and mobile applications. Ultimately, these sensing and human-interface capabilities will bridge the physical world with the virtual.”