-----Mensaje original----- De: squeak-dev-bounces@lists.squeakfoundation.org [mailto:squeak-dev-bounces@lists.squeakfoundation.org] En nombre de Marcel Weiher Enviado el: Viernes, 26 de Octubre de 2007 01:26 Para: peter@smalltalk.org; The general-purpose Squeak developers list Asunto: Re: Multi-core CPUs
...
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
Marcel, as Smalltalk always shine in scaling in complexity I posted, there in the beginning of this matter, about the different dimensions of scalability. For the CPU, if cycle times is vertical and cores are horizontal we are, as you suggest, entering a horizontal cpu scaling moment (next years) mesurable with transistors per chip.
No matter wich model we choose to map the conceptual model in boolean processors (due to holy transistors) it will have impedance mismach.
When we select a solution our trade off will necessarily be making the choice by balancing, that impedance because of complexity, between machines, boolean domain, and persons, conceptual domain.
Ironically, this industry made by persons has an incredible talent to make things easier for machines at the cost of polluting the conceptual model.
Given that we can choose a path that pollute the conceptual model or not. As I see things polluting conceptual model is a "shoot in the foot". I think that the Smalltalk community should prioritize again the heurÃstic spirit of Smalltalk by showin willing to evade the injection of pollution in the conceptual model. Anyway it's our choice.
Regards,
Sebastian