On Thu, Sep 24, 2009 at 2:47 AM, Hugh Fisher <[email protected]> wrote: > Breaking down by instruction type over those 90 shaders
Thanks for doing this! > Lines = 2863 > Other 50 = 1.7% (These are branch targets) > Branch 80 = 2.8% > Scalar 1008 = 35.2% > Vector 1725 = 60.3% > > Yes, the ratios have shifted since the early days of Shader Model > 1.0 and low level assembler. But not much. 3D graphics in the GPU > era is still all about vector/matrix crunching. > > The only argument I've heard so far in favour of MIMD is that it > would improve the performance for scalar workloads. For a graphics > chip, that doesn't appear to be a smart approach. You've made a solid case for including vector instructions. Code will take up about 55% as much space. But you've also convinced me further of my other argument. If we add vector instructions, we'll make 60% of the instructions optimistically 4x faster. 100/(60/4 + 40) = 1.82 So we get an 82% speedup on a single thread. That's hardly worth the cost of quadrupling the hardware requirement. With an area constraint, we'll end up getting 45% the throughput we would have had with scalar engines. Hell, even if they're only 3x larger, we still have a 40% performance loss. There's no way they'll be less than 2x larger, in which case, we have about a 10% performance hit. -- Timothy Normand Miller http://www.cse.ohio-state.edu/~millerti Open Graphics Project _______________________________________________ Open-graphics mailing list [email protected] http://lists.duskglow.com/mailman/listinfo/open-graphics List service provided by Duskglow Consulting, LLC (www.duskglow.com)
