Эмуляция > Эмуляторы консолей 6 поколения и выше
PCSX2: Эмулятор Sony PS2 (продолжение)
<< < (788/1167) > >>
lob:

Вся необходимая информация находится под спойлером ниже: 1. Основная информация:

* Официальный сайт и версии эмулятора - здесь
* Биосы можно скачать - здесь
* Официальный список совместимости - здесь
* Свежие ревизии эмулятора с плагинами - здесь и тут
* Pack'и самых последних ревизий различных эмуляторов - здесь
* Настройки для игр - здесь и тут
* Об изменениях можно узнать - здесь (на английском)
* Руководство по настройке эмулятора - здесь
2. Библиотеки и утилиты:

* Microsoft Visual C++ 2008 SP1 Redistributable - здесь (х86) и тут (х64)
* Microsoft Visual C++ 2010 Redistributable - здесь
* Обновление DirectX (June 2010) - здесь
* Библиотеки для OpenGL-плагинов  - здесь
* Утилита для переноса сейвов на карту памяти - MYMC
* Программа для хранения настроек эмулятора  - PS2Launcher
3. Патчи и хекс коды для запуска игр в широкоэкранном режиме:

*
* Постоянно обновляемый архив патчей (более 500 игр) здесь
* Хекс коды для запуска игр в широкоэкранном режиме тут4. Дополнительные ссылки:

* Исправляют различные баги либо ускоряют процесс эмуляции. Могут давать побочные эффекты.
...В стадии разработки...
EdHell:
Да какие теории, не может он нагрузить четыре ядра. Что-то пролезает, да, и на квадах это всегда было, поэтому они были чуть предпочтительнее, не было того потолка, что на "трешках", эмулятор мог выбрать свой максимум. Тяжело искать с нынешним поиском, но про этот эффект (до +10% на квадах) разговор был очень давно и не раз и общей картины это не меняет, без спидхаков, к коим пока относится и MTVU, эмулятору нужен высокочастотный двухъядерник и не более того. Отключи MTVU и посмотри, сколько сможет "съесть" эмуль. Ну будет 55%, но это не тянет на загрузку трех ядер, это до упора набитых два с малюсенькой тележкой.

З.Ы. Ах да, чисто математически четвертый все же есть, это UI, только нагрузка на него такая запредельная, что может сойти за погрешность измерения.
IFRIT_FIRE:

--- Цитата: ParagonUnits от 27 Октябрь 2011, 21:42:41 ---Что-то у меня epsxe не хочет видеть gsdx!

--- Конец цитаты ---

И у меня тоже  :'(
EdHell:
Последние действительно не хочет, что-то попортили, а вот чуть более ранние - запросто.
DH:
И где вы в vu 2 потока нашли? o_0 mtgs (отправка пакетов граф плагину), gui (лог), mtvu (архивация/распаковка регистров), ну и основной поток, больше вродь не придумали :)
EdHell:

--- Цитата: DH ---И где вы в vu 2 потока нашли? Удивлен
--- Конец цитаты ---
Да вот мне тоже интересно. VU либо в основном, вместе с ЕЕ, либо отдельно, если задействован MTVU и никак больше. Cобсно, об этом было сказано раньше.


--- Цитата: Softer ---MTVU даёт GS хотя должен давать дополнительный VU
--- Конец цитаты ---
Где я такой бред писал, какой нафик GS? 0_0 Какой "дополнительный VU"? VU выделяется из потока ЕЕ в отдельный, не более.
Softer:
EdHell, откопал для освежения памяти changelog ревизии в которой добавили MTVU, судя по словам автора действительно раньше использовались только два ядра, теперь же с MTVU три. Момент с обсуждением лишней нагрузки в 10% я проморгал, так что для меня это не просто что то новенькое но и на первый взгляд кажущееся фантастическим ).
Что ж в свете пресловутых 10% четырёх-ядерники разумеется кажутся предпочтительнее так как что то всё же уходит на четвёртое ядро. Мои же размышления основывались на том что при отключении MTVU теряется преимущество в одно ядро, а как оказалось в два, и если не использовать MTVU то хватит и двух ядер. Хотя кто сейчас станет пренебрегать функцией MTVU которой как было замечено не место в хаках.

--- Цитата: EdHell ---Где я такой бред писал, какой нафик GS?
--- Конец цитаты ---

--- Цитата: EdHell ---Не, два потока ((EE+VU в одном потоке)+GS) или три (EE+VU с MTVU+GS).
--- Конец цитаты ---
выделенное жирным было просто не так понято, так будто перед ним стояла запятая.

Добавлено позже:
Кстати про дополнительный VU было всего лишь предположение основанное на не знании того что ранее он был включён в EE поток, опять же я полагал что VU и так был отдельным потоком, следовательно появление ещё одного потока было просто распилом уже имеющегося VU.
ParagonUnits:

--- Цитата ---Последние действительно не хочет, что-то попортили, а вот чуть более ранние - запросто.
--- Конец цитаты ---

А, всё видит, просто надо было SDL из pcsx2 скопировать в epsxe!
Tetsujin:
А мне никак не везёт с этой эмуляцией - что на ХР, что на 7 - практически не играбельно в подавляющее большинство игр - то эмуль крашится, то лагает жутко, то виснет в играх.
Очень хотел пройти продолжение любимой серии Front Mission 4 и 5 - ну никак дальше первого уровня (( Хотя другие же играют как-то
EdHell:

--- Цитата: Softer ---Момент с обсуждением лишней нагрузки в 10% я проморгал, так что для меня это не просто что то новенькое но и на первый взгляд кажущееся фантастическим
--- Конец цитаты ---
До 10%, больше я пока на практике не видел, в твоем примере около 8%. Все равно эти проценты выливаются в мизер, пара-тройка фпс - если уж игра умудрилась столько сожрать, значит она тормозит и такой прирост ее не спасет.
Softer:

--- Цитата: EdHell ---в твоем примере около 8%
--- Конец цитаты ---
Стоп, я совсем запутался, 100% загрузки EE,GS или VU равняется 100% загрузки одного ядра ЦПУ, так? То есть 25% от общей загрузки ЦПУ в случае с 4х ядерником?
Если это так, то в моём примере EE=74%, GS=91%, VU=85%, являются EE=18.5%, GS=22.75%, VU=21.25% реальной нагрузки на ЦПУ, то есть 62,5% общей нагрузки ЦПУ.
Выходит лишней нагрузки даже не 8% а всё 21%, которые на скрине значатся как отдельный (четвёртый) поток очень напоминающий находящийся рядом VU, но идущий не из MSVCR100.DLL как остальные, а из nvwgf2um.dll (часть драйвера карты).
Я конечно не на столько спец но не может ли быть так что этот "VU2" создаётся самой системой для отправки/приёма VU на/с ГПУ?
Если это так то двух/трёх-ядерники однозначно отпадают так как им кроме как думать над EE,GS и VU нужно освобождать ресурс так же и для этого вспомогательного потока, которым на 4х ядерниках занимается четвёртое ядро.
В общем не судите строго, теория есть теория, но зато в ней учтены все цифры и как следствие отсутствуют подобные нестыковки в 8% или 10% ).
DH:
Softer, для VU не может создаватся поток, ни автоматом, ни вручную. Его туда просто некуда впихнть, для эмуляции, VU - просто раздел в EE опкодах и эмулировать их отдельно от EE невозможно. А новый поток создается драйвером, приложению не нужно ждать ответа видеокарты до повторного обращения...
Softer:

--- Цитата: DH ---для VU не может создаватся поток, ни автоматом, ни вручную
--- Конец цитаты ---
Сразу возникают вопросы:
-Что же тогда делает MTVU (считал что так или иначе при нём существует отдельный VU поток, и EdHell писал что "VU либо в основном, вместе с ЕЕ, либо отдельно, если задействован MTVU")?
-Чей же тогда этот поток на скриншоте (в Process Explorer второй сверху), так похожий на идущий за ним поток драйвера?
DH:
MTVU - слишком громко сказано, там 2 опкода VU1 (я выше говорил что они делают). Это поток для опкода, а не VU. Эти два опкода долго выполняются, поэтому решили их выполнение засунуть в новый поток, но если основной поток будет натыкатся на опкод, который юзает регистр тех двух опкодов, то основной поток ждет завершения дополнительного, поэтому это и работает (правда не всегда :D).
А тот поток создается при прорисовке граф окна драйвером. VU не может создавать его, ибо он не использует ничего, кроме CPU. Он просто меняет значения в граф регистрах, которые потом используются в граф плагине для рисования)

Добавлено позже:
MTVU - слишком громко сказано, там 2 опкода VU1 (я выше говорил что они делают). Это поток для опкода, а не VU. Эти два опкода долго выполняются, поэтому решили их выполнение засунуть в новый поток, но если основной поток будет натыкатся на опкод, который юзает регистр тех двух опкодов, то основной поток ждет завершения дополнительного, поэтому это и работает (правда не всегда :D).
А тот поток создается при прорисовке граф окна драйвером. VU не может создавать его, ибо он не использует ничего, кроме CPU.

Добавлено позже:
сорь за 2пост, мой аццкий браузер аццки глючит, даж сообщение отказывается редактить <_<
Softer:
Подведём итог. В соответствии с потоками в процессе эмулятора отображёнными в Process Explorer на обсуждаемом скрине (сверху вниз):
1. GS
2. "поток для опкода, а не VU" (появляется при использовании MTVU и отображается в заголовке окна эмулятора как VU).
3. "поток создающийся при прорисовке граф окна драйвером" (драйвером карты)
4. EE+VU
надеюсь хоть теперь я всё правильно понял?  :)

Теперь возвращаясь к более приземлённому разговору о том хватит ли двух ядер если не используется MTVU. Из списка выше видно что без MTVU останется три потока, два из которых эмулятора, и один драйвера, соответственно 2х ядер для полноценной работы не хватит и хватать не могло из за давки на них трёх потоков.

Для большей наглядности провёл тест который как и ожидалось подтвердил мои слова:
MTVU-OFF; процесс зафиксирован на первых двух ядрах.

MTVU-OFF; процесс доступен всем четырём ядрам.

Итак общая нагрузка на CPU увеличилась всего на 8% тогда как FPS поднялся на 20%!

Та же ситуация с разницей между 3х и 4х ядерными системами при включённом MTVU:
MTVU-ON; процесс зафиксирован на первых трёх ядрах.

MTVU-ON; процесс доступен всем четырём ядрам.

Как видно общая загрузка CPU выросла на 13% а FPS поднялся на все 22%! И эти FPS вовсе не мизер как предположил EdHell когда мы всё ещё ошибочно размышляли на тему неучтённых "до 10%"  ;)
EdHell:
Softer, ты не забыл, что раскидывание потоков по ядрам - заслуга системного менеджера, а не эмулятора? Суммарная нагрузка очень неохотно вылезает за два ядра. С другим процессором, под который у менеджера оптимизация иная, такого результата может вообще не быть. Вспомни ранние тесты, по моим скринам видно, что сандик от потоков фактически не отвязывается и вытягивает только за счет своей дури, не задействуя третье ядро (а с Q6600 у меня была та же картина, что и у тебя). Надо бы привлечь к тестам человека с AMD, ну или вообще с другими моделями камней, интересно будет посмотреть.
Softer:

--- Цитата: EdHell ---Вспомни ранние тесты, по моим скринам видно, что сандик от потоков фактически не отвязывается и вытягивает только за счет своей дури, не задействуя третье ядро
--- Конец цитаты ---
Жаль не могу найти в теме те тесты чтоб вспомнить всю картину, уж очень много было с тех пор написано, если наткнёшься на них скинь ссылку. Пока же приходит на ум только одно. Как менеджер умудряется три потока запихивать только на два ядра а третий оставлять свободным? Это уж слишком глупо даже для кучерявого менеджера ). Может в том тесте два из трёх потоков просто не могли как следует нагрузить каждый своё ядро (это уже к эмулятору и тому что эмулировалось в тесте), делали это например не больше чем на 50% за что и были списаны менеджером на одно ядро, а второе занимал третий поток оставляя третье ядро свободным.
onrr:
как убрать вот эти черные полосы по бокам при игре на 22 дюймовом мониторе?

IFRIT_FIRE:
Я так понял у тебя монитор 16:9, а у тебя стоит 4:3
Настройка>Настройка эмуляции>GS-окно(видео)
В соотношении сторон поставить "Широкоформатное (16:9)"
EdHell:

--- Цитата: Softer ---Как менеджер умудряется три потока запихивать только на два ядра а третий оставлять свободным? Это уж слишком глупо даже для кучерявого менеджера ).
--- Конец цитаты ---
Уфф, да ты на другой софт посмотри, по двадцать потоков создается и на одно ядро при этом вешается, и с точки зрения пользователя это вроде бы и не многопоточный софт. Как так происходит - другой вопрос. Как 7z при выставлении 16 потоков висит на 4 ядрах всеми шестнадцатью, игнорируя остальные? Как то же самое делает х264? Да не обучены просто видеть логические. Точно также другой софт не видит и физических, а менеджер старается распределить нагрузку равномерно. Дали эмулятору два ядра и хватит с него, черт знает, откуда берется это превышение лимита при размазывании нагрузки, от этого он не становится способным использовать три ядра самостоятельно (а когда становится, при включении MTVU, то благодаря менеджеру цепляет и четвертое). Вон, почему бульдозеры сейчас сливают? Винда вообще таких процев не знает и тупо забивает доступные приложению физические ядра, менеджер ничего не распределяет.

onrr, просто зайди в настройки игры и выставь 16:9 в ней. Тогда не будет нарушения пропорций.
VL@DIK:
Такая ситуация как устранить разрыв изображения в God of War - эффект  заметен как едва заметная полоска вверху изображения
Навигация
Главная страница сообщений
Следующая страница
Предыдущая страница

Перейти к полной версии