per pass?sancheuz said:I would recommend no less then 20 pixel pipes and around 25 tmu's per pass
wtf?
per pass?sancheuz said:I would recommend no less then 20 pixel pipes and around 25 tmu's per pass
sancheuz said:I would recommend no less then 20 pixel pipes and around 25 tmu's per pass
psurge said:How do you know there is data-dependent branching in the fragment shaders - link?
The instruction storage could be shared across all the SIMD processors (Single Instruction), but I guess that would complicate the routing :?.psurge said:But - is it really realistic to assume that all 128 of the pixel processors have their own program/temp storage?
psurge said:Tonyo, I'm not sure if i understand what you mean with the tiles - here is what my guess was : take a tri, split it into 8x8 tiles. For the 64 pixels in each tile, run the same pixel program on each pixel inside the triangle.
Is this what you're saying?
http://www.beyond3d.com/articles/p10tech/index.php?page=page3.incThe 64 processor arrays through the pixel and texture pipelines are arranged in an 8x8 block, which is the basic unit of processing and memory transfer - 3Dlabs refer to this block as a 'tile' or 'patch'.
Note that all the processors in a tile work on the same primitive, so they all are executing the same program, or as you put it:
xxx.....
xxxx....
xxx.....
xx......
x.......
alexsok said:What I would like to know is whether or not P10's architecture supports real flow control in PS?
psurge said:Tonyo - if the instruction storage is shared amongst the pixel units (64 of them), then I think it's likely that each unit is executing the same instruction every cycle (i've never heard of any kind of cache with 64 read ports).
psurge said:Data dependent branching means that different pixels running the same program will potentially take different execution paths in the program, i.e. be executing different instructions at a given clock cycle than neighbouring units.
psurge said:What I was speculating and what I think Tonyo is confirming is that rendering occurs one triangle and one tile at a time, and that each pixel in the tile has a static association to a texture-coordinate/pixel processor pair.
Saem said:These 64 processors are spread amoung the 4 pipes, right? So what you're (Tonyo) saying is that one could have idle processing elements in a pipe because part of the tile that it's processing isn't part of the primative that isn't setup for that pipe. This is because each pipe can only work on one primative but the 4 pipes can work on different primatives because each have their own setup stage, which -according to Dave's tech preview- does the necessary primative plane calculations. All of this within one tile.