NVIDIA GeForce 8800 GT (G92)
Part 2: Features, Synthetic Tests
Direct3D 10: Geometry Shader Tests
RightMark3D 2.0 includes two geometry shader tests. The first one is called Galaxy, it's similar to point sprites from previous Direct3D versions. It animates a system of particles using a GPU, a geometry shader creates four vertices from each particle. Similar algorithms should be used in future DirectX 10 games.
A change of balance in geometry tests does not affect rendering results, the image is always identical, only scene processing methods differ. GS load value determines what shader will be busy - vertex or geometry. The amount of work is always the same.
Let's analyze the first modification of Galaxy with vertex computing for three levels of geometric complexity:
The correlation of results with different complexity levels of the
scene is almost the same, only absolute values are different. Performance
demonstrated corresponds to the number of points, FPS is halved each
step. The GeForce 8800 GT demonstrates high results, being insignificantly
faster than the GeForce 8800 GTX.
Memory size does not affect the results. This is an easy task for modern graphics cards. The GeForce 8600 GTS offers high results, which may indicate that ALUs don't limit performance. Perhaps the situation will change, when some work is moved to a geometry shader.
There are no great changes here. All graphics cards, except for the
GeForce 8600 GTS, demonstrate the same results with a different GS
load, when some of the load is moved to the geometry shader. The GeForce
8800 GT is still faster than the HD 2900 XT, the GeForce 8800 GTS,
and it's very close to the GTX. Interestingly, there is a small difference
between graphics cards with different numbers of execution units and
clock rates. Perhaps the situation will change in the second test.
Hyperlight is the second geometry test that uses several techniques: instancing, stream output, buffer load. It employs dynamic generation of geometry by rendering into two buffers, as well as a new Direct3D 10 feature - stream output. The first shader generates ray directions, their speed and growth vectors. These data are stored in a buffer, which is used by the second shader for rendering. Each ray point is used to generate 14 vertices in a circle, up to a million output points.
The new type of shader programs is used to generate rays. If "GS load" is set to "Heavy", it's also used for rendering. That is in Balanced mode, geometry shaders are used only to generate and grow rays. Output is up to instancing. The geometry shader also outputs data in the Heavy mode. Let's analyze the easy mode first:
Results of various NVIDIA graphics cards do not differ much for any
geometry complexity. And the AMD solution is outperformed by the GeForce
8600 GTS, when the geometry load is not very heavy. Performance scales
well in all cases. It's close to theoretical parameters, according
to which, each next level of Polygon count must be twice as slow.
If we ignore poor results of the HD 2900 XT, the situation is exactly the same - the GeForce 8800 GT outperforms all three GTS cards and fares on a par with the GTX. However, results may change in the next test that uses geometry shaders more actively. P¼P¾P¶P½P¾ We can compare results obtained in the Balanced and Heavy modes.
The relation of performance results hasn't changed much. The AMD
R600 apparently performs faster than the NVIDIA GPUs, its advantage
reaches 1.5-2 times. We confirm our older conclusion that AMD solutions
profit from complexity of a geometry shader compared to NVIDIA graphics
cards. This time all NVIDIA GPUs lined up in their results -
the G84 is 2-3 times as slow as the G80, depending on a model. The
GeForce 8800 GT is slightly outperformed by the top GTX, but it's
much better than the GeForce 8800 GTS.
If we compare results in various modes, the GeForce 8800 GT performs better in Balanced mode than the RADEON HD 2900 XT in Heavy mode. You should keep in mind that the image does not differ in these modes. The AMD solution is outperformed, even though NVIDIA cards lose much performance as they switch from instancing to a geometry shader, while AMD cards profit from it.
Here is our main conclusion on geometry shaders - even though different geometry tests may yield different results, the GeForce 8800 GT always demonstrates very high results and outperforms its closest competitors. The RADEON HD 2900 XT shoots forward as geometry complexity grows. But these are synthetic tests, real performance will be demonstrated in games, which will be analyzed in the next part of our review.