
Часто приходится слышать, что важность отличий между наборами инструкций на современных компьютерах преувеличена и, в самом деле, сложно не согласиться с таким наблюдением. Поскольку стандартная программа на 90 % состоит из простейших инструкций для АЛУ, загрузки и сохранения, а также инструкций ветвления, а также с учётом, что на таком базовом уровне разбежки между различными наборами команд очень невелики, такой вывод просто напрашивается.
Но RPCS3, эмулятор приставки Sony PlayStation-3 - не просто обычная программа. Даже если вам не доводилось работать с самим эмулятором, вам наверняка приводили RPCS3 в пример как образец потребительского ПО, в котором используются сильные стороны AVX-512. В этой статье я расскажу, почему именно новые инструкции и возможности, введённые в семействе AVX-512, так полезны для эмуляции PS3. В некоторых ситуациях использование 512-разрядных инструкций может положительно сказываться на RPCS3, но в этом посте будет рассказано, почему новые инструкции полезны и для 128-разрядных, и для 256-разрядных конфигураций.