I've usually seen the dynamic/animated bone data represented as a 4x3 (or 3x4) matrix containing rotation/scale/translation transforms relative to the bind-pose.
Where does the magic number 24 (or 48) come from? ;P
Also, think about it realistically - if your model comes at 24 FPS, then multiplying it by 2 will be enough for any human. 100 keyframes per second will give you smooth slow motion, which you very likely won't be needing.
Modern FPS games often have ~50 characters on-screen at once
What dpadam450 means is that the only genre in which you will realistically encounter a large number of models that need to be animated individually is an RTS games. In a general case you'll have 10 models tops running around at one time, which is a beeze to animate on the CPU.
I'm doing a sports game at the moment with 30 characters, each with 60 bones, and who all have multiple different animation sources blended together unpredictably and IK applied on top -- the whole skeletal update part is still fairly cheap and only takes up a few milliseconds.
I'd personally just implement it in a way that is easily understood first (especially if I was fairly new to skinned animation, which admittedly, I am) and work on writing a more optimal version after I got the basic one working if it actually turns out to be performing badly.