Does having a key per frame affect Ogre's animation performance?
In other words, is it better to have fewer keys, causing more interpolation, or have more keys, or it doesn't matter?
No real runtime performance difference, just bigger memory usage for more keys. Really you should use as few keys as you can. Animation::optimise helps you here.
I wrote this method specifically to make it simpler to make exporters which sampled IK animation at fixed intervals, which can introduce unnecessary keyframes and static tracks if done across the board. Of course, this wasn't entirely altruistic since I was writing such an exporter at the time (XSI)