Multi-core CPUs

Marcel Weiher marcel.weiher at gmail.com
Fri Oct 26 04:25:45 UTC 2007


On Oct 25, 2007, at 12:28 PM, Peter William Lount wrote:

> The Tile-64 processor is expected to grow to about 4096 processors  
> by pushing the limits of technology beyond what they are today. To  
> reach the levels you are talking about for a current Smalltalk image  
> with millions of objects each having their own thread (or process)  
> isn't going to happen anytime soon.
>
> I work with real hardware.


A couple of numbers:

- Montecito, the new dual-core Itanic has 1.72 billion transistors.
- The ARM6 macrocell has around 35000 transistors
- divide the two, and you will find that you could get more ARM6 cores  
for the Montecito transistor budget than the ARM6 has transistors

So we can have a 35K object system with every processor having its own  
CPU core and all message-passing being asynchronous.  This is likely  
to be highly inefficient, with most of the CPUs waiting/idle most of  
the time, say 99%.  With 1% efficiency, and say, a 200MHz clock, the  
effective throughput would still be 200M * 35000 / 100 =  70 billion  
instructions per second.  That's a lot of instructions.  And wait what  
happens if we have some really parallel algorithm that cranks  
efficiency up to 10%!

I am not saying any of these numbers are valid or that this is a  
realistic system, but I do find the numbers of that little thought  
experiment...interesting.  And of coures, while Moore's law appears to  
have stoppe for cycle times, it does seem to still be going for  
transistors per chip.

Marcel





More information about the Squeak-dev mailing list