@rygorous @GDCPresoReviews though the output space allocation strategies also vary by hardware. NVIDIA's current architectures do use a pre allocation (think shared memory) before the mesh shader is run. This is worst case outputs. (And also true for vertex shaders). As result it can limit occupancy.
From that, the surviving subset is then passed through pipeline.
NV doesn't support non 32-bit outputs, but one can use shader barycentrics and interpolate custom packed attributes.