RPCS3 / rpcs3

PlayStation 3 emulator and debugger
https://rpcs3.net/
GNU General Public License v2.0
15.33k stars 1.91k forks source link

[Task, Aarch64] SPU LLVM on Aarch64 #15868

Closed kd-11 closed 2 months ago

kd-11 commented 2 months ago

Tracker for SPU support on arm.

Epic: https://github.com/RPCS3/rpcs3/issues/15567

kd-11 commented 2 months ago

Some performance numbers:

--Completed 12 tests in 168160 ms--
SPU Test v1.2.1 by GalCiv
SPU Task Avalanche completed in 15749 ms (PS3: 2740 ms)
PPU/SPU Ping-Pong completed in 5117 ms (PS3: 3045 ms)
SPU MFC 64 Bits War completed in 6828 ms (PS3: 3370 ms)
PPU/SPU MFC 64 Bits War completed in 8736 ms (PS3: 4443 ms)
SPU Integer Perf completed in 3563 ms (PS3: 8666 ms)
SPU Float Perf completed in 1109 ms (PS3: 2379 ms)
SPU SpinLock completed in 94576 ms (PS3: 4409 ms)
PUTLLUC Perf completed in 19304 ms (PS3: 3853 ms)
PUTLLC Perf completed in 2643 ms (PS3: 3364 ms)
PUT Perf completed in 4024 ms (PS3: 4567 ms)
Large PUT Perf completed in 968 ms (PS3: 4423 ms)
SPU Reciprocal Accurate completed in 7149 ms (PS3: 6125 ms)
--Completed 12 tests in 169774 ms--
cipherxof commented 2 months ago

Some performance numbers:

What CPU was this performed with?

kd-11 commented 2 months ago

Some performance numbers:

What CPU was this performed with?

Apple M1. In the pass I linked the cache was not warm so compilation was still ongoing. The numbers improve by ~15-20% after 3 runs.