From here: “point sprite generation, geometry tessellation, shadow volume extrusion, and single pass rendering to a cube map. … automatic mesh complexity modification”. And allegedly DOF/Motion Blur, generating silhouettes and crease edges, etc. are some uses folks have put it in.
However, for NVidia GPUs, check NVidia’s advice in the latest GPU Programming Guide: don’t use them for tessellation, and the more output a geometry shader generates (verts * floats/vert), the slower you’ll go. Reading between the lines, they basically say avoid geometry shaders like the plague except for really simple cases where not much data is output:
“in general, the potential for wasted work and performance penalties for using a GS makes it an often unused feature of Shader model 4.”, “make sure that you really need them, and that there is no better alterantive”, “A Decent Use of Geometry Shader: Point Sprites”.
However, the latest NVGPUPG doesn’t cover GTX2xx+, which is allegedly when perf improved a bit. As with all things perf, try them and see.
Some benches using the point sprites.
Will a simple pass through geometry shader hurt performance over not having a geometry shader?
Why would you? At any rate, it’s easy enough to just try.
The operative question is whether the hardware/driver configures the GPU differently with no geometry shader versus with a no-op geometry shader you provide, and if so, if you can ever tell the difference. Vendor-specific, so have to just try it.