Dolphin, the GameCube and Wii emulator - Forums

Full Version: Reason why SSE2 is required?
You're currently viewing a stripped down version of our content. View the full version with proper formatting.

Aikku

Hiya, guys. I'm a newbie here. ^-^'

I was trying to start up Dolphin but it crashed and I later found out it's because my CPU doesn't support SSE2 so I was wondering... What exactly is the reason SSE2 is needed? Is it for a speed-up or for essential code that can't be run in any other way?

Thanks a lot, guys. ^-^'

---

EDIT:
Eep, sorry, I just realized I posted in the wrong place >_<'
It's kinda hard to explain.
http://en.wikipedia.org/wiki/SSE2

Lets just say Intel did what Intel does to make their processors faster, and your old processor is just too old or slow.

So it's a matter of getting a new processor, or even computer for you I guess.
sse2 is an instruction set used by later processors, something that is required to process the dolphin program. there is also sse3 and sse4, but right now dolphin only requires sse2.
Does Dolphin benefit from SSE3/4 capable processors?

Aikku

Yeah, I mean, I know that SSE2 is a relatively new instruction set used by later processors, but why exactly does Dolphin need it to run? ^-^'
Optimization and speed, without SSE2 Dolphin would run like a dog. It helps the JIT recompile faster, SSE2 is even required by PCSX2 because SSE is just too slow to offer decent performance with CPU intensive emulation.

Feel free to correct me if I am wrong, or to confirm what I said if I am right or close to being right.

Aikku

Well dogs run pretty fast... =P

Joking aside:
I see. I thought it may have something to do with that... Oh well. I guess I'll just have to wait until I get more money to buy another computer >_>'

I would've bothered to re-compile were it not for the fact that it seems that it would be in vain.
Thanks anyway ^-^'
It would be way too much work to write a separate code path for old non-SSE FPU, and it would be much slower clock for clock. Plus, most of those old CPUs without SSE2 are just way too slow anyway. That's it.

As for SSSE3, it helps a tiny bit because it enables a couple of small optimizations, but only a couple of %. There are no SSE4-specific optimizations in Dolphin yet, mostly because for what Dolphin does, there's no benefit - and my CPU doesn't support it.
I literally just installed a new processor, and it does support SSE 4.1, old one didn't.

But I suppose the reasoning is just the same as the DirectX10 anyway, no need to code it.