Leave a comment

vladimir_pn March 21 2012, 06:20:49 UTC
В 99% случаях неточность обусловлена кривым кодом и только в 1% особенностями архитектуры. Никогда не поверю что для эмуляции 3мгц требуется в 1000 раз больше ресурсов, даже в 100 раз многовато. Эмуляцию более сложных систем можно выполнить распределением вычислений между центральным и графическими процессорами. Всегда было и будет что эмуляция как правило упирается в понимание работы железа и использование оптимизации кода для достижения работы приближенным к эталонным. Конечно разница в архитектуре основной камень, об который все время спотыкается эмуляция. Например эмуляция emotion engine на 32 битных системах напоминает копание ложкой окопов. По типовым для него вычислениям он легко превосходил любой Pentium III, не смотря на разницу в частоте в 3 или даже в 4 раза. Если грубо просуммировать разрядность шины и частоты всех дополнительных вычислительных компонентов, прибавим еще столько же на синхронизацию то этого должно хватить при условии грамотно написанного кода. В случае с PS2 у меня получается EE 300mgz + 2x VU 150mgz + IO 33mhz + звук. Не смотря на то что основной процессор 64 битный, векторные и графический чипы 128 битные, это портит всю картину, так как на современных системах по идее нужно перекладывать вычисления на видеокарту, к слову не каждая современная вытянет подобные вычисления из за большой разницы в архитектуры. Вот и получается что нужно порядка 1200mhz и видеокарта не слабее 6600GT для хоть какой то работы. Сюда прибавьте ресурсы для работы операционной системы, естественно и процессор и система должны быть 64 битные. Это еще добавляет примерно столько же. За сим получается что P4 будет мало, необходим CPU не менее чем Core2 или Athlon 64. В реальности требования еще выше, но это не от синхронизации а от разницы в архитектуре и кривого кода. Карент ген системы боюсь считать а то получится что то вроде 50GHZ!!! для PS3. Вот как то так, это мое безграмотное видение на проблемы эмуляции. Не смотря на все это я не поверю что для эмуляции SNES нужны 2.7ghz, здесь явно кривой код и только.

Reply

muchkaev March 21 2012, 07:05:42 UTC
излагаешь ты близко к истинне, но излагаешь классику

а статья не о ней, а о тайном знании другой, более низкоуровневой эмуляции.
не осилил именно этот материал, но могу дать отсылку на свой пост http://emulate-su.livejournal.com/597188.html по схожей тематике. активизируй свое внимание на аббревиатуру VHDL

Reply

vladimir_pn March 22 2012, 08:07:47 UTC
Заводская документация на чип существенно ускорит разработку эмулятора, так когда то было с bleem в начале 2000х. Игры от PS относительно без проблем запускались и были играбельными на железе а'ля пентиум III, для меня в свое время это было разрывом шаблона.

Reply

ext_961552 March 21 2012, 10:08:35 UTC
Код bsnes открыт, можно посмотреть и убедиться, что он далеко не кривой. Эта и другие статьи автора подробно объясняют, почему нужны такие вычислительные ресурсы для точной (ключевое слово) эмуляции.

Для эмуляции с грубыми хаками, с расчётом на запуск предопределённого набора софта (99% эмуляторов) достаточно раз в 10 меньших ресурсов. Для 'поиграться' этот подход годится, но доставляет много проблем при разработке нового и модификации старого софта - такие эмуляторы легко позволяют делать то, что не работает на реальном железе, либо (реже) оказываются не способны правильно выполнять 100% рабочий код.

Reply

vladimir_pn March 22 2012, 08:08:23 UTC
ой да ладно

Reply

ext_961552 March 22 2012, 08:10:16 UTC
Невероятно содержательный и аргументированный ответ.

Reply

vladimir_pn March 22 2012, 08:58:26 UTC
Я как бы выше все развернул, придираясь к теме: необходимость для эмуляции SNES, процессора с частотой на 3 порядка выше, затея чуть более чем инфантильная.

Reply


Leave a comment

Up