I have a rotary encoder with a very high resolution (5000 pulses per rotation). I used what I believe to be a fairly optimized rotary pulse counter program written in C found here but the faster I turn the encoder the more pulses are missed. Where should I go from here? Do I need a dedicated microcontroller to handle the pulse events and if so what specs should the microcontroller have to perform the task successfully?
Edit: I suppose that it's not so much the resolution that matters but pulses/sec and so let's say at most 10,000 pulses per second.