02 авг 2010, 14:34
Вот читал-читал все 13 страниц спора и не выдержал, решился написать. А побудило меня следующее... Беспочвенный разнос процессора Cell. Я конечно все понимаю, вечная война ящеров и плоечников, но уж облагать при этом вполне четкую и грамотную архитектуру - увольте! Ящеры в один голос тут вопят - у Cell одно ядро типа полноценное, а остальное так, 7 насранных кристаллов, типа калькуляторных по своей простоте. О да, великие технари... Небось половина закончила МФТИ или МИРЭА.
Начнем пожалуй разбираться с PPE. Ну здесь хоть биллибойчики признали его полноценным ядром (но это типа отстой ибо у "святого" бокса таких три!). На этом уже огромное спасибо. А если немного поточнее, то PPE - два 64-разрядных процессорных ядра с поддержкой технологии одновременной обработки двух потоков (SMT - Simultaneous Multi-Threading), близким аналогом служит Hyper-Threading от Intel. Ладно, тут все более-менее понятно - просто процессор. Далее. А далее как раз про SPE. И тут "огонь-бабах!" майки выстреливают заявлениями, чуждыми разумным людям с техфаков институтов (конеч прогульщики и "купленные" дипломы не в счет). "Он неполноценный, он ущербный!" А с какой стороны вы смотрите, товарищи? У вас понятие ущербность значит отличие от "пацанской" нормальной архитектуры скалярных попсовых процов, тех что у всех дома стоят и что в боксе и PPE кстати тоже онный. Он ВНИМАНИЕ!!! просто СПЕЦИАЛИЗИРОВАН ПОД ОПРЕДЕЛЕННЫЕ РАСЧЕТЫ! Вообще, коротко о SPE - синергический процессорный элемент представляющий собой специализированный векторный процессор, обрабатывающий SIMD-инструкции (аналог SSE в Pentium и 3Dnow! в Athlon). Архитектура SPE да, довольно проста, похожа на первые Pentium: четыре блока для работы с целочисленными векторными операциями и четыре блока для работы с числами с плавающей запятой. Правда, при этом большинство арифметических инструкций представляют собой 128-разрядные векторы, разделённые на четыре 32-битных элемента. Каждый SPE оснащён 128 регистрами, разрядность которых - 128-бит. Вместо кэша L1 процессор содержит 256 Kb собственной "локальной памяти" (local memory, также называемой local store) разделённой на четыре отдельных сегмента по 64 Кбайт каждый, а также DMA-контроллер. Последний предназначен для обмена данными между основной памятью (RAM) и локальной (LM/LS), минуя PPE. Уже есть аргументы в выше сказанном против обсирания моего сладенького)) Cell SPE. итак, что же он считает?! правильно! БИНГО! Даже ящеры умеют читать - ВЕКТОРНЫЕ операции! ВЕКТОР?! Хммм...?! Даже помня геометрию и физику - ни о чем не говорит?! Что?! Погромче, ну же... И снова в точку! Вектор описывает ВСЕ ТРЕХМЕРНОЕ ПРОСТРАНСТВО! И в математике (а кстати наперед замечу технознатоки - вся графика 3D состоит из линейной алгебры (если брать самые низы), то есть любая точка на экране описана - снова это пугающее ящерков словцо - ВЕКТОРАМИ, тремя координатами его начала и тремя его конца вдоль декартовых осей) Что я хотел сим сказать? А то, что в Cell заключены 6 SPE, которые может и похожи на калькуляторы по системе, да только обрабатывают данные намного эффективнее простого проца, ибо векторые счисления имхо сложнее чем СКАЛЯРНЫЕ. И еще про разработку под Cell - локальная память, по сути, выполняет роль кэша L1, но при этом полностью контролируется программистом, вследствие чего организована значительно проще. Достигается это путём переноса логики контроля за переполнением кэша из самого чипа в программный код, что способствует облегчению архитектуры локальной памяти (отсутствует поиск в RAM при каждом обращении к LM, упреждающая выборка и т.д.). Из всего бла-бла предыдущего предложения - проггеру, у которого руки не из жопы выросли, проще работать с подвластным лок кэшем SPE нежели усмирять стандартный L1.
Ладно, закончим с теориями счисления, я так думаю майкобои не поймут мои мысли, им же нужно "МЯСО", то есть сравнение возможностей графической системы. И тут у меня найдется про SPE.
Для каких целей могут быть использованы SPE? Ответ на этот вопрос многогранен тянет на отдельную статью, так что ограничимся самым важным.
SPE служат пиксельными шейдерами и используются для конвейера просчёта. Не смейтесь! Сама IBM во время ISSCC 2005 заявила, что считает Cell комбинацией процессора и графического чипа! Благодаря прямой связи между всеми SPE с помощью шины EIB, а также локальной памяти в их составе, существует возможность динамически переключать различные процессорные элементы на выполнение той или иной части конвейера просчёта.
Чтобы не быть многословными, перечислим возможности использования SPE через запятую: просчёт физических моделей, тесселяция поверхностей высшего порядка в полигональные модели, инверсная кинематика, скелетная анимация, обработка воксельных данных, анимация частиц, компрессия/декомпрессия видеоданных в формате MPEG4 "на лету", просчёт алгоритма ray-tracing "на лету", преобразование аудиоданных из одного формата в другой "на лету", обработка алгоритмов шифрования, искусственного интеллекта… это предложение можно продолжать очень долго... Умолчу я о шинах и контроллерах памяти - сами можете начитаться...
К слову, у Cell есть запас в плане технологий динамичной тесселяции геометрии (аналог навороченных функций DX11 на новых карточках), что является пределом уменьшения лесенок в объектах естественным путем (вспмните хоть 3D Max, где качество сплайнов зависит от уровня интерполяции кривых, то есть число отрезков из которых складывается любая кривая, стремится к бесконечности). Но даже про MLAA - да это постобработка как и любой AA, но AA тупо влоб по школярному гладит лесенки - делает в два раза больший кадр, то MLAA просто хитрее - на выходной кадр накладывается постобработка, ктороя схожа с теми фичами, что использует PIXAR в своих СП, поверьте, он не ставит антиалиайзинг, а делает все за счет постобработки уже после рендера основного кадра.
Под итог - мне просто обидно за обсир реально сильной архитектуры Cell а не то что я сонибой...
PS: немного еще о SPE - видекарты ничто иное как веторные считалки, так что недостаточность нвидиавского чипа компенсируется синергетическими монстриками. А почему же графика на PS3 не в разы лучше? Потому что пока до конца не раскрыли возможности программирования под непривычную разрабам архитектуру Cell, запас у которой еще есть, о чем и говорит факт, что Sony замедлила анонс новой консоли. Про мультиплатформу - а кто в здравом уме станет делать ее в двух разных по архитектуре вариантах из разработчиков-конвеерщиков типа Юби, ЕА или тп. Им проще по старинке (и дешевле) - под обычные скалярные ядра и отдельную видюшку (а онная признаю слабее у PS3 чем у XBOX 360) То есть еще 6 ядер способных на просчет графики в мультиплатформе стоят у соньки! Вот и имеем мы иногда лучшие показатели у икса. А в плане внутренних студий SCEE и SCEA - они с самого начала тупо точят мастерство под Cell и эксклюзивы типа Киллзон становятся все технологичнее. Время покажет вообщем запал ядрышек плойки, но в любом случае я свое доказал - Cell надежный, сильный и технологичный процессор, просто возможно железо немного опередило способности разработчиков подстроится под него.
PS ver 2.
в ответ на нападки типа "xbox" давно чешет тесселяцию - я не утверждал обратного! Ясное дело, что видеочип с универсальной архитектурой поддерживает тесселку. Но вопрос в другом - моя цель лишь показать что Cell и его SPE не гавно коим его вы называете. SPE - это 6 ядер тесселяции если совсем грубо! То есть, разбиение геометрии на более сложную структуры возможно в шесть потоков одновременно и с частотой 3,2 гигагерца. Тесселяция - чисто расчетная операция, где тупо играет роль операции с плавающей точкой, поэтому не стоит снова же срать продукт семейства powerPC.
Последний раз редактировалось
FyCom 02 авг 2010, 15:54, всего редактировалось 2 раза.