Ядро Linux больше не будет поддерживать процессоры Intel Itanium после решения Линуса Торвальдса выпустить патч, помечающий архитектуру как «потерянную».
«HPE больше не принимает заказы на новое оборудование Itanium, а Intel прекратила прием заказов еще год назад», — отмечает Торвальдс. По его словам, хотя Intel все еще официально поставляет чипы до 29 июля 2021 года, но маловероятно, что такие заказы действительно существуют. «Он мертв, Джим», — заключил Линус.
Itanium был разработан совместно HP и Intel и используется в серверах HP Integrity. Микропроцессор построили на архитектуре IA-64 (EPIC), которая должна была заменить x86 в 64-битных серверах и настольных компьютерах. На стадии разработки в 90-х архитектуру планировали сделать доминирующей в сфере корпоративных вычислений.
Itanium поддерживался Windows NT, HP-UX, Linux, OpenVMS, Solaris и другими. Первый процессор был выпущен в 2001 году, но его показатели производительности оказались невысокими. В итоге Intel приняла AMD x86-64 как отраслевой стандарт.
В 2017 году вышла серия 9700 «Kittson», и Intel заявила, она будет последней для Intel Itanium. В феврале 2019 года компания объявила, что поставки Itanium завершатся в июле 2021 года.
NeoCode
Жалко что itanium'у не удалось заменить x86. Все же в x86 за десятилетия ее существования уже столько всего наворотили, что давно пора начать с нуля.
ganzmavag
Удивительно, что отказ от наворотов особо пользы не принес, получается. Насколько помню даже в нативных программах его было невыгодно использовать.
zaq1xsw2cde3vfr4
Думаю, что NeoCode имел в виду не те навороты, а кучу атавизмов.
ganzmavag
Так в Itanium от них же как раз и избавились, разве нет?
NeoCode
Да, и атавизмы (вроде команд двоично-десятичной коррекции), и то что подход с добавлением новых команд и регистров сам по себе хуже, чем проектирование с нуля всего сразу. Изначально там все было спроектировано неплохо, но чем дальше — тем больше груза обратной совместимости.
sumanai
Там всё было спроектировано для экономии битов в программе, оттуда и однобайтовые команды, и кодирование операндов прямо в команде. А потом это просто не стали рефакторить, а начали наслаивать костыли.
bm13kk
Есть мнение, что компиляторы важнее в производительности, чем железо. За 30 лет компиляторы настолько научились оптимизировать x86, что свежие компиляторы для свежих архитектур не идут ни в какое сравнение.
mstyura
Как раз интересная статейка по этому вопросу вчера вспывала: How does clang 2.7 hold up in 2021?
Mansur13
Спасибо. Интересная статья. Даёт пищу для размышлений.
legolegs
В статье тестируются бенчамарки, аккуратно написанные и отпрофилированные. Если бы такое исследование на какой-нибудь махровой опердени провести (желательно такой, чтоб код было больно читать), вот это возможно показало бы прирост пользы от развитого оптимизирующего компилятора.
beeruser
Дело не в том, что компиляторы научились компилировать, а в том, что современные микроархитектуры х86 научились эффективно выполнять говнокод.
На простых, вручную вылизанных циклах в HPC — Итаниум рулил. Но любой сложный код с бранчами и слабо предсказуемым доступом к памяти ему был как кирпич поперёк горла.
sumanai
А если так же вылизывать код на x86 с учётом полной загрузки всех исполнительных блоков?
beeruser
Чтобы загрузить юниты, нужно для начала данные из памяти/кэша получить.
А кэша Интел не жалел — в двух-ядерном Itanium 9050 времён Core2Duo было 24МБ кэша.
Даже если посмотреть результаты SPEC2006:
Xeon 5160 3GHz, 4MB L3
www.spec.org/cpu2006/results/res2006q4/cpu2006-20061127-00157.html
Itanium2 1.6GHz, 18MB L3
www.spec.org/cpu2006/results/res2006q4/cpu2006-20060918-00100.html
Некоторые тесты Spec itanium2 выполняет сильно быстрее. Мне кажется что по большей части это из-за большого кэша.
sumanai
В моём текущем процессоре 64 мегабайта L3 кеша, но он там чисто для компенсации высоких задержек доступа к памяти.
beeruser
Так кэш для того и создан, чтобы компенсировать высокие задержки памяти.
Ваш КО.
Если вы таким образом пытаетесь намекнуть на задержку в IOD по сравнению с гипотетическим монолитным процессором, то эта задержка практически ни на что не влияет, она просто ничтожна.
sumanai
Просто кеша обычно накидывают, когда не хватает скорости доступа к основному хранилищу. И его размер в Itanium2 косвенно намекает на проблемы с доступом к памяти.
khajiit
Так проблемы с доступом к памяти в принципе начинаются, когда процессор декодирует команды быстрее, чем память их выдает. То есть, для x86 — еще с i386.
Rim13
И тут к нам возвращается RISC-V
bm13kk
У него уже експоненциальный рост.