Friday, November 11, 2005

 

The future of performance..

Via Tim Bray, Greg Matter nails the future of chip performance. As Tim said, he provides numbers to add to the argument.

Of course, while I agree with much of the article..
[the] first version of SPARC was constructed from about a 100,000 transistor ASIC. So today we could fit TEN THOUSAND of our original SPARC microprocessors on a single chip. That, gentle readers, is interesting.
...hmm, serious multi-core...
(Another consequence is that these complex microprocessors are, well, complex. That means more engineers to create the design, more engineers to test that the design is correct, and whole new layers of managers to try to coordinate the resulting hundreds and hundreds of folks on the project. Bugs increase, schedules are missed, and innovation actually decreases.)
...and difficult...
The result: microprocessors are dead.
Oops.
The secret ...[of the solution is]... more sane processor pipeline designs ... more conservative of ... power, and complexity. (A key innovation, however, was to finally fold multithreading into the individual pipes).
Cool, multi-threaded pipelines [my emphasis].
By 2010 microprocessors will seem like really old ideas. ... [In the future] the only place that computer design actually happens is by those who are designing chips. Everything downstream is just sheet metal. The apparent diversity of computer manufactures is a shattered illusion. In 2010, if you can't craft silicon, you can't add value to computer systems. You'd be about as innovative as a company in the 90's who couldn't design a printed circuit board.
I love the sheet metal comment.

I agree with the article though I don't think it goes far enough. Companies like Xilinx are pushing the whole notion of high level instructions or fixed pipelines by enabling fully custom chips. This is what we do. There is a storm coming, and I don't think it's from just multi-core chips.

<advert with="serious points">
With our software (because it is software written for a different layer, with different constraints), we have multi-core with serious hyper-threading, like dozens of them. This combines to give performance numbers which just blow away normal CPU-based systems. We can see real applications which will realise 100-1000x the performance of a typical Pentium/Opteron etc. More is possible with multi-chip in a single rack-based box (say, 2U) with lower power consumption.

While it's not as straight forward as standard software, the ease will come. It's possible today. Come talk to us.
</advert>

I believe custom pipelines, whether Cell, Cg/GPU or full FPGAs are the way things will go. The compilers aren't quite there yet, so it will take a while for the mainstream to adopt this. However, for certain applications, from seismic analysis, through telecoms and military real-time image analysis to financial analytics acceleration, massive benefits are available today.

So I'm not fully agreeing with:
[In the future] the only place that computer design actually happens is by those who are designing chips.
.. since I believe, like the previous wave and the one before, ultimately the compilers will embody amazing levels of engineering knowledge.

In the mean time, start your synthesis tools..

Comments:
Hmm.. It sounds like you're advocating external co-processors that would lay outside the chip - almost the opposite of Greg's post. I think the kinds of processors he's advocating are more like Tensilica. They're pretty awesome at creating custom processors (often multicore) that are extended with instructions specially designed to meet the needs of particular software algorithms.

By 2010, I bet he's right, that instead of adding external FPGAs people will indeed simply add that logic directly into the CPU core within the system-on-a-chip.
 
This comment has been removed by a blog administrator.
 
The system on a chip concept is interesting, but is very strongly non-modular - if you want a new functionality, you need to get a new chip, which may be slighly larger than the previous which means you need a different connector to the DRAM for it.

A modular approach, with the ability to add/remove small, specialized chips seems overly locked in.
 
Post a Comment



<< Home

This page is powered by Blogger. Isn't yours?