Unified shader model 4.0

Started by
6 comments, last by Krohm 16 years, 6 months ago
I have two doubts. ( 1 ) In shader model, I read that no differences between pixel & vertex shaders. What does it really mean? Does it mean that ( a ) Pixel shader and vertex shader can swap their functionalities.i.e Vertex shader can process pixels and pixels shader can access vertex ( b ) A common shader code syntax. Please inform me. ( 2 ) what is resource virtualization and what significance it has for GPU programmers. RRN
Advertisement
the "unified" thing is just a hardware feature. it just means that the GPU only has processors. not specific ones for vertex and pixels, so for example you dont have to load balance between your vertex shaders and pixel shaders yourself.
Quote:Original post by rajesh_nest
( 1 ) In shader model, I read that no differences between pixel & vertex shaders. What does it really mean?

It more or less means that they have the same computational model (registers, instructions) and access to resources (textures, constant buffers). In terms of current hardware implementations they also share the same computational resources (ALU's, texture units).

They are still different in their functionality (their place in the pipeline), and they have different inputs and outputs, but in previous shader models the abilities of VS and PS were different (sometimes very different), and this is no longer the case.
Quote:Original post by ET3D
in previous shader models the abilities of VS and PS were different (sometimes very different), and this is no longer the case.


Abilities - Could you eloborate.


RRN
I elaborated on that in my post. If you want more information, go to the DirectX documentation under "DirectX Graphs \ Direct3D 9 \ Reference \ Asm Shader Reference" and read more about the abilities of the various VS and PS models.
Quote:Original post by rajesh_nest
( a ) Pixel shader and vertex shader can swap their functionalities.i.e Vertex shader can process pixels and pixels shader can access vertex

No, pixel shaders still process pixels and vertex shaders still process vertices. It's just that both of them now have the same capabilities - both can load from textures, both can access the same resources and both have unlimited instruction counts.

Quote:
( b ) A common shader code syntax.

Pretty much, yes.
NextWar: The Quest for Earth available now for Windows Phone 7.
or you can say, now "vs/ps" are only names of Code, not Hardware unit. there's no such hardware unit as "vertex shader" or "pixel shader". there's only "shader".

Quote:Original post by Sc4Freak
Quote:Original post by rajesh_nest
( a ) Pixel shader and vertex shader can swap their functionalities.i.e Vertex shader can process pixels and pixels shader can access vertex

No, pixel shaders still process pixels and vertex shaders still process vertices. It's just that both of them now have the same capabilities - both can load from textures, both can access the same resources and both have unlimited instruction counts.

Quote:
( b ) A common shader code syntax.

Pretty much, yes.


Ideally. Vendors are allowed to choose whatever architecture they want, as long as the logical programming model is matched. Each architecture has its own set of advantages and issues over the other.

In general, I feel all the hype about this "unified" (cores) thing nothing more than a marketing weapon.

Previously "Krohm"

This topic is closed to new replies.

Advertisement