
Конечно, современное ПО не может реализовать потенциал архитектуры «Бульдозера». Использование зависимых процессорных модулей в независимых вычислительных потоках будет только ухудшать результирующую производительность системы. Но уже анонсирована поддержка данной архитектуры в Windows 8, и это дает, по предварительным оценкам специалистов, около пятнадцати процентов производительности. Даже для такой элементарной оптимизации на уровне диспетчера потоков ОС. Если же заточить под эту архитектуру виртуальные машины и компиляторы, тогда к этим процентам можно смело приписывать ещё один ноль...
Кому-то это утверждение покажется слишком оптимистичным, но с учётом того, что, к примеру, связывание на этапе выполнения требует сначала просмотра таблиц связи и только после этого вычисления адреса требуемой процедуры, то разделение процессов связывания и выполнения как раз и повышает результирующее быстродействие в два раза (минимум).
Кстати, на заре архитектуры К10 бродили слухи о том, что AMD собирается внедрить многопоточность в это ядро, причём эта гипотетичная технология красноречиво называлась «антигипертрединг» (Anti HyperThreading). Теперь понятно, почему. Видимо, на тот момент концепция ещё не созрела, а теперь, похоже, настало её время.
Для реализации всех преимуществ архитектуры «Бульдозера» недостаточно только оптимизаций, обязательно потребуются специализированные системные команды для тонкого управления аппаратурой. Потребуется и дополнительная аппаратура, но это потом, в новых «строительных машинах», которые AMD собирается выпускать каждый год, а пока достаточно и того, что сделано. Удалось бы внедрить оптимизацию на уровне общих кэшей процессорного модуля, и этого уже будет достаточно для начала.
Остается загадкой: изначально авторы данной архитектуры предполагали подобное использование своего детища, или это получилось у них случайно? Типа того, как Колумб плыл в Индию, а открыл Америку?
