PDA

View Full Version : native instructions



titan
12-16-2003, 07:50 AM
I'm noticing a lot of my programs, both fragment and vertex, take fairly significantly different amounts of resources on a GeForce or Radeon. Not just ALU instructions, but temporaries, attributes, parameters, and texture instructions. The only thing consistant between them is attributes and texture indirections.

Something may take 17 ALU instructions on a Radeon, but 23 or a GeForce. It seems there is a couple free instructions on a GeForce and some tex instructions on a Radeon are ALU on a GeForce.

Is anybody else finding this? I don't want to create a 40 ALU instruction program and find it expands to 49 instructions on some card in the future that only supports the minimum required by the standard.

BTW why does the XGI Volari report -1 native instructions? http://delphi3d.net/hardware/viewreport.php?report=906

Ostsol
12-16-2003, 09:36 AM
Here's a useful table for ATI cards:



Instruction HW Instructions HW Temps HW Constants
ABS 0-1 0 0
FLR 2 1 0
FRC 1 0 0
LIT 7 1 1
MOV 0-1 0 0
COS 11 2 3
EX2 1 0 0
LG2 1 0 0
RCP 1 0 0
RSQ 1 0 0
SIN 10 2 3
SCS 6-8 1 2
POW 3 1 0
ADD 1 0 0
DP3 1 0 0
DP4 1 0 0
DPH 2 1 0
DST 4 1 0
MAX 1 0 0
MIN 1 0 0
MUL 1 0 0
SGE 2 1 0
SLT 2 1 0
SUB 1 0 0
XPD 2 1 0
CMP 1 0 0
LRP 1-2 0-1 0
MAD 1 0 0
SWZ 1-4 1 0
TEX 1 Texture 0 0
TXP 1 Texture 0 0
TXB 1 Texture 0 0
KIL 1 Texture 0 0


[This message has been edited by Ostsol (edited 12-16-2003).]

[This message has been edited by Ostsol (edited 12-16-2003).]

Korval
12-16-2003, 09:55 AM
BTW why does the XGI Volari report -1 native instructions?

I didn't know those things were even out, or had real OpenGL implementations. Maybe its a bug in their drivers. Given the other parameters, (which aren't really trustworthy since the -1's are in there too), we can see that these XGI cards are pretty crappy. 96 per-vertex parameters isn't a reasonable number. I think DX9 itself requires 256 at a minimum, and I certainly won't accept anything less.

V-man
12-16-2003, 02:06 PM
Probably that's a engineering sample with broken drivers. It was announced 1 month ago or something.

But what's the deal with the driver number?
There is a few other cards in that database with the exact same number. Must be a mistake.

titan
12-17-2003, 12:25 PM
Originally posted by V-man:
Probably that's a engineering sample with broken drivers

Possibly, but apparently the cards are shipping now in "limited quantities" so it might not be: http://www.xbitlabs.com/news/video/display/20031217101659.html

azazello
12-17-2003, 12:42 PM
Here's a useful table for NVidia cards(from http://www.3dcenter.org/):



Command Cycle Comment
nop 1
mov 1
add 1
mad 1
mul 1
rcp 1 1/x
rsq16 1 1/radical(x) FP16
rsq32 2 1/radical(x) FP32
dp3 1
dp4 1
min 1
max 1
slt 1
sge 1
exp 1
log 1
frc 1
lit 1
dst 1
lrp 2
texcoord 1
texkill 1
2d texture read 1 Function can performed twice in a clock.
cube texture read 1 Function can performed twice in a clock.
3d texture 1
texbem 2 From here functions for compatibility NV25/PS 1.1-1.3.
texbeml 3
texbemproj 2
texreg2ar 1
texreg2gb 1
texm3x2pad 1
texm3x2tex 2
texm3x2depth 2
texm3x3pad 1
texm3x3tex 2
texm3x3cube 3
texreg2rgb 1
texreg2rgbcube 1
texdp3 2
texdp3tex 2
texdp3depth 2
texbrdf 1
texm3x3spec 7