Thread: CPU or GPU ?
View Single Post
Old 07-01-2003   #8 (permalink)
Mr. Belvedere
CDFreaks Resident
 
Mr. Belvedere's Avatar
 
Join Date: Jun 2001
Location: married
Posts: 14,669
There is no programming language more advanced and faster than the core assembly (or machine language) the CPU or GPU understands.

Trouble is though that you are programming one heck of a stable program on just THAT configuration. Rearrange one single thing and it will malfunction.


DirectX is not an accellerator , DirectX is a compatibility issue , just as OpenGL is. DirectX compatible just means it understands the DirectX functionality. It's a list of translated things.


For instance :

If your program would be assembly code on a NV21 GPU putting a triangle somewhere , that would be the fastest , but perhaps would only work on a NV21 GPU and not even on a NV20 or a NV22.

If you program in DirectX. (Yo DirectX ! Put a triangle there) , it will work (hopefully) the same on every DirectX compatible GPU. Wether it would be NV20 , NV21 , NV22 or Radeon 9700.
The REAL instruction given to the GPU is decided by directx (Uh , Nvidia .. i'll push this... Uh .. Radeon .. i'll push that)


Enhancements in CPU's trigger some abilities inside the CPU itself , letting go of their standard instruction set , but use a far more advanced instruction set.

For instance :

AMD has to be compatible with X86 in order to run a X86 operating system , but if the operating system would understand the 3d!Now technology , the AMD CPU is possible to calculate things a little faster than by using their "normal" X86 instruction set.

Intel does the same with MMX. You can run your X86 operating system on a 486 66Mhz or a Pentium 1 66Mhz. Given they use the same instruction set (Note : actually they don't) at the same speed , their performance would be about the same , but if the operating system would understand the MMX technology , the Intel CPU with MMX would be possible to calculate things a little faster than by using their normal X86 instruction set.


A pain to program ,Fast , but hugely incompatible : Machine code 100% on the unit
Easier to program , Less fast , but more compatible : DirectX , OpenGl , detection and usage of MMX , SSE , whatever
Easiest , Slow , but extremely compatible : Standard instruction sets every CPU and GPU understands.


Quake 2 was actually a very good testing tool for this. Regarding if your GPU understands OpenGL , DirectX or 3DFX tuning , you could check which one is the fastest for your video card
__________________
I might be evil.

Want to make dvd movie backups? Take the 5-step
or the 2-step process. Fun, fast and free!
Mr. Belvedere is offline   Reply With Quote