Смерть Сотового процессора - PullRequest
3 голосов
/ 02 ноября 2009

в последнее время я слышал, как многие люди утверждали, что процессор Cell не работает, в основном по следующим причинам:

  • Отсутствие поддержки в новой playstation 3, так как пользователь не может установить linux
  • Увеличение вычислительной мощности графических процессоров и снижение их стоимости
  • Существование единого подхода к программированию (openCL) для разных графических процессоров, а не для CBE (хорошо было объявлено сегодня для Cell!)
  • Прозрачность реальных примеров использования клетки (кроме академических кругов)
  • Глобальное чувство неудачи

Что ты думаешь? Если вы начали два или три года назад программировать ячейку, продолжите ли вы это делать или планируете перейти на GPU? Выходит новая версия ячейки?

Спасибо

Ответы [ 4 ]

11 голосов
/ 02 ноября 2009

Я бы сказал, что причины отсутствия популярности для развития клеток ближе к:

  • Отсутствие успеха в PS3 (из-за множества ошибок со стороны Sony и сильной конкуренции с XBOX 360)
  • Низкая производительность, высокая стоимость (отчасти из-за низкой производительности) и отсутствие доступных аппаратных систем, кроме PS3
  • Сложность разработки (ячейка является необычным процессором для разработки, а оснастка отсутствует)
  • Неспособность достичь существенных различий в производительности по сравнению с существующим аппаратным оборудованием на базе x86. Даже трехлетний трехъядерный процессор Power Xbox Xbox 360 доказал свою конкурентоспособность, по сравнению с современным процессором Core2 Quad, преимущества которого не очевидны.
  • Усиление конкуренции со стороны вычислительных платформ общего назначения, таких как CUDA
3 голосов
/ 06 января 2012

Параллельные программы проще писать для тысяч потоков, чем для десятков потоков. Графические процессоры имеют тысячи потоков, с аппаратным планированием потоков и балансировкой нагрузки. Хотя современные графические процессоры подходят главным образом для параллельных небольших ядер, у них есть инструменты, которые делают такое программирование тривиальным. Cell имеет только несколько процессоров порядка 10 с в пользовательских конфигурациях. (Производные Cell, используемые в суперкомпьютерах, пересекают линию и имеют сотни процессоров.)

ИМХО одной из самых больших проблем с Cell было отсутствие кеша инструкций. (Я громко спорил об этом с архитекторами Cell на самолете с конференции MICRO в Барселоне в 2005 году. Хотя они и не соглашались со мной, я слышал то же самое от пользователей компьютеров supersuper. - У GPU такая же проблема, хотя они жалуются. Но вставка кода в память команд фиксированного размера - это боль. Добавьте оператор IF, и производительность может упасть с обрыва, потому что вы должны начать использовать оверлеи. Управлять структурами данных намного проще, чем избегать добавления кода для исправления ошибок в конце цикла разработки.

У GPU изначально были те же проблемы, что и у ячеек - ни кешей, ни I, ни D.

Но у графических процессоров было больше потоков, параллелизм данных намного лучше, чем у Cell, что они поглотили этот рынок. Оставляя Cell только заблокированным в консоли пользователям, и кодам, которые были более сложными, чем GPU, но менее сложными, чем код CPU. Сжатый в середине.

И, тем временем, графические процессоры добавляют I $ и D $. Таким образом, их становится легче программировать.

1 голос
/ 01 июля 2010

Почему Клетка умерла?

1) SDK был ужасен. Я видел некоторых очень ярких разработчиков о том, как почесать глаза, просматривая списки рассылки IBM, пытаясь выяснить эту проблему или проблему с Cell SDK.

2) Шина между вычислительными блоками начинала показывать проблемы с масштабированием и никогда бы не добралась до 32 ядер.

3) OpenCl был на 3-4 года позже, чем когда-либо.

0 голосов
/ 02 ноября 2009

Если вы начали два или три года назад чтобы запрограммировать ячейку, вы будете продолжать на это или вы рассматриваете переход на GPU?

Я бы подумал, что 90% людей, которые программируют для процессора Cell, не в состоянии произвольно решить прекратить программирование для него. Вы нацеливаете этот вопрос на очень специфическое сообщество разработчиков?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...