Pull to refresh
74.29

CPU

Learning the brains of computing devices

Show first
Rating limit

На ютюбе вышло видео Сергея Сафонова Как Intel создал ARM, ARM похоронил MIPS, на очереди X86? Видео хорошее, в нем нет крупных косяков, но есть крупная дыра (или я просто смотрел невнимательно и пропустил?), отсутствующая информация о ключевом событии. В нем упадок RISC-процессоров в районе 2000 года рассматривается как некая загадочная энигма, а между тем все не просто, а очень просто. Вся индустрия в конце 1990-х ждала выхода процессора Intel Itanium, которому предсказывали взрывной рост и распостранение. Всем остальным процессорам предписывалось в организованном порядке идти на кладбище истории.

Из-за прогнозируемого триумфа Итаниума, HP отказались от своего RISC-процессора HP-PA, который в лучшие годы занимал 40% рынка рабочих станций для автоматизации проектирования электроники. DEC забила на свой RISC-процессор Alpha, на который еще в середине 1990-х спортировали Windows NT. Silicon Graphics перестали использовать MIPS для графики для Голливуда и отделили от себя MIPS Technologies которые стали специализироваться на лицензировании процессорных ядер для встроенных устройств. IBM и даже Sun собирались перейти на Itanium.

Однако когда Itanium вышел, его продажи были в десятки раз ниже чем прогнозировалось. Процессор строился на архитектуре VLIW, как современный российский Эльбрус, и имел те же проблемы. В частности, на такой архитектуре, с несколькими параллельными инструкциями в одном командном слове, трудно добиться хороших бенчмарк на программах общего назначения. Эти параллельные инструкции соединяет в одно слово компилятор, и ему трудно предсказать задержки при работе с памятью, которые при промахе кэша могут быть десятки и даже пару сотен тактов (при многоуровневом кэше, особенно с многоядерностью). Обычный суперскалярный процессор в таком случае просто запускает следующие независимые от доступа к памяти инструкции (см. алгоритм Томасуло), а вот VLIW процессору приходится простаивать.

VLIW процессоры хороши чтобы просчитывать какую-нибудь физику, с одновременной обработкой массивов данных, но запускать на нем браузеры или Микрософт Офис - это наблюдать посредственную производительность. Но в 1997 году, после анонса Itanium-а и до его выхода в 2001 - компании об этом не то что не знали, но думали что каток хайпа от Интела повторит каток хайпа от Микрософта по поводу Windows, и Итаниум будет везде.

Об этом есть известная статья Джона Дворака "Как Итаниум убил компьютерную индустрию".

Другое замечание: Сергея Сафонова в видео смешивает архитектуру (систему команд, видимую программисту сторону процессора) и микроархитектуру (аппаратную организацию, устройство конвейера и блоков процессорного ядра). RISC-архитектура способствует эффективной конвейерной микроархитектуре, но это не одно и то же. См. мою заметку "Что означает информация в заметке Коммерсанта «Британия морозит «Байкал»"

И где можно было бы дополнить:

  1. Мода на RISC возникла не просто так, а в результате анализа использования инструкций в пользовательских программах. Такое масштабное исследование провела группа профессора Джона Хеннесси в Стенфорде в 1978-1980 году.

  2. История RISC-процессоров в 1980-е тесно переплетается с историей кэшей. Они стали популярны именно в 1980-е потому что скорость арифметических операций росла в те годы гораздо быстрее, чем скорость доступа к основной памяти, DRAM.

    Если раньше, в 1960-е годы, арифметическая операция занимала больше, чем чтение или запись из памяти, то сейчас за одну транзакцию к памяти при промахе кэша можно выполнить десятки сложений. Поэтому стало рости и количество регистров (в x86 их изначально было меньше, а 6502 в ранних Apple - вообще аккумуляторные процессоры) и стал требоваться кэш, а иначе конвейер бы простаивал.

  3. На то, что индустрия отвернулась от MIPS и повернулась к ARM, повлияла и история о том, как MIPS стал судить стартап Lexra. Lexra типа нарушала патент на инструкции с невыравненным доступом к памяти. Процесс был высосан из пальца, но MIPS затянул разбирательство и у стартапа кончились деньги на юристов.

Tags:
Total votes 12: ↑12 and ↓0+18
Comments10

Как разводят венчурных капиталистов на бабки по поводу процессоров

Когда в СМИ публикуют статью про новый революционный процессор, но в статье нет бенчмарок, тут все понятно: статью можно игнорировать, это просто мусорный набор символов на экране. А если бенчмарки есть? Тут тоже не все так просто. Лет 10 назад был стартап, который показывал венчурным капиталистам слайды, что их революционно гибкий процессор (который динамически выделял потоки) по тактам в 3 раза быстрее чем старшее ядро ARM. Измерение было с помощью симуляции на уровне регистровых передач и в качестве бенчмарки была то ли Dhrystone, то ли CoreMark/MHz. Но они "забыли" указать на слайдах, что если синтезировать их процессорное ядро c библиотекой ASIC на том же техпроцессе, на котором и ядро ARM, против которого они конкурируют - то статический анализ тайминга покажет, что максимальная тактовая частота, которую они могут использовать - втрое меньше, чем у ARM. То есть втрое лучше по тактам умножаем на втрое хуже по частоте = никакого улучшения. Об этом факте я случайно услышал на парти - человек сказал цифру и я сложил два плюс два, то бишь умножил 3 на 1/3.

Также замечу что развод на бабки VC ничуть не менее аморален, чем развод на бабки пенсионеров по телефону, так как в фонды VC вкладывают в том числе и частные пенсионные фонды.

Tags:
Total votes 12: ↑11 and ↓1+13
Comments11