Hello,
in src/renderer-tiles.c there is a really bad optimization, starting at about
line 1336 (current qeeqie.org git):
1336 else if ((pr->zoom == 1.0 || pr->scale == 1.0) &&
1337 pr->aspect_ratio == 1.0 &&
1338 !has_alpha &&
1339 orientation == EXIF_ORIENTATION_TOP_LEFT &&
1340 !(pr->func_post_process && !(pr->post_process_slow &&
fast)) &&
1341 !(rt->stereo_mode & PR_STEREO_ANAGLYPH))
1342 {
1343 /* special case: faster, simple, scale 1.0, base
orientation, no postprocessing */
1344 cairo_t *cr;
1345 cr = cairo_create(it->surface);
1346 cairo_rectangle (cr, x, y, w, h);
1347 gdk_cairo_set_source_pixbuf(cr, pr->pixbuf, -it->x -
GET_RIGHT_PIXBUF_OFFSET(rt), -it->y);
1348 cairo_fill (cr);
1349 cairo_destroy (cr);
1350 }
it looks good, but is dead slow, for each and every call to
gdk_cairo_set_source_pixbuf takes at least 15 milliseconds on my not
really slow machine, which amounts to over 2 seconds if 144 tiles have to be
drawn (tested with many jpegs and a few large pngs).
i propose to remove this optimization until someone fixes it. After removal
geeqie is fast, again.
Regards, Uwe
------------------------------------------------------------------------------
_______________________________________________
Geeqie-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/geeqie-devel