3dlabs interview in Maximum PC

ben6

Regular
MPC: Tell us about the silicon specifics
Neil Trevett: The P10 has 76 million transistors. That's actually 13 million more than the Geforce4, but we think we get good value out of those extra 13 million transistors. In essence, the chip packs over 200 32bit processors onto a single chip. So in it's highest-performing form , it's 200 gigaflops processing power and over a tera-op of integer.

MPC: So what really makes the P10 different from the competition's products
Neil Trevette: Programmability. Programmability is the key, and I think programmability is going to be the biggest revolution in the PC graphics industry. It's going to be as big a revolution as when we first got the traditional APIs- Direct3d and OpenGL 1.0. For the gaming community , it's going to mean a big step closer to interactive visual reality. For the game developers, it's going to mean that suddenly they are freed from a limited palette of creactivity and they're going to find their horizons of creativity just opening in front of them.

MPC:What makes the P10s pixel and vertex shaders different from the competition
NT: If you look at the P10 visual processing architecture, at the high level , our key differentiator is that we have the first architecture to be programmable from the top to the bottom. The other guys start out programmable from the top of the pipeline, and gradually become less and less programmable as they go down. SO there are three main programming stages where we need the flexibility of programmability. One is the geometry part of the pipeline. The other one is the texture part of the pipeline. And finally , the back-end pixel part of the pipeline.

MPC: Is the P10 fully DirectX 9 compliant?
NT: Not quite. I think none of today's existing hardware is fully DX9 compliant. There are different layers of DX9 compatibility, and it will be interesting to see how the marketing wars (ooh Nvidia and ATI ;) my wording not Neils hehe) , work out. We can definitely ship DX9 drivers; that's no problem . But the interesting areas of debate are the Vertex Shader 2.0 and Pixel Shader 2.0 specs. They're the two interesting things for the gaming community and are a part of the DX9 spec. P10 can support Vertex Shader 2.0, but P10 will not be able to support Pixel Shader 2.0 because we don't have the floating-point power that we would need to fully support it
 
MPC: Lots of gamers (me included) aren't seeing any benefit to having any type of programmable card right now. What is 3DLabs doing to explain why they need to get a programmable shader card.
NT: There are a couple of things that are really holding back the DirectX 8 titles actually hitting the street, even a year and a half after DirectX 8 was initially launched.
First of all because DirectX 8 sets the programmability at the assembler level, this keeps developers from quickly deploying the programmable titles. It's more difficult to program at the assembler level than it is the at the high-level language level. And because of the way that DirectX evolved, there are two assembler level APIs-one for ATI and one for nVidia. So the poor developers have to learn the code and difficulties of not one low-level API , but two! (dig at the DX8/8.1 split :)) That has proven to be difficult. It's twice as much work, and a lot of work to begin with.

The key thing is to make games programmable using a high-level language, a hardware-independent languae. And this is another lesson we can learn from the CPUs. And the magic word is the compiler. (A compiler translates code written in a high-level programming language such as C into a language native to a specific piece of hardware , such as a VPU-ed.)

MPC: Will the compilers be able to write clean code that won't have errors? Or is that something the developer will have to pay attention to on the API level
NT: No, I think the compilers should (know the limitations of the chip). Today graphics vendors live or die by the quality of their drivers , while , tomorrow, the graphics vendors are going to live or die by the quality of their compilers

MPC: Why are compilers so important?
NT: There's this underlying theme that there's lots of stuff we can learn from CPUs; we don't have to reinvent all those wheels. And once you have a compiler in the chain, you can provide a very C-like shading language to the developers. That makes it 10 times easier for them to develop good titles. And, also, because the graphics vendors themselves will be providing the compiler back-ends, it will alleviate the pain developers have to go through to port their code onto each individual graphics chip. That should be largely hidden by compilers that are written well.

My apologies to MPC for printing answers verbatim, but it's interesting what he said...
 
I can certainly see his point about DX8/8.1, but you gotta wonder if 3DLabs isn't just a bit miffed about being left out of the equation, and just want to promote their own solution. Personally, I'd rather hear from developers on this, rather than having the chip makers speak for them.

Its good that he's promoting a single HLSL, though its not as if 3DLabs could hope to compete with nVidia and ATI in that regard.
 
NVIDIA and ATI questions :

NVIDIA: Can you reprogram the P10 to fully support, and be hardware compliant with , the new versions of DirectX and OpenGL when they come out (Interesting question no?)

NT: In general yes. We have the programmability to provide the natively accelerated support for a huge range of API functionality. There are some API features that are simply going beyond the bounds of today's silicon. The most tangible example is the Pixel Shader 2.0 spec in DirectX 9 (hrm interesting answer). We could provide floating-point support before pixel operations in the software using the programmability , just like you can run a DX9 Pixel Shader 2.0 on a CPU (you can?). But it probably wouldn't be usably fast. But the answer is yes.

I think the question is a good one ,actually, because it show's nVidia's mindset . They have a very hardware-oriented mindset that thinks "If it's not running natively in hardware, it can't be real graphics" (great point) We're ccoming from a more software-oriented mindset that's saying really, "A sufficiently powerful programable processor can provide native very high performance support for any API feature you wish"

ATI: It has been stated that your pixel shader programmable architecture is general-purpose. Without referring to any specific DirectX API specification, wouldn't it be more difficult for programmers to develop applications specific to your architecture rather than adhering to a particular DirectX pixel shader spec? If this is not the case , then what DirectX pixel shader version do you support, and how is your implementation any more programmable than another that supports the same version (interesting question PS1.2/1.3/1.4 anyone ?)

NT:That's actually a good question too. The question is asking , will we be trying to persuade developers to use some non-DirectX propietary interface, so they can get access to our programmability? The answer is no. We are real strong believers in standard graphics APIs, and we would as a matter of policy never ask a graphics programmer to use a propietary API or interface of any sort.

So what interfaces are availble? There's DirectX , and we support the current DirectX, which is DirectX 8.1. We can support a lot of DirectX 9, with the exception of Pixel Shader 2.0. We have OpenGl 2.0, which is an open standard. That's not the propietary API for 3DLabs. Yes, it has been driven by 3DLabs. We are working hard to make it applicable and attractive to the entire industry.
 
One more question from this very comprehensive interview (I haven't covered 1/3of the questions :))

MPC: Are we going to see "OpenGL vs DirectX Wars 2.0"?

NT: No. The religious War 1.0 was highly counterproductive and destructive. A lot of people were spending effort knocking the other guy, rather than figuring out how to help the developers code better applications faster. The API War 2.0 is actually not going to be a war at all-it's going to be "enlightenment 2.0." Working at the high level , we can bring these two disparate fields much closer together. We might not get to the idea of having one high-level API immediately, but with the right cooperation (hrm dig ;)) we can set the two camps on a convergence path.
 
Wow, great interview. Props to MaxPC--I'd kinda written them off after they changed from boot.

Ah, the good old days. ;)
 
Hm.. this is actually fun.

One company is trying to act as if they are the Holy Grail of the PC Graphics Industry (we are nice, we are standard, we are good), the sad thing is that many ppl actually believe them :)

They have alot of programmability, yes, probably, but maybe they mistaken the market they are targeting their card ?

PC Developers havent used Shaders yet (even VS), the only examples in few games are staright Copy/Paste from either CG/NV, ATI SDK (probably NV/ATI/whoever should just release a set of "premade" materials so we'd see some nice effects) so where will that "Superior" programmability be used ? well, nowhere is probably the answer.

As a programmer i dont care if DX9 or GL2.0 will win (the "there will be no DX/GL wars" part of the interview is between ridicle and fun), i just hope ONE AND ONLY ONE standard will be used, but since i dont believe in fables im sure that will never happen :)
 
Back
Top