something elase to consider is to remove the 'page n of m' if you are using it (or any other function that require the entire report to be virtually created before it can be rendered in the viewer).
Basically it has to draw the entire report to get the M value then redraw the entire report for actual display. Slows it way down for large reports.