[go: up one dir, main page]

1.0 lags considerably on zoom and scroll/pan, Mac Catalina

Steps to reproduce:

  • open Inkscape
  • import image or draw a simple rectangle
  • zoom in
  • try to scroll or pan

What happened?

  • Slow to update, particularly on scroll
  • Substantial pause before rest of screen loads.
  • Performance is worse as you scroll (25% zoom is still responsive, 200% has 1-2 second delay before screen loads)

And things that are normal:

  • Menus are still normal, so issue with the canvas rendering
  • In latest builds, hiding toolbars/rulers/status bars doesn't help
  • Doesn't affect a blank document

Informally this is as bad as a 2-3 fps frame rate.

What should have happened?

  • I never had this issue with the old 32 bit + xQuartz system, it was smooth and didnt slow down at all. Not sure if this is a Mac or an Inkscape issue.

Profiling

See #1614 (comment 360963708)

And also, taken from #288 (closed), under Inkscape 1.0alpha2

instruments suggests that image conversion is taking most of the time. Relevant callstack (open expander)
2.80 s   26.5%	0 s	 	                  SPCanvas::handle_draw(_GtkWidget*, _cairo*)
2.80 s   26.5%	0 s	 	                   cairo_paint
2.80 s   26.5%	0 s	 	                    _cairo_default_context_paint
2.80 s   26.5%	0 s	 	                     _cairo_gstate_paint
2.80 s   26.5%	0 s	 	                      _cairo_surface_paint
2.80 s   26.5%	0 s	 	                       _cairo_quartz_surface_paint
2.80 s   26.5%	0 s	 	                        _cairo_compositor_paint
2.80 s   26.5%	0 s	 	                         _cairo_quartz_cg_paint
2.79 s   26.5%	0 s	 	                          _cairo_quartz_draw_source
2.79 s   26.5%	0 s	 	                           CGContextDrawImage
2.79 s   26.5%	0 s	 	                            CGContextDrawImageWithOptions
2.79 s   26.5%	0 s	 	                             CGContextDelegateDrawImage
2.79 s   26.5%	0 s	 	                              backing_store_DrawImage.llvm.776B8D61
2.79 s   26.5%	0 s	 	                               backing_store_delegate
2.79 s   26.5%	0 s	 	                                __backing_store_DrawImage_block_invoke
2.79 s   26.5%	0 s	 	                                 CGContextDelegateDrawImage
2.79 s   26.5%	0 s	 	                                  ripc_DrawImage
2.55 s   24.1%	0 s	 	                                   ripc_AcquireRIPImageData
2.55 s   24.1%	0 s	 	                                    RIPImageCacheGetRetained
2.52 s   23.8%	0 s	 	                                     RIPImageDataInitializeShared
2.52 s   23.8%	0 s	 	                                      CGSImageDataLock
2.52 s   23.8%	0 s	 	                                       img_data_lock
2.51 s   23.8%	1.00 ms	 	                                        img_alphamerge_read
1.84 s   17.4%	0 s	 	                                         img_colormatch_read
1.44 s   13.6%	1.00 ms	 	                                          img_decode_read
1.30 s   12.2%	9.00 ms	 	                                           decode_data
1.29 s   12.2%	1.29 s	 	                                            decode_byte_8bpc_3a
140.00 ms    1.3%	140.00 ms	 	                                           decode_swap

Workarounds (varied success):

Note: related issue for GIMP: https://gitlab.gnome.org/GNOME/gimp/-/issues/4130

Versions

  • 1.0 on macOS Catalina 10.15.2 (OP)
  • 1.0beta2 on macOS 10.14.6, 13" early 2015 macbook (8GB, Intel Iris Graphics 6100 1536 MB) (#1614 (comment 360963718))
  • 1.1-dev (ddb55ca9, 2020-02-02) on Catalina 10.15.3, Mac Spec: 2014, 2.7GHz Quad-Core i5, 8GB 1600 MHz RAM (#1614 (comment 360963723))
  • More tests on later versions
  • 1.0rc1 (09960d6f, 2020-04-09) on macOS 10.15.4 (19E287 MBP 16", 2019, 2.6 GHz 6-Core Intel Core i7, 32 GB DDR4 RAM) (see #1614 (comment 360963799))
Edited by Nathan Lee