I think this is an area where a DM can adopt some habits that speed things up quite a bit.
I find that I can actually run large groups of mooks pretty quick as long as they are very simple. I generally divide them into groups of 4-6 and have each group run on its own initiative order.
Usually, they aren't very tough compared to the PCs and need very high numbers to hit on the d20. So you can just roll a handful of d20s , pick out the 1 hit, then do its damage and move on.
To keep track of damage on them, I cut out small pieces of colored paper before the fight starts, and just note the damage that a given mook has taken on its piece of paper and stick it by the mini. Or, if their hit points are really low, I don't even bother to note the damage; I just adopt a convention that the 2nd hit on a damaged mook automatically takes it out, if the first one wasn't sufficient to do so.
You can even match d20s to damage dice by color, and roll everything at once, to speed things up further.
I ran a fight once where 250 savage tribesmen led by about 15 leader types attacked a village that the PCs had fortified once this way. It took us about 6 hours to fully play out, but what a fight! My players loved it. The key to making it work was that the savage tribesmen were lvl 1 warriors, all with identical stats and equipment. So I didn't have much to keep track of.
Ken