What if your desktop computer could run 100 times faster than a PC and were simple enough for a high school student to program?
That's not an idle question. Researchers at the University of Maryland have built a prototype of a "desktop supercomputer" that can do just that.
The new computer is at least three years from reaching commercial markets, but it could have a big effect in industries that process large loads of data. They include the pharmaceutical, aerospace, military and entertainment industries, for applications such as drug modeling, computer-aided design and digital content creation.
The Explicit Multi-Threading (XMT) computer combines the decades-old philosophy of using parallel computing algorithms with the huge number of transistors in modern processors.
The machine uses three field-programmable gate array chips from Xilinx Inc. to represent a network of 64 ARM processors that control dozens of threads of simultaneous computation, says Uzi Vishkin, a professor at the A. James Clark School of Engineering who built the machine with his graduate students.
The team is now trying to shrink the prototype, a license-plate-size board running at 75 MHz, down to a fingernail-size version running between 1 GHz and 2 GHz.
Team members took the first step toward that goal this summer by commissioning IBM to manufacture a CMOS silicon application-specific integrated circuit (ASIC) with an on-chip data interconnect network. The venture is funded with a grant from the U.S. Department of Defense, Vishkin says.
A Kid Could Do It
Even if they succeed in building a smaller version of the prototype, the researchers will face the challenge of teaching programmers how to write software for a multithreaded system.
Many commercial software companies are already puzzling over a similar problem today as they try to adapt to the latest dual- and quad-core processors from Intel and Advanced Micro Devices.
However, Vishkin says his system will be easier to program than applications for commercial multicore chips because the XMT algorithms appear to the operating system to be a single thread. "If you build it in a way that people cannot program it, it remains in the ivory tower of theory," he says.
To prove his point, before the end of this year, Vishkin is planning to teach a class of high school students how to program the XMT using a version of the C programming language. He will teach college students to program the prototype in the first quarter of 2008.