4 ms·
Well multi core is not one CORE but rather an integrated distributed system of cores linked with buses that are probably built with chips very similar to switch
by SFJulie 11y ago
Well multi core is not one CORE but rather an integrated distributed system of cores linked with buses that are probably built with chips very similar to switch/commuters without all the KPEX poured in optimizing network equipments. So calling a multi core archi one computer is a little lie.
Making an efficient multi core async system is as tough as making an efficient networked distributed system, except is has less heterogeneous components but probably also less devoted R&D.
So at one point I wonder why we just don't simply build extra cores as additional SOCs/ASIC, CPU or GPU you can plug on dedicated buses chosen according to the required latency in memory sharing, exchanging with central CPU/memory.
It is almost what actual buses are, just a tinge twisted with different rings, speed, latency because I don't think one bus can rule them all.
But, well who am I to have an opinion when google, apple, motorola, intel, Dec, IBM knows better than I how to design computers?
Just a no one.
- vonmoltke 11y ago> Well multi core is not one CORE but rather an integrated distributed system of cores linked with buses that are probably built with chips very similar to switch/commuters without all the KPEX poured in optimizing network equipments. Not really. Multi-core chips share processor execution resources and L2 cache between them. The on-die cores are directly tied to each other in a way that off-die components, including cores in another socket on the same board, are not. They are a single computer. Now, you can carry the network abstraction down to that level. Problem is, as an EE I can carry the network abstraction down below the register level. A register bit is a network of transistors and resistors, after all. At what point do we call something a computer? I personally think any clustering of tightly-coupled, on-die computational blocks is a "computer", which means the milti-core chips certainly count as one computer with multiple execution pipelines.
- SFJulie 10y agowell, address bus is still a bus. They share a bus not the addresses. From the programming point of view it is the same, from the architecture PoV the complexity (number of gates and latency) it is not the same. A network stack is just a external universal bus that deals and introduces way more complexity. But it is just a bus.