LINUX.ORG.RU

RPCS3: эмуляцию PlayStation 3 на ARM удалось значительно ускорить

 , , ,

RPCS3: эмуляцию PlayStation 3 на ARM удалось значительно ускорить

0

1

Разработчик свободного эмулятора PlayStation 3 RPCS3 под псевдонимом Whatcookie подвёл итоги шести месяцев оптимизации версии для ARM64. Заявленные в заголовке доклада 60% относятся к совокупному эффекту нескольких изменений и не означают одинаковый прирост во всех играх. Например, на устройстве со Snapdragon 8 Gen 2 производительность Metal Gear Rising после одного из исправлений выросла с 27 до 37 кадров в секунду, то есть примерно на 37%.

RPCS3 написан преимущественно на C++ и распространяется под лицензией GPL-2.0. Whatcookie занимается в проекте производительностью LLVM-рекомпиляторов процессора Cell и переносом критических участков кода на ARM64.

Один из наиболее заметных приростов обеспечило исправление функции активного ожидания busy_wait. Старый код был рассчитан на характеристики таймеров x86, из-за чего ARM-процессор тратил лишнее время в циклах ожидания. После переработки этой логики ускорение получили почти все игры, использующие соответствующий путь выполнения.

Другая оптимизация коснулась инструкции yield, которая на большинстве ARM-систем без SMT практически не давала эффекта. Её заменили на ISB, что в тесте снизило энергопотребление активного ожидания с 3,67 до 3,31 Вт. Для портативных устройств это означает меньший нагрев и более продолжительную работу от аккумулятора.

Значительная часть изменений внесена в LLVM-рекомпилятор сопроцессоров SPU. Для ARM задействованы инструкции UDOT, SDOT, SVE2, I8MM, TBL и USHL, а также переработаны операции перестановки, сравнения и проверки данных. В отдельных микротестах новый код оказался на 22% быстрее, а некоторые операции ускорились на 21–38% в зависимости от типа ядра Snapdragon 8 Gen 2.

С начала 2026 года Whatcookie направил в RPCS3 более двадцати изменений для ARM64. Они включают использование нативных ARM-инструкций вместо эмуляции операций x86, определение возможностей процессора, оптимизацию SPU и более эффективное ожидание работы графического процессора RSX. Цель разработчика — добиться приемлемой производительности RPCS3 на недорогих портативных ARM-устройствах с Linux.

>>> Источник

★★★★★

Проверено: hobbit ()
Последнее исправление: hobbit (всего исправлений: 5)

ускорили до 60%

А было сколько? И главное от чего?

Не, я понимаю, что хотел сказать типа ускорили на 60% или меньше. Но сейчас это звучит так, будто было, допустим 40% от какого-то референсного значения, а теперь ускорили до 60% от него же. Стоит перефразировать как-то совсем по-другому.

А сам текст бы несколько сократить и добавить акцента на сути новости.

CrX ★★★★★
()
Последнее исправление: CrX (всего исправлений: 1)
Для того чтобы оставить комментарий войдите или зарегистрируйтесь.