The rendering of the preview, and of the MathJax latex equations, is all on the browser, so as @David Zaslavsky says, it's all down to the browser's javascript engine, with Chrome's being the fastest at time of writing.
[edit]
I appreciate that there used to be a 3-second delay between the end of typing and the re-rendering of the preview, and is now much shorter.
But how about changing the javascript preview, so that it actually times itself, measuring how long the whole preview-refresh takes, regardless of how many incidences of Mathjax markup there are? Then if it's slow, it can use the 3s delay ; if it's fast, it can use the 0.5s delay
[end edit]
Now, it might be possible to implement a delay between the end of the last keypress, and a re-rendering of the preview, via a client-side script, in Greasemonkey or the Chrome / Opera user scripts, by hijacking the stackexchange preview function, building the delay in, and then handing back to the stackexchange javascript if the N seconds pass without further keypresses.
I just had a prod around in the javascript source code. It seems that when there are five or more equations, it will build in a small delay before rendering. So maybe if you've got 4 equations, add an extra empty equation or two, and then just keep typing and don't leave more than half a second between keypresses (NB I haven't tried this out, so it may not work! I've just gleaned what appears to be supposed to be happening, from the source)