23 сентября 04 года
From: alexey lopatkin Добрый день, Дмитрий. Пишу по поводу последнего выпуска... "Вот только... с 8086 оно как бы несовместимо, и потому - на писюках не будет. " Думаю, что будет. Более того уже работает, причем практически во всех современных процессорах. Взять хотя бы те же интеловские процессоры, так внутри они уже давно не CISC, а что-то RISC подобное только сложнее. И выполняться одновременно могут несколько инструкций как это ни странно. Т.е. х86 инструкции внутри процессора транслируются во внутренние инструкции, которые уже распараллеливаются. Уже довольно давно основной задачей создателей компиляторов для таких процессоров является реализация такой оптимизации, при которой как можно реже бы происходили ошибки в блоке предсказания ветвлений (из-за таких ошибок происходят основные потери производительности). Такой блок есть в процессорах Intel, AMD, Power, SPARK, Alpha (земля ей пухом) ... Вот только слишком много место на кристалле занимает блок декодирования инструкций. Этот блок в том числе занимается оптимизацией кода во время исполненния. Но от его физического размера сильно зависит цена и тепловыделение. Есть такая конторка, Transmeta называется (site: transmeta.com). Они делают честный VLIW (very long instruction word) процессор. У их первого процессора (crusoe) длинна слова инструкций составляла 128 бит, у нынешнего (efficeon) - 256. В каждое такое слово запаковывается несколько инструкций + информация о возможном распараллеливании инструкций друг с другом и с предыдущими/следующими словами. Вся работа по оптимизации отдана на откуп компилятору. За счет чего ОЧЕНЬ сильно уменьшено кол-во транзисторов. Вместе с этим цена и тепловыделение существенно снижены. Но выходить на рынок с новым набором инструкций могут себе позволить только гиганты типа IBM и Intel (а может быть уже даже они не могут), поэтому ребята сделали по простому: решили эмулировать интеловскую архитектуру. При старте системы загружается специальное ПО (называется Code Morphing), которое занимается транслированием x86 инструкций в native инструкции. Конечно, по производительности такой процессор не может тягаться чем-то типа Pentium-III, но отставание на той же частоте где-то раза в два - это довольно хороший показатель для итнерпретации (особенно если сравнить цены и тепловыделение). На этих процессорах делают всяческие планшеты, субноутбуки и даже обычные ноутбуки нижнего ценового диапазона. Прекрасно запускаются и винда и линукс. Ну а если подумать, то не так уж этот процессор от интела отличается. У пентиумов внутри примерно то же самое + реализация в железе всего того, что у трансметы Code Morphing делает. В деталях, конечно отличается, но идея та же. Думаю мы еще увидим похожие реализации от лидеров идустрии, хотя это скорее всего случиться не в ближайшее будующее. Для этого гонка за производительностью должна сбросить темпы. Всего хорошего, Алексей Лопаткин. |
Оригинал страницы находится на http://dibr.nnov.ru/issue230904.html. | (с) DiBR |
При перепечатке ссылка обязательна. | << * >> |