I'm an intermediate OpenGL hobby programmer, the current 3d technology has become too much for me to grasp easily. I keep hearing about lots of things but they are not clear to me. Here are some of the questions that are nagging me. I'll be very thankful if these questions are answered.
1) Architecture wise, how are the vertex and fragment (pixel) parts of the GPU different? Is it true that the vertex part is deeply pipelined whereas the fragment part is parallelized?
2) Where are the FIFO queues used in the gpu?
3) What are read-modify-write hazards? Why do they happen?
4) I'm very confused about the current generation of texture units. How are they arranged? 4 pipelines with 1 unit each, 4 pipelines with 2 units each.. how do these differ? How do they support more textures than there are texture units on a pipeline.
5) Vertex cache: How are triangle lists more cache friendly than triangle strips?
Thanks a lot.
1) Architecture wise, how are the vertex and fragment (pixel) parts of the GPU different? Is it true that the vertex part is deeply pipelined whereas the fragment part is parallelized?
2) Where are the FIFO queues used in the gpu?
3) What are read-modify-write hazards? Why do they happen?
4) I'm very confused about the current generation of texture units. How are they arranged? 4 pipelines with 1 unit each, 4 pipelines with 2 units each.. how do these differ? How do they support more textures than there are texture units on a pipeline.
5) Vertex cache: How are triangle lists more cache friendly than triangle strips?
Thanks a lot.