waqur: (Default)
[personal profile] waqur
На конференции ISC 2012 Intel анонсировала свои планы по выпуску на рынок семейства сопроцессоров Xeon Phi.

Сопроцессоры предназначены для высокопроизводительных параллельных вычислений, и будут выпускаться в виде платы расширения PCI Express (которая не претендует на то, чтобы быть видеокартой).

На плате есть несколько физических процессоров, которые в совокупности содержат 50+ X86-совместимых ядер класса P54C (Pentium 1 + SIMD + современный FPU). Они выпускаются по 22nm-техпроцессу. На сопроцессоре выполняется своя операционная система (встроенная версия Linux), а для связи с сопроцессором хостовому процессору нужны драйверы, свои для каждой ОС.

На плате своя память, GDDR5, не менее 8GB. Так что это скорее сокомпьютер, но маркетологам конечно виднее. Технари в любом случае не пользуются подобной терминологией, называя эту штуку MIC platform или SMP on chip. MIC = Many Integrated Core, SMP = Symmetric multiprocessing.

http://www.anandtech.com/show/6017/intel-announces-xeon-phi-family-of-coprocessors-mic-goes-retail

для технарей:
http://software.intel.com/en-us/blogs/2012/06/05/knights-corner-open-source-software-stack/
http://software.intel.com/en-us/forums/showthread.php?t=105443

Date: 2012-06-19 03:57 pm (UTC)
From: [identity profile] dibrov-s.livejournal.com
С трудом представляю сферу применения. Мультитаскинг закрытого (виндового) кода?

Date: 2012-06-19 04:19 pm (UTC)
From: [identity profile] waqur.livejournal.com
1) Высоконагруженный https-трафиком web-сервер, который перебрасывает на эту железяку шифрование/расшифровку.
2) Распознавание лиц на фотографиях и другая сложная обработка изображений (facebook)
3) Перекодирование видео на серверах типа youtube, распознавание лиц и эмоций на видео
4) Оценка дорожной обстановки в новых самодвижущихся машинах Google
5) Моделирование погоды / атомных взрывов / чего угодно в пространстве (метод конечных элементов) - полная комната машин с такими железяками
6) Моделирование пространства в minecraft и всяких там MMORPG
7) Криптоанализ мелких масштабов или хитрых хэш-функций, когда не годятся FPGA
8) Видеокарты переросли потребности большинства современных игр, Intel хочет перенести 3D-графику в процессор (чего достаточно для 95% случаев), а в 5% остальных случаев игры будут обращаться к этой железяке для моделирования отражений света от колеблющейся поверхности воды, моделирования физики взрывов, разбивания стекла на части, инерции при столкновении множества мелких тел и т.д.

Date: 2012-06-19 07:21 pm (UTC)
From: [identity profile] dibrov-s.livejournal.com
Не уверен, что пятьдесят Р54С является оптимальным инструментом для всех перечисленных задач.

Date: 2012-06-19 08:45 pm (UTC)
From: [identity profile] waqur.livejournal.com
ARMы могут быть лучше (энергоэффективнее), но это ведь Intel и это её предложение. Конечно же, в Intel любят свою архитектуру X86 и всячески продвигают её на рынок. Посмотрим, что выкатит AMD, nVidia, и другие конкуренты.

Те SIMD-процессоры, что сейчас применяются в видеокартах, не имеют будущего, они слишком узкоспециализированы. Они могут давать энергетический выигрыш для некоторых задач, однако например FPGA дают ещё больший энергетический выигрыш для криптоанализа, но ведь никто массово не производит и не устанавливает в настольные ПК платы на основе FPGA? Тут побеждает универсальность.

Date: 2012-06-19 04:41 pm (UTC)
From: [identity profile] waqur.livejournal.com
На данный момент, были попытки делать такие вещи в видеокартах (NVidia CUDA, AMD Stream); однако у них достаточно ограниченная архитектура (мало кэш-памяти, всё время меняется система команд, всякие дурацкие требования типа чтобы блок из тридцати двух процессоров имел синхронизированный указатель команд - на самом деле там все инструкции SIMD и гигантские регистры, а действительных ядер тоже порядка нескольких десятков). Из-за этого не все проблемы из сферы параллельных вычислений на них можно решать. Те, которые можно решать - они берут хорошо, остальные не берут никак.

И тут появляется Intel, которая обобщает видеокарту до вот такой супержелезяки, тем самым расширяет её сферу применимости далеко за пределы игр на настольных ПК. Она даёт сигнал программистам - весь код, который вы писали на нашем 32-битном ассемблере последние 30 лет, старались над оптимизирующими компиляторами - это всё не зря! Она даёт сигнал инвесторам - у нас есть ответ на слияние AMD/ATI. Она даёт сигнал инженерам - рано ещё хоронить архитектуру X86. Она даёт сигнал nVidia - готовьтесь сменить сферу деятельности.

Date: 2012-06-19 07:30 pm (UTC)
From: [identity profile] dibrov-s.livejournal.com
Ассемблер — да, понимаю. Но в остальном — не знаю. Вряд ли такая железяка стимулирует написание серьезного кода под х86. Сопроцессор, как я понял из описания, имеет собственный api.

Date: 2012-06-19 08:39 pm (UTC)
From: [identity profile] waqur.livejournal.com
Ну, у драйверов есть некий API, с помощью которого можно перебросить с хоста на эту плату код и данные, и забрать данные обратно. Код - это будут скорее всего ELFовые бинарные файлы, собранные GCC. Под линуксом покатит родной GCC, под виндой - кросс-компилятор. Кто не умеет собрать сам - тому Intel выкатит SDK. К тому же, на самой этой железке тоже будет какой-то способ пообщаться с хостом, вернуть данные, пнуть прерывание и т.п. Как минимум, пара заголовочных файлов, может какой-то новый системный вызов.

Весь код, который был написан под X86, и занимается сугубо вычислениями (а не обращениями к Win32 API, базе данных и т.п.), будет без проблем работать на этой железяке. Код можно будет отлаживать на главном процессоре, а когда готов - передавать на сопроцессор.

Date: 2012-06-20 07:06 am (UTC)
From: [identity profile] dibrov-s.livejournal.com
Да, примерно также и я себе это представляю. То есть это не будет супер-платформа под winAPI, и весь наработанный за десятилетия массив софта не пройдет здесь с супер-скоростью. Другими словами, мы не получим «просто так» супер-фотошоп или супер-3d studio. Эффективное использование такой платы потребует даже не пересборки, а переработки софта с переходом на клиент (хост) — серверную (плата) архитектуру. То есть, никаких принципиальных преимуществ использования x86 я не вижу, потому и недоумевал по поводу возможной области применения. Как я понимаю, это нишевое аппаратное решение для какой-то конкретной узкой задачи.
Edited Date: 2012-06-20 07:09 am (UTC)

Date: 2012-06-20 07:27 am (UTC)
From: [identity profile] waqur.livejournal.com
Да, разумеется, все обычные приложения не станут просто работать быстрее от добавления этой железяки. Есть класс вычислений, которые хорошо поддаются распараллеливанию (примеры (http://waqur.livejournal.com/501374.html?thread=1685118#t1685118)), все остальные — нет. Даже в теории, теорема Брента (почему-то её нет в Википедии) утверждает, что есть такие алгоритмы, которым добавление новых ядер сверх некоторого предела не даёт никакого выигрыша по времени. Но поскольку предел тактовой частоты уже достигнут, дальше процессоры могут расти только в ширину, что и происходит.

Использование x86 объясняется как тем, что поставщик решения - Intel, так и соображениями практического характера — удобство отладки, возможность переноса уже написанного и хорошо оптимизированного вычислительного кода, возможность запуска этого кода на центральном процессоре, если именно у данного пользователя сопроцессор недоступен, а у центрального процессора много ядер.

Также, по сравнению с видеокартами, эта штука лучше масштабируется. У видеокарт вечно проблемы с драйверами, совместимостью, большим разрывом поколений при работе в SLI/CrossFire. У этой штуки проблем не будет никаких - сегодня вы купили 50 ядер, через 5 лет вам понадобились ещё ядра, вы купили ещё 500 ядер, а ещё через 5 лет - третью плату с 5000 ядер. Все три платы работают в одном компьютере, если хватает слотов PCI Express, балансировка нагрузки - несложная задача для драйверов. Куда там видеокартам с их чередованием чётный/нечётный кадр и т.д.
Edited Date: 2012-06-20 07:41 am (UTC)

March 2024

S M T W T F S
     12
3456789
10111213141516
17181920212223
24252627282930
31      

На этой странице

Автор стиля

Развернуть

No cut tags
Page generated 2026-05-07 07:47 pm
Powered by Dreamwidth Studios