"Absorb what is useful, reject what is useless, and add what is specifically your own." - Lee Jun Fan[edited by - JY on July 22, 2003 8:31:48 AM]
🔒 Locked
Some general programming...
Advertisement
Original Post
There are lots of people in these forums developing 2D/3D games and solving different programming problems. I was wondering how many people actually use MMX/SSE in their graphics/maths/physics engines.
From my understanding this technology is supported by just about all PC processors now and can make vast speed improvement when doing alpha blending, vector/matrix arithmetic, image filters etc. etc.
Not many people seem to mention these things in their posts though? Do people use it and keep quiet about it or is there a reason not to use it that i'm missing?
I use it all the time in Real Virtuality and swShader. Without it, performance would be marginally low.
But haro is right, lots of MMX/SSE optimizations are hidden for us in libraries. Other multimedia applications are also often optimized with hand-written SIMD assembly. There just are no good C/C++ compilers that produce optimal MMX/SSE code.
But haro is right, lots of MMX/SSE optimizations are hidden for us in libraries. Other multimedia applications are also often optimized with hand-written SIMD assembly. There just are no good C/C++ compilers that produce optimal MMX/SSE code.
Yeah, I figured DirectX and the like would use SIMD already - but there are still lots of places where it doesn''t seem to be used where perhaps it could.
I was just wondering if there were any reasons _not_ to use it?
I was just wondering if there were any reasons _not_ to use it?
"Absorb what is useful, reject what is useless, and add what is specifically your own." - Lee Jun Fan
The only reason not to use extensions like MMX/SSE is (backwards)compatibility.
You''ll have to consider the target market for your application. If your game can''t be run below 1 GHz anyways, using MMX won''t hurt anyone... (Unless someone owns an overclocked 486 with 1+ GHz
)
But using things like SSE2 for example might keep people below P4 out of the race and maybe even everyone owning AMD...
You could do some proccessor-determinations during runtime and use the processor specific codepath... if you feel it''s worth the trouble
.
You''ll have to consider the target market for your application. If your game can''t be run below 1 GHz anyways, using MMX won''t hurt anyone... (Unless someone owns an overclocked 486 with 1+ GHz
But using things like SSE2 for example might keep people below P4 out of the race and maybe even everyone owning AMD...
You could do some proccessor-determinations during runtime and use the processor specific codepath... if you feel it''s worth the trouble
quote:
Original post by Wildfire
Maybe the better question would have been:
''Surely nobody uses 486''s any more, to play top notch games, though do they?''
If there''s really somebody out there, trying to play Doom3 on a 486, respect... you''re a real masochist![]()
You don''t seem to have gotten away from the idea that 486 is old so nobody would use it. If a game were created that ran acceptably on a 486, people would play it on a 486. Basically, there''s nothing wrong with the 486, it''s just that, in general, people don''t make programs (games or otherwise) that have acceptable performance on the 486. People use 486''s all the time, running programs that run on a 486. If a new game ran on a 486, I''m sure people would play it on a 486.
quote:
You don''t seem to have gotten away from the idea that 486 is old so nobody would use it. If a game were created that ran acceptably on a 486, people would play it on a 486. Basically, there''s nothing wrong with the 486, it''s just that, in general, people don''t make programs (games or otherwise) that have acceptable performance on the 486. People use 486''s all the time, running programs that run on a 486. If a new game ran on a 486, I''m sure people would play it on a 486.
I''m not saying that anything is ''wrong'' with a 486. Neither did I claim that there''s nobody out there still owning one of ''em.
All I''m saying is that nobody will try to play any recent games on a 486.
I''m using a K6-200 (which is Pentium era, so not that far from 486) as a linux-server and it''s doing it''s job. It''s perfect for the task, uses less power then a high end machine, therefore needs less cooling etc. They have their place, but surely not with (modern) games.
If a game would come out that still runs on a 486, surely people that own a 486 as a work machine might be happy to play it. Though I doubt that people owning such an old machine are keeping them for gaming reasons.
What I''m trying to say is that you have to look at your target market when developing a game. And surely 486-owners are not among them. Unless you want to go out and make games for a minority.
That aside, I''m not quite sure what the point of your little rant is? I was refering to modern games being unplayable on old machines. What part of those particular statements did you feel were insulting or wrong? I can''t remember claiming that old computers are completely useless. They are usefull, given the right task. And I just don''t see up-to-date-games among them.
I couldn''t agree more - although I''ve said it before that I don''t think new games are particularly that good. I mean, when Doom first came out it was a revelation!
I still reckon some of the old Spectrum games were fantastic to play - the gameplay was just brilliant! I would be quite happy to still play games on a 486 if they were of that calibre.
The only reason I have bought new computers is because I use computers for work (programming) - and Microsoft keeps bloating Windows. The only reason I buy new graphics cards is for games. But why can''t we develop games that don''t require a new graphics card every 3 months?
I still reckon some of the old Spectrum games were fantastic to play - the gameplay was just brilliant! I would be quite happy to still play games on a 486 if they were of that calibre.
The only reason I have bought new computers is because I use computers for work (programming) - and Microsoft keeps bloating Windows. The only reason I buy new graphics cards is for games. But why can''t we develop games that don''t require a new graphics card every 3 months?
quote:
But why can't we develop games that don't require a new graphics card every 3 months?
Well, we could. But the main-market goes for looks rather then gameplay. Even if such a game makes a select few very happy, there might be too little of them to make the game pay your bills.
I'm sure there'll be none high-end-machine-games coming out that'll be topsellers. But combining good story with good looks will usually attract more customers.
Edit:
quote:
Actually - kind of along the lines of my original post - how many people _don't_ have a computer that supports MMX?
Didn't Sierra/Valve do such a poll maybe a year ago? Maybe try searching for the results online?
[edited by - Wildfire on July 22, 2003 4:07:26 PM]
Topic Locked
This topic has been locked by a moderator. New replies are not allowed.
Sign in to reply to this topic.
Advertisement