Intel сегментирует свою платформу
2011-12-09 03:22 pmИнтересно наблюдать за развитием чипсетов/платформ/сокетов от Intel. После долгих лет доминирования LGA775 в 2009 году они перешли на LGA1366 и тогда казалось, что это единственный путь в будущее — трёхканальная DDR3-память, процессор связан с памятью напрямую без северного моста, всё очень быстро, хорошо и перспективно — так в тестах, так и на практике.
Затем проходит пару лет и Intel переходит на разъём LGA1155, делая ещё одно ответвление от LGA775. В рамках новой ветви сначала выпускается переделанная версия тех процессоров, что вышли под LGA1366 (Nehalem), хотя они работают не так быстро, как раньше, по причине двухканального доступа к памяти. Затем Intel разрабатывает новую архитектуру — Sandy Bridge, — которая предназначена только для LGA1155 и не переносится на LGA1366. Почему?
Ну, дело в том, что трёхканальной памяти в топовом сегменте как бы мало. Вместо допиливания Sandy Bridge под LGA1366 они анонсируют Sandy Bridge-E под LGA2011 — четырёхканальная память, минимум 6 выделенных ядер и 12 hyperthreading-ядер, а также 40 линий PCI-Express для того, чтобы можно было установить целых три CUDA-видеокарты для параллельных вычислений без потери скорости (в LGA1155 только 16 таких линий и соответственно одна видеокарта, физически установить можно больше, но скорость шины делится).
Выводы? Intel после LGA775 чётко разводит настольную и серверную платформы. Это уже не просто зионы, целероны и пентиумы: больше кэша и поддержка ECC-памяти, а остальное всё то же самое — это теперь действительно другие процессоры: с другим разъёмом, другими чипсетами, другим интерфейсом процессор — южный мост (DMI/QPI) и т.д. Обе ветви растут вверх независимо, ни одна из них не является урезанной версией другой, потому что у них разные приоритеты. У первой — выжать максимум на одно-двухпоточных приложениях и интегрировать видеокарту в процессор; у второй — обеспечить максимальную пропускную способность доступа к памяти для параллельных вычислений, в том числе и для дискретных видеокарт, особенно для ситуации, когда много дискретных видеокарт.
Возможно, всё это только потому, что с отказом от LGA775 с материнской платы исчез северный мост (MCH — Memory Controller Hub), который раньше инкапсулировал все эти различия. Теперь интерфейсом между видеокартой и основной памятью вынужден быть процессор — а если у него с одной стороны три видеокарты, а с другой — четыре планки памяти, то ему просто необходима лишняя тысяча ножек.
UPD. Очевидно, в этом есть смысл: http://www.phoronix.com/scan.php?page=news_item&px=MTAyNjU
Затем проходит пару лет и Intel переходит на разъём LGA1155, делая ещё одно ответвление от LGA775. В рамках новой ветви сначала выпускается переделанная версия тех процессоров, что вышли под LGA1366 (Nehalem), хотя они работают не так быстро, как раньше, по причине двухканального доступа к памяти. Затем Intel разрабатывает новую архитектуру — Sandy Bridge, — которая предназначена только для LGA1155 и не переносится на LGA1366. Почему?
Ну, дело в том, что трёхканальной памяти в топовом сегменте как бы мало. Вместо допиливания Sandy Bridge под LGA1366 они анонсируют Sandy Bridge-E под LGA2011 — четырёхканальная память, минимум 6 выделенных ядер и 12 hyperthreading-ядер, а также 40 линий PCI-Express для того, чтобы можно было установить целых три CUDA-видеокарты для параллельных вычислений без потери скорости (в LGA1155 только 16 таких линий и соответственно одна видеокарта, физически установить можно больше, но скорость шины делится).
Выводы? Intel после LGA775 чётко разводит настольную и серверную платформы. Это уже не просто зионы, целероны и пентиумы: больше кэша и поддержка ECC-памяти, а остальное всё то же самое — это теперь действительно другие процессоры: с другим разъёмом, другими чипсетами, другим интерфейсом процессор — южный мост (DMI/QPI) и т.д. Обе ветви растут вверх независимо, ни одна из них не является урезанной версией другой, потому что у них разные приоритеты. У первой — выжать максимум на одно-двухпоточных приложениях и интегрировать видеокарту в процессор; у второй — обеспечить максимальную пропускную способность доступа к памяти для параллельных вычислений, в том числе и для дискретных видеокарт, особенно для ситуации, когда много дискретных видеокарт.
Возможно, всё это только потому, что с отказом от LGA775 с материнской платы исчез северный мост (MCH — Memory Controller Hub), который раньше инкапсулировал все эти различия. Теперь интерфейсом между видеокартой и основной памятью вынужден быть процессор — а если у него с одной стороны три видеокарты, а с другой — четыре планки памяти, то ему просто необходима лишняя тысяча ножек.
UPD. Очевидно, в этом есть смысл: http://www.phoronix.com/scan.php?page=news_item&px=MTAyNjU
no subject
Date: 2011-12-09 03:56 pm (UTC)Все эти риски не заботят монопродукт. И все хорошо, пока он пользуется спросом и с каждым релизом все лучше и лучше. Но. Но если с очередным обновлением или новой версией производитель не угадает, то кагбэ ожидается падение и очень сильное падение.
Это так, мысли вслух.
no subject
Date: 2011-12-09 04:39 pm (UTC)В нижнем сегменте определённо рулит ARM - из-за энергоэффективности на мобильных платформах (планшетах), простой ортогональной системы команд, успеха Apple iPad и интереса со стороны Microsoft.
В верхнем сегменте в долгосрочной перспективе рулит неизвестно что, но определённо не x86_64. Основная причина - очень жёсткие Memory Ordering Rules (не знаю, как это сказать по-русски):
http://en.wikipedia.org/wiki/Memory_ordering
Это ограничивает количество ядер.
Интересно наблюдать за развитием видеокарт - у них там уже сейчас порядка 16 ядер и RISC-подобная архитектура с такими особенностями:
1) принудительный SIMD большого масштаба - SSE последних версий манипулирует одновременно 4 числами одинарной точности, в видеокартах это число составляет минимум 32; с т.з. программной модели это как 32 виртуальных процессора со сцепленным указателем команд
2) огромный регистровый файл, порядка тысячи элементов
3) иерархическая память - регистровый файл SIMD-субядра, память ядра ("мультипроцессора"), общая память видеокарты, общая память констант видеокарты, основная память компьютера - внешняя для видеокарты
Они постоянно экспериментируют с системой команд, соотношением объёмов памяти разных уровней, количеством SIMD-субядер и т.д. Программисты пишут C-подобный код, который компилируется в байткод и в таком виде поставляется конечному пользователю. У конечного пользователя драйвер видеокарты выполняет JIT-компиляцию этого байткода в машинный код и передаёт видеокарте на выполнение. Можно компилировать напрямую в машинный код или писать сразу на самом низкоуровневом ассемблере, но это придётся делать отдельно практически для каждой модели видеокарты на рынке.
Идеи там достаточно революционные и задающие будущие тренды для CPU-архитектур.
no subject
Date: 2011-12-09 05:05 pm (UTC)А вот на развитие архтектур в видеочипсетах также смотрю с большим интересом.
к сожалению...
Date: 2011-12-09 08:39 pm (UTC)основной закон кап-зъма ;)))
с этим , к сож, ничего не поделатъ...
расход платформ подстёгивает обновление железа, не внося существенного в принципы построения...
закон Мура не распрострняиццо на эти законы, увы ;)
Re: к сожалению...
Date: 2011-12-09 10:44 pm (UTC)Другого способа честно зарабатывать деньги, кроме как продавать товары и услуги дороже их себестоимости, пока не придумали.