В Intel уже разрабатывают 1000-ядерный процессор
Многоядерные процессоры и масштабирование
Многоядерный процессор содержит несколько вычислительных блоков (ядер) на одном кристалле. Каждое ядро способно выполнять независимый поток инструкций, что позволяет обрабатывать несколько задач параллельно. Рост числа ядер увеличивает теоретическую производительность, но не прямо пропорционально: эффективность ограничена способностью программного обеспечения разделять вычисления на независимые потоки и накладными расходами на координацию ядер.
Ключевое ограничение при наращивании числа ядер — архитектура соединений между ними. В 48-ядерном чипе Intel использовала ячеистую сеть (mesh network), где каждое ядро связано с соседними. При увеличении числа узлов растёт среднее расстояние передачи данных между ядрами, увеличиваются задержки и энергопотребление самой сети. Порог около 1000 ядер, упомянутый разработчиками, отражает точку, после которой накладные расходы на коммуникацию начинают сводить на нет выигрыш от дополнительных вычислительных блоков.
Помимо топологии сети, масштабирование упирается в тепловыделение и площадь кристалла. Даже при низком энергопотреблении отдельного ядра тысяча ядер на одном чипе выделяет значительное суммарное тепло, которое необходимо отводить. Технологический процесс производства накладывает физические ограничения на плотность размещения транзисторов и минимальные размеры элементов, определяя максимально возможное число ядер на кристалле заданной площади.


