• Technical support is temporarily provided through the Discord

Сравнение первых консолей и ПК (в продолженне флуда и новостей разработчиков)

RED

Resident Of Avalon
Silver Founder
Joined
Nov 6, 2016
Messages
401
Likes
138
#1
Только хотел сказать про это. Архитектура процессора на сонсолях была совсем другая, заточенная под игры. Кроме того, видео в 512 МБ в 2005 году это совсем не средний показатель. У нас это была роскошь, и не только у нас, потому что у того же Фаренгейта вышедшего в 2005-м были заложены минимальные требования к игре в 32МБ видеопамяти.
Средней видяхой тогда была 128 и 256-ка от Радеон.

А ты не молчи. У Xbox 360 был трёхъядерный проц частотой в 3.2Ггц. И на каждом ядре по два виртуальных. Тобишь фактически на сонсоли стоял шестиядерный процессор и все ядра работали на производительность. У меня тогда на компе стоял двухъядерный камень и я был счастлив )

Xbox 360
Частота 3,2
ядра 3 (физических), 6 (логических)
L1-кэш: 32 + 32 Кбайт
L2-кэш: 1 Мбайт
Опять же, сравнивать такие показатели кэшей Л1 и Л2 приставки с показателями ПК даже не буду. Это просто смешно. Если кому то интересно погуглите спецфорумы по портированию игр с приставок на ПК, и попыткуи портирования игр с ПК на приставки. Там все подробно, на тоннах текста, описано.


Что касается производительности, слизну часть статьи 2007-2009 года:
Куда более важно то, что одно отдельно взятое 3.2-гигагерцевое ядро Xenon сильно проигрывает в производительности одноядерному Pentium 4 с такой же тактовой частотой. Дело в том, что для экономии площади кристалла и количества транзисторов из ядер была изъята логика, позволяющая исполнять команды НЕ в порядке их поступления (по-английски это называется out-of-order execution – соответственно, схема, применяемая в Xenon, называется in-order execution).

Зачем нужно out-of-order execution? Рассмотрим следующий пример c таким псевдо-кодом:

* LOAD R1, R2 – загрузить в регистр R1 значение ячейки памяти, на которую указывает R2
* ADD R5, R1 – прибавить к R5 значение из R1 и поместить результат в R5
* ADD R6, R7 – прибавить к R6 значение из R7 и поместить результат в R6

Легко видеть, что вторую команду нельзя выполнить до окончания первой, поскольку в арифметической операции участвует значение, извлекаемое из памяти первой командой. Но вот третья команда совершенно независима от первых двух и ее можно начать исполнять, даже если чтение из памяти затянется надолго. Затянуться ему легче легкого: если затребованный адрес памяти окажется в кэше второго уровня, задержка будет невелика – всего десяток-другой тактов, а вот промах кэша и обращение к основной системной памяти приведут к задержке уже в пару сотен тактов. Это очень большое время, за которое современный процессор потенциально мог бы исполнить десятки и даже сотни операций – во всяком случае, нашу третью операцию он точно мог бы исполнить. Но такое может сделать только чип с поддержкой out-of-order execution. In-order-процессор будет дожидаться окончания чтения из памяти, выполнит вторую операцию и только после этого перейдет к третьей.

Преимущество in-order-процессора очевидно – это простота. Но можно ли как-то справиться с его недостатками? Частично их устраняют с помощью компиляторов, располагающих команды в оптимальном порядке, но есть и более продуктивный метод: многопоточность ядра. Если ядро процессора будет исполнять два потока команд одновременно, то, споткнувшись об обращение к системной памяти в одном потоке, оно может продолжить исполнять второй и таким образом минимизировать бесполезные простои. Подобную систему внедряли и в Pentium 4 (hyper-threading), но некоторые «особенности» архитектуры этого out-of-order-процессора привели к тому, что HT там не впечатляет – от 0 до 20-30% в зависимости от версии ядра (на старых ядрах наблюдался даже «отрицательный прирост»). В Xenon же многопоточность – вполне действенное средство поднятия производительности. Это на PC можно написать традиционный чисто однопоточный код, который сможет эффективно задействовать ресурсы одноядерного процессора. На Xbox 360 такой код даже не сможет эффективно использовать всего одно ядро – таким образом, Xenon вынуждает разработчиков к многопоточности и параллелизму. Из этого, кстати, следует, что игра, изначально разработанная на Xbox 360, может с минимумом доработок быть портирована на однопроцессорный PC. Высокопроизводительной процессор «персоналки» способен последовательно выполнить в течение кадра те задачи, которые три ядра Xenon исполняли бы параллельно. А вот традиционные «однопоточные» PC-игры при переносе на Xbox 360 однозначно нуждаются в серьезной доработке и «распараллеливании», иначе процессор приставки может и «не потянуть». Что характерно, примерно так же соотносятся Xbox 360 и PS3 – c консоли Sony на консоль Microsoft портировать движки намного легче, чем в обратном направлении. Xenon может выполнять код для Cell без особых сложностей – достаточно лишь относительно небольших правок и перекомпиляции, а вот чтобы заставить Cell выполнять работу Xenon, нужно здорово «попотеть».

Если кратко - то код игры, который рассчинат на 3 ядра по 2 потока консоли, с той же самой производительностью выполнаяе средний проц ПК на ОДНОМ ядре. Данное свойство и используется при прямом портировании игр на ПК, и даже слабенький ПК с успехом "воспроизводит" портированные игры.

А вот прямое портирование с ПК на консоль - невозможно. Консоль просто не тянет код с ПК. Необходимо код создавать почти с нуля, а графическую часть серьезно разгружать, иначе консоль не справится с её прорисовкой.
 
Last edited:

vxsw

Captain Of The Ark
Gold Founder
Joined
Feb 10, 2016
Messages
2,570
Likes
975
#2
ты так и не хочешь уловить один оч. важный момент. пк - универсальная платформа. железок различной производительности у них просто немеряно. приставка имеет статическую конфигурацию. бывает и несколько, но они (а главное их производительность) заранее известны разработчикам, что в свою очередь, позволяет им подогнать баланс качества/производительности. именно это и позволяло играть на приставках без каких либо проблем, в то время как на пк, те-же игры шли заметно хуже.
+сравнение аппаратной части не имеет смысла, ввиду несовместимости архитектур Pardon_man3
 

RED

Resident Of Avalon
Silver Founder
Joined
Nov 6, 2016
Messages
401
Likes
138
#3
Какие игры шли на ПК заметно хуже? Я таких вообще не видел. Еще раз повторюсь - любые игры с консолей имеют прямой порт на ПК, как минимум, эмулятором (вот в эмуляторах только и может быть падение производительности. Причем на хороших эмуляторах запущенных на адекватных ПК падения производительности нет)
 

vxsw

Captain Of The Ark
Gold Founder
Joined
Feb 10, 2016
Messages
2,570
Likes
975
#4
на том что попадалось под руки мне, игры шли заметно хуже чем на консолях. спорить о старых консолях смысла не вижу и не собираюсь, особенно после этого:
любые игры с консолей имеют прямой порт на ПК, как минимум, эмулятором
 

RED

Resident Of Avalon
Silver Founder
Joined
Nov 6, 2016
Messages
401
Likes
138
#5
А чем тебе слова про прямой порт эмулем не понравились? Кстати, живой пример - Dark Souls. То гумно, что мы все видели на ПК (30 фпс и 720p), это не проблемы ПК, а то, что консоль как раз и выдавала максимум эти цифры. Они и сохранились. ведь дарк и портировался эмулятором на прямую. Но одно дело 30 фпс на телеке с 24 фпс (24 кадра в секунду - это и есть 24 фпс) - и эти 30 клево смотрятся. А совсем другое дело это моник со стандартной 60 или 100-120 фпс. Вот и смотрятся параметры консоли весьма лажово на ПК.

И ты все еще считаешь консоли в 2005 мощнее ПК? Ну ттогда и я
смысла не вижу и не собираюсь
о чем то в плане ПК и консолей с тобой спорить. Ты уперся рогом и тебе что то объяснять бесполезно.
 

vxsw

Captain Of The Ark
Gold Founder
Joined
Feb 10, 2016
Messages
2,570
Likes
975
#6
живой пример - Dark Souls
дс это не порт, вышла она в 11-м году и были версии как для пс3, так и для хбокса и для пк. и к эмуляции он ни какого отношения не имеет.


прости, не удержался))
одно дело 30 фпс на телеке с 24 фпс (24 кадра в секунду - это и есть 24 фпс) - и эти 30 клево смотрятся. А совсем другое дело это моник со стандартной 60 или 100-120 фпс
 

RED

Resident Of Avalon
Silver Founder
Joined
Nov 6, 2016
Messages
401
Likes
138
#7
Дарк какраз и есть порт через эмуль. Изначальное средсство разработки не имело возможности компиляции под ПК
Поэтому взяли код ПС3 и через эмуль портировали на ПК. Один в один, безо всяких изменений. Поэтому и такая лажа вышла. Как обратный пример - ГТА - они именно компилировалась под ПК, потому что изначальное средство разработки могло производить компиляцию Проекта как под консоли, так и под ПК. Вот они не только именно компилировали код под ПК, но и увеличивали количество полигонов в графике почти год, что бы на ПК смотрелось более вменяемо.

И кстати, ты прекрасно знаешь, что ПС3 вышла в 2006 г. И все игры на ПС3, в том числе и выпущенные в 2011 году, имеют рабочие параметры ПС3 2006 г. так что разницы, когда была выпущена игра на ПС3 нет никакой. требования к железу у них все равно одинаковые.

Я бы тебе конечно какую нибудь фигню сваял и на ПК и на консоль, но у меня банально модули на консоли не лицензированы. Так что тут я пас. ставить их ради доказательства чего либо - да ну его на фиг.
 
Top Bottom