pwmt/zathura — pull request #8 by xlz (2014-10-28 08:08:24+00:00)
Title: Performance tweaks for multi-page zooming

For multi-page zooming, there are typically 4 pages of highest resolution thumbnails (4*8M pixels) getting downscaled. That turns out to be too much. So make the the maximum thumbnail resolution lower, also allow lower resolution renders to get cached as thumbnails so it can downscale from medium resolutions. This modification provides some improvement in responsiveness during dezooming.

There is also some sluggishness during continuous zooming. It is not caused by the extra scaling, but by the constant requesting and aborting new renders for each page at each zoom level. Large render jobs cost significant more CPU usage than small ones. So assign low priorities to large jobs so that smaller jobs which are light on CPU get processed and aborted first, then large jobs are either aborted without CPU cost or processed as actually needed. This simple change also provides a little improvement in responsiveness.