Can anybody point me to an official Intel marketing material where the X3000 is treated as a DX10 part?And Demi is correct, I think the X3000 is full FP32.
There are various storage formats (10bit, 11bit, 16bit, 32bit) but all computation is in a close subset of IEEE 754 32-bit single precision floating point specification. Although that requires a 23bit mantissa (+ 1 signed bit and 8 exponent bits) so I don't quite see how the referenced Nvidia document fits in...
The main deviations from IEEE 754 are the extreme cases - FP exceptions, NaN's, INF's etc... There also seems to be a few relaxations to improve performance (e.g. faster rounding versus accurate rounding) and aid conversions to/from integer formats.
There are various storage formats (10bit, 11bit, 16bit, 32bit) but all computation is in a close subset of IEEE 754 32-bit single precision floating point specification. Although that requires a 23bit mantissa (+ 1 signed bit and 8 exponent bits) so I don't quite see how the referenced Nvidia document fits in...
I noticed that the DirectX 9.0c SDK documentation specifies 2^-21 precision for exp and log, and 2^-22 rcp and rsq. So I assume this hasn't changed for DirectX 10.
The main deviations from IEEE 754 are the extreme cases - FP exceptions, NaN's, INF's etc...
Obviously a GPU won't throw an exception, but the DirectX 9.0c SDK documentation specifies that rcp and rsq should return inf for 0.0 input. Properly handling NaN's also doesn't seem too hard.
There also seems to be a few relaxations to improve performance (e.g. faster rounding versus accurate rounding) and aid conversions to/from integer formats.
While this point is meaningless for CUDA, since it's available only on cards which already support DX10, I agree for CTM. It has a features not exposed through DX9 (such as scatter writing), and could probably do a good job of offering DX10-like functionality.
The problem is, there's no such thing as "basic DX10 functionality", and emulating the full DX10 spec would be beyond what can be done on the X1x00. Besides, while an interim solution is nice to have, we'll have a good enough range of true DX10 solutions soon enough.