Re[16]: Что на самом деле произошло с Windows Vista
От: alex_public  
Дата: 08.06.17 12:25
Оценка: +1
Здравствуйте, koandrew, Вы писали:

_>>Вообще то динамическую загрузку нужного кода, в зависимости от типа процессора делали руками уже не первое десятилетие. ))) Ну а современные компиляторы позволяют решать эту задачу уже вообще автоматически. Например в GCC ты можешь указать в атрибутах функции набор нужных процессоров (например с SSE, с AVX и т.п.), под которые нужно её скомпилировать. В ответ на это компилятор сделает по одной бинарной версии функции под каждый процессор и плюс ещё собственно саму функцию (с нужным именем), представляющую собой форвард к нужной реализации. )

K>Очень херовый подход, т.к. совместимость только в обратную сторону. То есть перенести бинарь на платформу, которой не существовало в момент компиляции, невозможно.

Согласен. Поэтому я и говорю, что в принципе идея универсального байт-кода вполне не плохая. К сожалению пока что вменяемые реализации этой идеи (типа LLVM) не имеют прямой поддержки в соответствующих ОС. Так что для их использования потребуется тащить с собой ещё и весь рантайм — при таких условиях пока что выгоднее использовать технику типа предлагаемой gcc и собирать новый бинарник при выходе новой архитектуры (тем более, что новые версии ПО обычно выходят всё же чаще чем новые поколения процессоров).

K>Вот это и есть главная причина того, что развитие архитектуры процов буксует всеми колёсами.


Развитие архитектуры вроде как совсем не буксует. Более того, в последние годы это по сути единственный работающий способ, способный увеличивать производительность процессоров на универсальных задачах (а не только на узком классе задач, поддающихся лёгкому распараллеливанию).
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.