Кудряшов.А.С. 14:48 14.09.2007
Кудряшов.А.С. 16:50 14.09.2007
Кудряшов.А.С. 20:19 14.09.2007
Sony PlayStation 3
Третье поколение
Sony PlayStation. За последнее десятилетие это словосочетание стало легендой и едва ли не синонимом понятия «консольные видеоигры». В ныне далёком 1994-м году японская корпорация Sony решила попробовать свои силы на в ту пору вновь вошедшем в моду рынке электронных развлечений, и выпустила игровую консоль PlayStation (что в вольном переводе на русский означает «ИгроваяКонсоль»).
Не все знают, что первая PlayStation родилась из совместного проекта Sony и уже тогда многоопытной компании Nintendo по добавлению к консоли SNES CD-привода, который позволил бы не только играть в SNES-игры от Nintendo, но и полноценно использовать новый в те времена формат CD, активно продвигаемый Sony.
Однако что-то в ходе этого проекта между партнерами не заладилось, и версия SNES с CD-приводом на свет так и не появилась. Но поскольку сделано было уже немало, то наработки решено было использовать в собственной игровой консоли (к сильному недовольству Nintendo, которая из-за этого даже подала на Sony в суд).
Первая попытка оказалась на удивление успешной — консоль PlayStation производилась 11 лет и продалась тиражом в 100 с лишним миллионов, став первой в истории игровой консолью, достигнувшей этой отметки. Что любопытно, прямой конкурент консоли Sony PlayStation от Nintendo — вышедшая на два года позже консоль Nintendo 64 — продалась всего лишь в количестве 33 миллионов штук — ставка Sony на продвинутые мультимедийные возможности приставки полностью оправдалась.
Через шесть лет, в двухтысячном году, Sony представила вторую версию консоли, незатейливо названную PlayStation 2.
Феномен PS2 по сей день остаётся до конца не разгаданным. Нельзя сказать, чтобы PS2 так уж значительно превосходила своих конкурентов (в частности, Sega Dreamcast); нельзя сказать, чтобы PS2 обладала такой уж большой библиотекой потрясающих эксклюзивных игр (в момент начала продаж, играть на ней было особенно не во что). Пожалуй, единственным значительным отличием PS2 от своих конкурентов стала поддержка уже весьма распространенного в 2000-м году носителя DVD, однако объяснить этим огромный ажиотаж вокруг новой консоли, её стремительный взлёт к вершине и безоговорочную победу не только над первой, но и над второй волной конкурентов трудно.
Вероятнее всего, мы стали свидетелями эффекта синергии, когда множество на первый взгляд мелких преимуществ (DVD-носитель, продвинутые технологии, опережающий выход на рынок, поддержка со стороны крупных независимых издателей, множество собственных эксклюзивных брендов, удачный дизайн, удачно выбранная розничная цена и т.д. и т.п.) после слияния в одном продукте стали чем-то большим, нежели сумма «фич» на коробке.
PlayStation 2 претерпела несколько трансформаций, и в своей последней ипостаси производится по сей день, успешно обгоняя некоторые из новых консолей в продажах. На данное время всего в мире продано около 120 миллионов PlayStation 2 — Sony побила рекорд, поставленный первой версией консоли.
Но время не стоит на месте, и вот уже на рынке начинает появляться новое поколение игровых консолей — осенью 2005 года Microsoft начала продажи Xbox 360. Разумеется, Sony, уже дважды растоптавшая конкурентов своими PlayStation, не собиралась сдаваться без боя — и с упреждением, в мае 2005-го года, за полгода до выхода в продажу Xbox 360, анонсировала PlayStation 3.
«ИгроваяКонсоль-3»
Впервые нечто правдоподобное о новой консоли Sony прозвучало, когда компания Sony совместно с Toshiba и IBM объявила о начале разработки нового процессора — Cell. Уже тогда стало понятно, что именно этот процессор ляжет в основу следующей PlayStation.
Затем, впрочем, наступил «сезон плотных туманов». Никакой новой информации о PlayStation 3 не было вплоть до конца 2004-го года, когда Sony довольно неожиданно объявила о заключении соглашения с компанией NVIDIA на разработку GPU для своей новой консоли.
Потом последовал анонс (выставка E3 в мае 2005 года), негативные отзывы на прототип нового геймпада, череда всепланетных гаданий о спецификациях и дате появления новой консоли в продаже, шок от заявленных розничных цен и прочее — не станем напоминать вам подробности, история ещё свежа в памяти интересующихся предметом. Вместо этого давайте сконцентрируемся на основных отличительных чертах новой консоли, и начнём с технической «начинки» (познакомиться с которой детально можно в нашей
технической справке):
Итак, в основе консоли PlayStation 3 лежит процессор Cell производства консорциума STI (Sony, Toshiba, IBM).
Cell — центральный процессор
Разработанный консорциумом STI процессор Cell представляет собой многоядерный асимметричный CPU. Всего Cell насчитывает 9 ядер, но лишь одно из них является полноценным — это ядро основано на архитектуре IBM Power и носит название PPE (Power Processing Element).
(Сюрприз-сюрприз! PS3 стала третьей и последней консолью нового поколения, использующей архитектуру IBM Power — выражаем своё почтение компании IBM, сумевшей «подсадить» на свои процессоры вообще всю консольную индустрию.)
Хоть PPE и является относительно урезанным процессорным ядром (In-Order Execution с мультитредингом, всего лишь 512 КБ кэша L2), но одновременно оно же, — самое полноценное ядро в чипе Cell.
8 остальных ядер называются SPE (Synergistic Processing Elements), и представляют собой SIMD-«числодробилки» — маленькие, глупые и малоэффективные при исполнении традиционного, не оптимизированного кода. Однако на специально подготовленном для SPE коде Cell, благодаря этим маленьким, но злым «числодробилкам», демонстрирует потрясающую производительность, сопоставимую с производительностью целых вычислительных кластеров на традиционных CPU. Соответствующими показателями предельной производительности Sony любит впечатлять людей, не понимающих, что эти показатели из Cell можно извлечь лишь в узком круге задач.
Каждый SPE снабжен 256 КБ «локальной памяти» — это не кэш, а полноценная память, доступ к которой осуществляется с минимальной латентностью и максимальной скоростью.
Все ядра процессора Cell через шину Element Interconnect Bus могут независимо общаться друг с другом, с памятью (через встроенный контроллер Rambus XDRAM) и с устройствами, подключенными к Rambus FlexIO (через встроенный контроллер FlexIO).
В целом процессор Cell можно представить себе как один традиционный процессор (PPE), окруженный кучкой быстрых сопроцессоров (SPE), которые, в случае исполнения оптимального для них кода, обеспечивают непревзойденную производительность.
Тут можно провести параллель между процессорами Cell и Emotion Engine: EE представлял собой одно «полноценное», «центральное» ядро (MIPS R5900) с 2 векторными сопроцессорами VP0 и VP1; Cell представляет собой одно «полноценное», «центральное» ядро (IBM Power, PPE) с 8 векторными сопроцессорами SPE. Есть что-то общее, не правда ли? Разумеется, как «центральное» ядро, так и сами сопроцессоры в Cell изрядно «потяжелели» и стали на порядки быстрее и умнее по сравнению со своими предшественниками в Emotion Engine, однако базовая схема построения CPU консоли PlayStation не изменилась.
Непосредственно в PlayStation 3 один из SPE процессора Cell отключен ради повышения процента пригодных для использования в консолях чипов, а еще один — зарезервирован под системные нужды (исполнение операционной системы, защита от копирования и т.п.). Таким образом, PS3-играм реально доступно лишь 6 SPE Cell. При этом следует учесть, что на SPE приходится считать и весь игровой звук — что, по большому счету, снижает число доступных разработчикам SPE до 5.
Но 6 процессорных ядер, каждое из которых обладает SIMD-функционалом, а PPE вдобавок еще и умеет исполнять две программных нити одновременно (аналог HyperThreading, но, по слухам, с гораздо более высокой эффективностью) — это, по сегодняшним меркам, довольно много. Вопрос лишь в том, насколько сложно извлечь из «числодробилок» Cell их пиковую производительность. И вот здесь дела обстоят не очень хорошо.
По сути, программа для SPE ограничена не только необходимостью «ложиться» на архитектуру «числодробилки» (а это, как минимум, означает, что она должна хорошо поддаваться SIMD-зации и избегать использования условных переходов и вычислений с вещественными числами двойной точности), но и довольствоваться 256 КБ оперативной памяти (доступ к основной памяти обладает такой латентностью, что пользоваться им можно лишь в исключительных случаях — а кэша у SPE нет).
Если исходить из того, что программирование SPE — задача весьма нетривиальная, и требует переучивания со стороны программистов, а одно ядро PPE — откровенно мало для современных видеоигр, то мы получаем серьезную проблему: программистам приходится учиться достигать того же самого результата новыми алгоритмами. То есть, тратится время (а время — это деньги), и тратится оно на «изобретение велосипеда».
Другими словами, Cell, конечно, потенциально хороший процессор, но будет ли его потенциал всё еще актуален к тому моменту, когда его научатся извлекать — вопрос сложный. Пока трудности программирования Cell являются препятствием для создания качественных PS3-игр, конкуренты, обладающие процессорами послабее и попроще, собирают под своё «крыло» полные и временные эксклюзивы, что не лучшим образом сказывается на имидже PlayStation 3 в целом.
[Ответ]