СОВРЕМЕННЫЕ МИКРОПРОЦЕССОРЫ Всё, что можно узнать о них за 1 лекцию
Не мегагерцем единым SPECint 95 SPECfp 95 195 MHz MIPS R 10000 11. 0 17. 0 400 MHz Alpha 21164 12. 3 17. 2 300 MHz Ultra. SPARC 12. 1 15. 5 300 MHz Pentium-II 11. 6 8. 8 300 MHz Power. PC G 3 14. 8 11. 4 135 MHz POWER 2 6. 2 17. 6
Последовательная обработка
Конвейер (pipelining)
Конвейер подробнее
…еще подробнее
…еще более подробно
Суперконвейер
Суперскалярная архитектура
Width. CPI = 0. 33, IPC = 3
Суперконвейерный + суперскалярный
VLIW
Шире и глубже? a = b * c; d = a + 1;
Ветвление if (a > 7) { b = c; } else { b = d; } cmp a, 7 ble L 1 mov c, b br L 2 L 1: mov d, b L 2: . . . ; a > 7 ? ; b = c ; b = d
Предсказания • Статически (компилятор) • Динамически (процессор) • Таблицы • Анализ • Ошибки
Беспорядок (Out. Of. Order)
Simultaneous Multi-Threading (SMT)
Больше ядра или больше ядер Core i*2 "Sandy Bridge" Ultra. SPARC-T 3 "Niagara 3" • 4 core * 2 thread • 16 core * 8 threads • 4 -issue • 2 -issue • Oo. O • In-order
Data parallelism (SIMD)
Кэш (Cache) • Временная локальность • Пространственная локальность
Иерархия