Optimization question

CptFalcon

[H]ard|Gawd
Joined
Dec 13, 2006
Messages
2,012
Question for you heavy math guys, what would happen if another graphics card company came out with optimization algorithms for games? Hypothetically speaking, would that even work if a new company came out and had this? Just looking for some insight.
 
Question for you heavy math guys, what would happen if another graphics card company came out with optimization algorithms for games? Hypothetically speaking, would that even work if a new company came out and had this? Just looking for some insight.

I think that the optimization is already done on consoles.
 
I think that the optimization is already done on consoles.

Now if that could be done for PCs.

Something like 3dfx = glide or S3 = metal ?

Not exactly an external program but an integrated one that automatically recognizes the game engine and attempts to optimize the graphics engine in accordance to the specs of the system as well. I wonder if another company could work with both ATI/Nvidia to make this happen.
 
GLIDE and METAL were graphics programming APIs, not optimization algorithms.

Current games already are optimized -- it's handled by the game engine (Unreal engine, Doom engine, Crytek engine, etc) and that's a large part of what makes newer engines better than their predecessors -- optimization for the hardware that's out there, as well as (at least in theory) future cards.

If you're talking about current-gen (DX9) performance this makes a lot more sense because different vendors have cards with different capabilities (PS2.0 vs. 3.0 for example) and the engine has to take this in to account, normally with "paths" like those used in the Source engine -- DX7, DX8, DX9 2.0 shaders, DX9 3.0 shaders. With the switch to a unified architecture and the removal of "capability bits" for DX10 all vendors have to build a product up to the same base spec -- PS 4.0 support, etc. -- so "optimization" is effectively reduced to different detail levels to handle slower processors and lower resolution textures for cards with less VRAM.

The answer in the end is, "Yes it would matter, and it happens all the time."
 
Now if that could be done for PCs.
Not exactly an external program but an integrated one that automatically recognizes the game engine and attempts to optimize the graphics engine in accordance to the specs of the system as well. I wonder if another company could work with both ATI/Nvidia to make this happen.

Game makers already do this. Many games have multiple rendering paths, or special rendering paths for more limited hardware. An example: Half-Life 2 has DX7, DX8, DX8.1 and DX9 paths, plus an FX-specific path with 16-bit pixel shader precision.

Many games have optimizers for shader programs too, like Battlefield 2.

People make the claim that there's no optimization done on the PC platform, but the fact is that the PC-side is as optimized as you're going to get without hitting the metal. Since ATI and Nvidia don't offer a direct-access API (ATI dropped their ATI3DCIF after the Rage Pro), there's little room for optimization anyway (outside of shader programs, as I mentioned this is already done).
 
Game makers already do this. Many games have multiple rendering paths, or special rendering paths for more limited hardware. An example: Half-Life 2 has DX7, DX8, DX8.1 and DX9 paths, plus an FX-specific path with 16-bit pixel shader precision.

Many games have optimizers for shader programs too, like Battlefield 2.

People make the claim that there's no optimization done on the PC platform, but the fact is that the PC-side is as optimized as you're going to get without hitting the metal. Since ATI and Nvidia don't offer a direct-access API (ATI dropped their ATI3DCIF after the Rage Pro), there's little room for optimization anyway (outside of shader programs, as I mentioned this is already done).

When you mean direct-access API you mean that the gaming devs have direct access to the companies graphics engine?
 
Yes Capt, that's what default meant (I believe). "Low level" as opposed to "high level" access to the GPU via the API.

And yes, Luminary, most do.
 
Yes Capt, that's what default meant (I believe). "Low level" as opposed to "high level" access to the GPU via the API.

And yes, Luminary, most do.

Well what if another company was able to give more but a tad bit limited access to the engine itself. IE: I give you my card and a kit that can give you that access and you work from there, or do they already? I'm a bit clueless here. :confused:


On another (and original note), the point I want to make is that could an internal program help optimize the computer to better work with other hardware and parts?

Last thing is could and would AMD/ATi/Nvidia/Intel work in a joint effort to help optimize their own products? If you really think about this then your average Joe would buy more of your product b/c he/she knows that if they added more hardware their hardware would run faster.

Think about it. It's already done on consoles, why not on PC's on a more broader and deeper level.
 
It's not really done on consoles, save by default. Consoles are (aside from HDD sizes and type of net connection, anyway) by their very nature, all the same. Same exact hardware, same exact software, "drivers" built in at the most basic level, all the same.

That's the only reason they're "optimized." Really, it's just writing for a specific platform. If you tried you could probably write code that would ONLY work on a single given configuration -- even relying on something like processor clocks as a reference so it won't run "out of spec". The issue is, with all the literally millions of possible combinations of hardware, maybe even billions, in a given generation of PC hardware, writing code that'll handle everything the best way for every configuration... is damn near impossible, an exercise in futility.
 
Back
Top