How many Polys can the New Consoles Push?

version said:
max visible polycount on 1280*720P is 1mill /frame, 60 mill/sec
max invisible polygons 1 billion/frame 60 billion/sec on ps3

I'm gonna guess you're estimating the transform rate here, but if you're using the 1.1bn RSX figure, that's per sec, not per frame..

And does anyone know if that's the transform or setup rate? I'm guessing it's the transform rate..
 
Take everything Version says with a large sack of salt. He's known for his drive-by postings, releasing crazy dream specs for the PS3.
 
In the end, next gen consoles will be able to calculate many more polygons than they can actually display. they will not get to the maximum for fillrate, shading and whatnot limitations.

So it would be a bit more interesting to know what can be done with the "many" polygons they can push, not just get a number we can do nothing with.
 
Can you demonstrate such a mesh, faf? I'm having some trouble picturing it.
The most straightforward example of a 2:1 ratio of triangles/vertices I can think of is as follows. (EDIT: Now that I think about it, this may be the only example...)

- Think of a honeycomb (tiled regular hexagons, extending on an infinte 2-D plane)
- Subdivide each hexagon into 6 regular triangles.

That's it.

As you can easily visualize, each vertex is shared by 6 triangles, and each triangle, has, of course, 3 vertices. Thus, you get a 2:1 ratio.

This 2-D mesh can then be warped, for example, into a sphere, a doughnut, a chubby plumber, or a walking mushroom. This is what Faf meant by an ideal mesh. As long as it is a closed surface (i.e. no opening) it has a 2:1 ratio, since there is no edge. (EDIT: Maybe not 2:1, but very close to it)

Closed surfaces are known in math as manifolds. I don't know much more than that, but the theory of manifolds and graph theory are very well developed. I believe it is a branch of modern algebra, but I'm not sure. I believe it can be proved that for a 2-D manifold in 3-D space, the ratio of triangles to vertices is <= 2, but I'm not sure.
 
Last edited by a moderator:
i searched google and X850 XT had 850 million vertices/second, Does this mean R520 or R500 have a higher vertices /second or lower
 
is the 500 million triangle setup limit for Xenos based on all shaders doing just vertex work? or is that for the entire system?
 
blakjedi said:
is the 500 million triangle setup limit for Xenos based on all shaders doing just vertex work? or is that for the entire system?
It's not a shader limit, it's a limit of the rasterizer. No matter how fast the shaders are spitting out vertices, the rasterizer can only accept one polygon per clock for conversion to pixels. These polygons can be triangles or rectangles (think particles).

Let's run the numbers for a Z only first pass. Assuming 1 vert per triangle (a bit optimistic, but not too far off reality) and all ALUs calculating vertex shaders, the Xenos can run 48 instructions (vec4+scalar) per vertex and still output 500 million triangles per second. In contrast, the NV2a (Xbox) max triangle number was based on a 4 instruction vertex shader (the minimum needed to transform to screen space). 48 is enough to do a bunch of interesting things. Even in a balanced scenario (12 VS, 32 PS) the Xenos is running 12 instruction per vertex. Triple the NV2a at it's maximum.
 
richardpfeil said:
It's not a shader limit, it's a limit of the rasterizer. No matter how fast the shaders are spitting out vertices, the rasterizer can only accept one polygon per clock for conversion to pixels. These polygons can be triangles or rectangles (think particles).

Let's run the numbers for a Z only first pass. Assuming 1 vert per triangle (a bit optimistic, but not too far off reality) and all ALUs calculating vertex shaders, the Xenos can run 48 instructions (vec4+scalar) per vertex and still output 500 million triangles per second. In contrast, the NV2a (Xbox) max triangle number was based on a 4 instruction vertex shader (the minimum needed to transform to screen space). 48 is enough to do a bunch of interesting things. Even in a balanced scenario (12 VS, 32 PS) the Xenos is running 12 instruction per vertex. Triple the NV2a at it's maximum.

Why isnt it 48 * 500 mhz = 24 billion instructions/4 = 6 billion verts?
 
richardpfeil said:
It's not a shader limit, it's a limit of the rasterizer. No matter how fast the shaders are spitting out vertices, the rasterizer can only accept one polygon per clock for conversion to pixels. These polygons can be triangles or rectangles (think particles).

Let's run the numbers for a Z only first pass. Assuming 1 vert per triangle (a bit optimistic, but not too far off reality) and all ALUs calculating vertex shaders, the Xenos can run 48 instructions (vec4+scalar) per vertex and still output 500 million triangles per second. In contrast, the NV2a (Xbox) max triangle number was based on a 4 instruction vertex shader (the minimum needed to transform to screen space). 48 is enough to do a bunch of interesting things. Even in a balanced scenario (12 VS, 32 PS) the Xenos is running 12 instruction per vertex. Triple the NV2a at it's maximum.


and where the second pass? :) max 250 mill polys on xenos :)
 
nondescript said:
The most straightforward example of a 2:1 ratio of triangles/vertices I can think of is as follows. (EDIT: Now that I think about it, this may be the only example...)

- Think of a honeycomb (tiled regular hexagons, extending on an infinte 2-D plane)
- Subdivide each hexagon into 6 regular triangles.

That's it.

As you can easily visualize, each vertex is shared by 6 triangles, and each triangle, has, of course, 3 vertices. Thus, you get a 2:1 ratio.

This 2-D mesh can then be warped, for example, into a sphere, a doughnut, a chubby plumber, or a walking mushroom. This is what Faf meant by an ideal mesh. As long as it is a closed surface (i.e. no opening) it has a 2:1 ratio, since there is no edge. (EDIT: Maybe not 2:1, but very close to it)

But can this really be used to model a complex object ? Or is there some kind of algorithm/modifier to turn parts of a regular modelled mesh into it ?
I don`t know nothing about modelling for a 3D engine. Normally a mesh has about 1Vert:2Faces
 

Attachments

  • opject.jpg
    opject.jpg
    21 KB · Views: 68
Can you turn a "regular" mesh into one with a good vertex reuse ratio? Sure, just hit subdivide a few times...

Not sure what any of this proves though.

What a machine can push in terms of polys should be defined by the polgon setup speed, not the vertex/polygon ratio, because the vertex processing probably vastly outstrips the setup on pretty much every next-gen machine.

So the amounts are in the 100's of millions, even though the machines can in principle calculate enough vertices to feed a billion or two.

Instead what you're (hopefully) going to see, is "enough" polygons with a plenty of processing power to put them in the right place.

On a PS2 it would be relevant - getting good vertex reuse was important because a good engine just about processes vertices at the same speed the GS can setup and rasterise them. You could measure your engine in number of verts per second, and then with good geometry get a close to theoretical polygon throughput. But now? Not so useful.
 
Titanio said:
I'm gonna guess you're estimating the transform rate here, but if you're using the 1.1bn RSX figure, that's per sec, not per frame..

And does anyone know if that's the transform or setup rate? I'm guessing it's the transform rate..

I think it's setup. What I'm wondering is if you use several spus to help the RSX, can this number be achieved in an in-game scenario with non-trivial shaders? and if so how many spus would be needed(aka how many'd be left for other things)?

PS

As was said earlier in this thread the in-game avg. for vertex:triangle ratio's been around 1vert:1-2 triangle... IIRC it was something like 1vert:1.4~triangles.
 
MrWibble said:
Can you turn a "regular" mesh into one with a good vertex reuse ratio? Sure, just hit subdivide a few times...

Subdivide does not create hexagons, it just adds verts in the middle of each line and connects them. So you get more verts/edges but the ratio stays the same.

EDIT: Guess you`re right , depends on the method used.
 
Last edited by a moderator:
blakjedi said:
Why isnt it 48 * 500 mhz = 24 billion instructions/4 = 6 billion verts?
That is the way the NV2a number was calculated, and the rasterizer on that GPU could accept new vertexes at that rate (116 million per second. I think 233 in actuality). The Zenos rasterizer is not as big a leap as the other parts of the chip are. I bet most XBox games use less than a quarter of the rasterizing capabilities they have available. It's an underutilized part of the chip that didn't need as big an improvement. Consequently, it is now the bottleneck.

I guess the XBox team could quote the 6 billion verts/second number. Maybe they grew a conscience. ;-)
 
version said:
and where the second pass? :) max 250 mill polys on xenos :)
True dat. Also shadowing passes, particle systems, reflections, et al. I'd go further and say that only a quarter of the polygon throughput would be available for modeled content (environment, characters, objects). Let's say 125 million verts per second / 60fps ~ 2 million verts per scene.
 
richardpfeil said:
True dat. Also shadowing passes, particle systems, reflections, et al. I'd go further and say that only a quarter of the polygon throughput would be available for modeled content (environment, characters, objects). Let's say 125 million verts per second / 60fps ~ 2 million verts per scene.

For my edification what equals a "scene." Folks tend to talk in terms of fps (so that lay guys such as myself can understand). Also as a follow up to your other post about the rasterizer...

So lets say a frame needs only 1 million pixels @ 1280x720p if the setup limit is 500 milion your saying more than half of those will disappear on the first pass due to z, alpha and shadows... ok so now we have 250 million verts in use on screen and the other shaders can be dedicated to pixel shading based on the data from the previous pass?
 
blakjedi said:
For my edification what equals a "scene." Folks tend to talk in terms of fps (so that lay guys such as myself can understand). Also as a follow up to your other post about the rasterizer...

So lets say a frame needs only 1 million pixels @ 1280x720p if the setup limit is 500 milion your saying more than half of those will disappear on the first pass due to z, alpha and shadows... ok so now we have 250 million verts in use on screen and the other shaders can be dedicated to pixel shading based on the data from the previous pass?
By scene I mean the collection of polygons in the view frustum for any given frame.

It was really a silly calculation. Just me riffing on a theme. Too many variables at play to make anything meaningful out of it. I left out back-face culling, Z occlusion, ect. The number just seems to be about where devs will end up. Take Project Gotham Racing 3. 80,000 polys per car x 8, one interior at 80,000 + drivers ~ one million. Another million for the city & spectators.
 
Surely it depends how they measured the amount of triangles per sec.

You all seem to be under the assumption that it is the amount of triangles in one given object.

Maybe it's the amount of individual triangles (3 vertices) per sec it can render. If this were the case then xenos would be capable of producing 1.5 billion vertices per second.
 
GB123 said:
Surely it depends how they measured the amount of triangles per sec.

You all seem to be under the assumption that it is the amount of triangles in one given object.

Maybe it's the amount of individual triangles (3 vertices) per sec it can render. If this were the case then xenos would be capable of producing 1.5 billion vertices per second.

no , max 500mill polys and 500 mill vertices
 
Back
Top