Why is PS3 emulation so fast: RPCS3 optimizations explained

preview_player
Показать описание
In this video I explain why PS3 emulation is so fast, and I definitely don't spend half of the video gushing over x86 instructions.

I sort of made this video as a response to all the videos with a title along the lines of "why is the PS3 hard to emulate" without actually going into any technical details beyond "the PS3 is complex".

Additional reading:

Chapters

0:00 Intro
2:05 SPU introduction
2:20 SPU Xfloat
4:34 Ninja Gaiden Comparisons
5:27 Specific SPU FP instructions
8:46 SHUFB
11:14 SHUFB performance discussion
12:30 VGF2P8AFFINEQB path
16:14 VPERM2B
17:35 ISA and performance
19:17 Loads and stores
20:49 Sleepy Nier
21:48 Conclusion
Рекомендации по теме
Комментарии
Автор

Do you feel like an assembly wizard after finishing the video?

MrWhatcookie
Автор

I swear, every video about assembly optimization has something along the lines of "this implementation was slow, so I used the fppnis14c0012gngbng12 instruction..."

devzozo
Автор

Geeking out about CPU instructions is something I never thought I'd be doing, but here I am, listening to a dude explain the intricacies of CELL emulation and not skipping the video...

JacksooN
Автор

I have no idea what you're saying but still enjoyed it thank you for the explanation

styliejoker
Автор

I am not a developer, so i don't fully understand, but as a emulation enthusiast, i want to thank all of you for your work. It is a shame that Sony opted not to provide Backwards compatibility with the PS5, so you are not only doing Sony's work, you guys are doing it much better than they would ever do!!

J.A.Z-TheMortal
Автор

RPCS3 doing emulation gods work. Thanks to the team as always for allowing me to play my old Ps3 games and my favourite online game ever Metal Gear Online 2

dormanthero
Автор

AVX-512 bros we keep winning 📈📈📈📈📈📈📈📈📈📈📈📈

Wunkolo
Автор

HOW DARE THEY take away boob jiggle from us!

mister_magister
Автор

As someone who hasn't seen this channel, I expected this to be 23 minutes of nothing-talk, but I still clicked because I love the idea of PS3 emulation. I was not expecting such an in-depth, real essay on the instruction set optimizations. Awesome surprise, dude (: Thanks for the video

indignasmr
Автор

So many abbreviations, I thought you were casting a spell on me.

magiccandy
Автор

If you don't understand it, don't worry, I'm a developer and me neither.

user
Автор

Epxlanation on "disabled for better yields":
They basically only expect 7 out 8 to work. No matter if that's the case or not. If all work they just disable one arbitrarily to keep everything consistent.
AMD did that too in Desktop CPU during the late 2000s so some times you could get literally free performance (Except for slightly higher thermals and power draw) by re-enabling one. (sometimes required custom bios. But one company actually implemented that in stock for a while. don't remember which one.) Or random crashes if it actually was broken. That's what the 3 cores where.

fgregerfeaxcwfeffece
Автор

Mr.Sujano Brought me here and even though I don't really understand it on a deep level I deeply enjoyed it thank you.

dpgod
Автор

This is my first peek into how RPCS3 works, and I had no idea you guys utilise LLVM, but it makes sense.

This was easy to follow (granted, I have some xp with x86 asm), and I'd love to see more!

actualFix
Автор

I knew the SPUs were hard to program for, but I had no idea that they were literally only capable of SIMD instructions. That's actually insane.

Frickolas
Автор

This video is amazing! Thanks for breaking down the details in how a lot of these specific instructions save cycles, it's something i was always curious about!

ZekuTokairin
Автор

Thanks for the video. IN the past I followed rpcs3 progress and also supported it. It was always for read about the new improovements.

TMracer
Автор

Great video
YT has a lot of videos about 6502
And in depth high performance emulation content very rare
Looking forward for more stuff 😊

guest
Автор

thank you so much for your contribution to the rpcs3 project

riccardoman
Автор

Now this is Gold! Interesting look at some of the amazing work done optimizing code. The instructions explanation blows my mind as you talk in tongues. But makes me smile with the knowledge I have AVX512.

You are a natural at the YouTube stuff, definitely keep it up. If ever you need anything give me a shout, but looks like you got this in the bag if you continue.

Great work on emulation and YouTube!

SimplyAustins