процессорное
Dec. 22nd, 2013 09:05 amМожет, баян, но я для себя ещё не формулировал.
Общеизвестная критика Intel с позиции "этот ваш x86 полный отстой, надо было делать как в ARM/MIPS/etc., конверсия во внутренний RISC не нужна, команды разбирать слишком дорого", которой полны соответствующие форумы - обычно заканчивается тем, что оппонент или стихает, или переходит в режим "от обоснуя слышу" и на этом обсуждение заканчивается якобы победой критика.
Но я ни разу не видел возражения на это, что RISC, VLIW, etc. организации банально нерасширяемы. Да, иногда цена расширения велика - начиная от тотального OOO+Tomasulo во внутренней логике (дорогая таки штука) до префиксов на каждую операцию (в x86-64 коде, ~38% всех команд с префиксом REX, и это я не считал те, у которых он подразумевается из-за единственности сути), но она подъёмна и, главное, перспективна в плане сохранения совместимости с существующими готовыми продуктами. X86-32 пережило даже внедрение AVX:) и умирать не собирается.
Отсюда обратный вывод - что x86 живо только пока идёт бурное развитие (по закону Мура). Как только последний остановится, она потеряет преимущество и лет за 10 уйдёт в ноль; но пока рост есть - она непобедима. Закон Чёрной королевы в действии.
Но странно другое. Практически каждое архитектурное решение Intel это в лучшем случае оптимальность на один шаг вперёд, уже через два шага побочные эффекты сиюминутной выгоды становятся явными недостатками. Результат выглядит как корабль, слой ракушек на котором в несколько раз толще ширины корабля. Зачем? Я не верю, что у них так плохо с мозгами.
Общеизвестная критика Intel с позиции "этот ваш x86 полный отстой, надо было делать как в ARM/MIPS/etc., конверсия во внутренний RISC не нужна, команды разбирать слишком дорого", которой полны соответствующие форумы - обычно заканчивается тем, что оппонент или стихает, или переходит в режим "от обоснуя слышу" и на этом обсуждение заканчивается якобы победой критика.
Но я ни разу не видел возражения на это, что RISC, VLIW, etc. организации банально нерасширяемы. Да, иногда цена расширения велика - начиная от тотального OOO+Tomasulo во внутренней логике (дорогая таки штука) до префиксов на каждую операцию (в x86-64 коде, ~38% всех команд с префиксом REX, и это я не считал те, у которых он подразумевается из-за единственности сути), но она подъёмна и, главное, перспективна в плане сохранения совместимости с существующими готовыми продуктами. X86-32 пережило даже внедрение AVX:) и умирать не собирается.
Отсюда обратный вывод - что x86 живо только пока идёт бурное развитие (по закону Мура). Как только последний остановится, она потеряет преимущество и лет за 10 уйдёт в ноль; но пока рост есть - она непобедима. Закон Чёрной королевы в действии.
Но странно другое. Практически каждое архитектурное решение Intel это в лучшем случае оптимальность на один шаг вперёд, уже через два шага побочные эффекты сиюминутной выгоды становятся явными недостатками. Результат выглядит как корабль, слой ракушек на котором в несколько раз толще ширины корабля. Зачем? Я не верю, что у них так плохо с мозгами.
no subject
Date: 2014-03-02 09:04 am (UTC)Отлично. Но под что он использовался кроме этого? И аналогичные векторные процессоры конкурентов? Использование под нужды графики и аналогичные, да и просто короткие пачки сихронных однотипных операций, возникло достаточно рано и показало основное направление, а также то, что это направление может развиваться достаточно долго. Газовая динамика, 64 значения - это всё уже вторично.
> В Альфе эта возможность не только существовала, но и была осуществлена в виде MVI.
И насколько его можно было расширять? Могло оно пройти полный путь нынешнего векторного процессинга в x86? Думаю, ответ очевиден.
> В архитектуре Альфы не существует никаких ограничений для "неограниченного развития".
Это требует доказательства. Доказательство должно начинаться с того, каким именно образом неограниченное расширение предполагается в архитектуре с фиксированным размером команды. Пожалуйста, косвенные методы типа "префиксов", которые что-то заливают в спец. регистры, не предлагать.
> До тех пор, пока этот отрыв не был преодолен увеличением глубины спекулятивного исполнения в x64, со всей стоимостью этого решения.
OK, предположим (с поправкой, что x86-64 сам по себе тут ни при чём). И что плохого в этой стоимости, если она приемлема для >99% применений?
> Это получается не за счет компиляции (опыт Itanium-а показывает, что эффективная статически-предиктивная компиляция недостижима), а за счет глубокого спекулятивного исполнения, т.е. за счет увеличения по сравнению с Альфой в несколько раз площади и стоимости кристалла процессора и его энергопотребления.
То есть, в переводе на понятный язык, на десктопе и выше она перестала тянуть из-за слабой расширяемости и недостаточно "спекулятивного" исполнения, а для более embedded ниш она в разы кривее MIPS, ARM и прочих конкурентов.