Skip to main content
GameDev.net gamedev.net
🔒 Locked

SSE/SSE2 Supporting cpus

Started by Pooya65 Jun 6, 2010 at 7:18 AM 5 replies 2k views
Original Post
Pooya65
Pooya65
can i use SSE(or SSE2) safely in GD which doesn't having problems with cpus (or modern cpus)?

i want to use it in matrix manipulation in my game engine? but i don't know its true? my game engine work with shaders and need OpenGL 2.0, is it true to I'm use SSE (with out checking cpu caps?
apatriarca
apatriarca
Based on the most recent Steam Hardware Survey the 98.52% of computers having Steam support SSE2, while SSE3 and SSE4 are supported by 95.54% of computers. Not all PC players have Steam, but I think it is quite a useful metric for this kind of questions. In this case, you can probably safely assume everybody have a CPU with SSE2 nowadays.

Moreover, if someone has an OpenGL 2.0 gpu, then he probably also has a SSE2 cpu. The first SSE2 cpu is dated 2000 (the Pentium 4), while the OpenGL 2.0 specification was published in 2004.
plastique
plastique
It's not overly difficult to check for the CPU features of the current machine. Do this just once at startup, and then decide if you even want to support any "under-specced" systems. Alternatively, you surely already have a rough estimate about which type of CPU is required to run your game, and you could base your engine features upon this specification.
Sik_the_hedgehog
Sik_the_hedgehog
Quote:
Original post by apatriarca
Moreover, if someone has an OpenGL 2.0 gpu, then he probably also has a SSE2 cpu. The first SSE2 cpu is dated 2000 (the Pentium 4), while the OpenGL 2.0 specification was published in 2004.

Even moreso, I think that SSE3 is dated 2004, so I think it's safe to assume even SSE3 unless you're aiming at really old computers.
Don't pay much attention to "the hedgehog" in my nick, it's just because "Sik" was already taken =/ By the way, Sik is pronounced like seek, not like sick.
rmed002
rmed002
But it would be a good form to check regardless. Makes the code seem a bit more professional.

This practise can avoid "bad press" in a case some knucklehead decides to run your product with an older computer and the thing goes back to OS accompanied by "DUNK!" from the speakers, instead of presenting a messagebox blaming user for running ridiculously obsolete hardware.

Surprising how accusing people can be with unexplained crashes.

RobTheBloke
RobTheBloke
Quote:
Original post by Pooya65
can i use SSE(or SSE2) safely in GD which doesn't having problems with cpus (or modern cpus)?


All 64bit CPU's support SSE2. If you are building a 64bit app, no need to worry. You only need to check the cpuid for 32bit apps...

Pooya65
Pooya65
is it a nice idea to check it in the setup time and put(install) correct dll for that system?

sorry for my bad English

Topic Locked

This topic has been locked by a moderator. New replies are not allowed.

Sign in to reply to this topic.