Mate, I got home this evening saw ^^^ and I'm like:
challenge accepted!
Previously I've used a separate panel for each gauge, but both you and MarkusR referred to using "one static background and one overlay", which leaves me outvoted both quantitively and qualitively ;-) so I've given that method a go. Personally, I think the results aren't too shabby (performance-wise... presentation-wise, bear in mind that the background, dials and needles are all alpha-channeled BitMaps, so if you need fancy psuedo-reflective highlights or needles with eyeholes or whatever, that is no problem, I'm just too lazy to do it).
Starting easy, we have 16 gauges at a tad under 50 fps:
then we crank it up a bit to your required 60 gauges and we're still buzzing along nicely
and then we wonder: what happens if we go full-throttle... and we're still over 30 fps!
although, admittedly, the total workload in pixel-count terms is probably not changing much, so we wouldn't expect the time taken per frame to change much either. And you'll be needing CPU time to do other stuff as well, so that will lower the fps, but... with 16 gauges taking somewhere between 12 and 21 ms to draw and get to the display, at 10 fps that leaves you 80% CPU left to do other stuff, and at 20 fps you've still got more than 50%. Plus that's from a single-core perspective.