https://bugs.kde.org/show_bug.cgi?id=475183

            Bug ID: 475183
           Summary: Switching between files performance issue
    Classification: Applications
           Product: krita
           Version: 5.2.0-rc1
          Platform: Debian stable
                OS: Linux
            Status: REPORTED
          Severity: normal
          Priority: NOR
         Component: General
          Assignee: krita-bugs-n...@kde.org
          Reporter: rebe...@rbreu.de
  Target Milestone: ---

Created attachment 162057
  --> https://bugs.kde.org/attachment.cgi?id=162057&action=edit
Screenshot of popup

On 5.2 rc1, subwindows enabled, all files in fullscreen. I noticed that when
having multiple files open, switching to another image sometimes takes a couple
of seconds and I get a “Waiting for image operation to complete” popup. (See
screenshot.) It seems to have to do with the complexity of the files (vs my
older laptop, I guess). With the files I'm currently working on, I can reliably
reproduce this with:

 1. Have two files open
 2. Paint on file 1
 3. Switch to file 2 (instantaneous)
 4. Switch back to file 1: slow and and you get the popup
 5. Further switching will be instantaneous again until you do other stuff

If I do the same thing on 5.1 with the same files, switching as always
instantaneous. I don't remember even having this issue on 5.1, and I've been
working working on this project and frequently switching for a while now. I'll
be attaching two test files that seem just about complex enough to trigger this
issue on my system, though they might not on a different computer?

Memory usage in the bottom bar is always reporting fine, with the attached test
images it's still in the blue range.


Krita

 Version: 5.2.0-rc1 (git 3323e4e)
 Hidpi: false

Qt

  Version (compiled): 5.15.7
  Version (loaded): 5.15.7

OS Information

  Build ABI: x86_64-little_endian-lp64
  Build CPU: x86_64
  CPU: x86_64
  Kernel Type: linux
  Kernel Version: 5.10.0-25-amd64
  Pretty Productname: Debian GNU/Linux 11 (bullseye)
  Product Type: debian
  Product Version: 11
  Desktop: GNOME
  Appimage build: Yes

Locale

  Languages: en_US, en, en_Latn_US, en, en_US, en_Latn_US
  C locale: en_GB.UTF-8
  QLocale current: en
  QLocale system: en
  QTextCodec for locale: UTF-8

OpenGL Info

  Vendor:  "Intel"
  Renderer:  "Mesa Intel(R) HD Graphics 630 (KBL GT2)"
  Driver version:  "4.6 (Core Profile) Mesa 20.3.5"
  Shading language:  "4.60"
  Requested format:  QSurfaceFormat(version 3.3, options
QFlags<QSurfaceFormat::FormatOption>(), depthBufferSize 24, redBufferSize 8,
greenBufferSize 8, blueBufferSize 8, alphaBufferSize 8, stencilBufferSize 8,
samples -1, swapBehavior QSurfaceFormat::DoubleBuffer, swapInterval 0,
colorSpace QSurfaceFormat::DefaultColorSpace, profile 
QSurfaceFormat::CompatibilityProfile)
  Current format:  QSurfaceFormat(version 4.6, options
QFlags<QSurfaceFormat::FormatOption>(), depthBufferSize 24, redBufferSize 8,
greenBufferSize 8, blueBufferSize 8, alphaBufferSize 8, stencilBufferSize 8,
samples -1, swapBehavior QSurfaceFormat::DoubleBuffer, swapInterval 0,
colorSpace QSurfaceFormat::DefaultColorSpace, profile 
QSurfaceFormat::CoreProfile)
  GL version: 4.6
  Supports deprecated functions false
  Is OpenGL ES: false
  supportsBufferMapping: true
  supportsBufferInvalidation: true
  forceDisableTextureBuffers: false
  Extensions:
     GL_AMD_depth_clamp_separate
     GL_EXT_framebuffer_multisample_blit_scaled
     GL_ARB_shading_language_include
     GL_KHR_context_flush_control
     GL_NV_packed_depth_stencil
     GL_ARB_clear_buffer_object
     GL_ARB_draw_buffers
     GL_AMD_vertex_shader_layer
     GL_EXT_texture_shadow_lod
     GL_ARB_texture_query_levels
     GL_ARB_robust_buffer_access_behavior
     GL_ARB_copy_buffer
     GL_ARB_ES3_compatibility
     GL_AMD_texture_texture4
     GL_ARB_vertex_array_bgra
     GL_NV_depth_clamp
     GL_ARB_robustness
     GL_OES_EGL_image
     GL_KHR_texture_compression_astc_ldr
     GL_ARB_polygon_offset_clamp
     GL_ARB_shader_viewport_layer_array
     GL_ARB_sample_shading
     GL_EXT_EGL_sync
     GL_ARB_base_instance
     GL_AMD_shader_trinary_minmax
     GL_MESA_shader_integer_functions
     GL_ARB_framebuffer_no_attachments
     GL_ARB_invalidate_subdata
     GL_ARB_arrays_of_arrays
     GL_ARB_direct_state_access
     GL_KHR_debug
     GL_ARB_conservative_depth
     GL_AMD_query_buffer_object
     GL_ARB_shader_stencil_export
     GL_NV_fragment_shader_interlock
     GL_ARB_shader_ballot
     GL_ARB_texture_non_power_of_two
     GL_KHR_no_error
     GL_ARB_shader_atomic_counter_ops
     GL_ARB_texture_storage_multisample
     GL_EXT_texture_compression_rgtc
     GL_ARB_shader_texture_lod
     GL_ARB_fragment_shader
     GL_ARB_get_program_binary
     GL_ARB_shader_texture_image_samples
     GL_ARB_shader_draw_parameters
     GL_EXT_draw_instanced
     GL_ARB_parallel_shader_compile
     GL_EXT_texture_shared_exponent
     GL_ANGLE_texture_compression_dxt5
     GL_NV_conditional_render
     GL_ARB_shader_clock
     GL_ANGLE_texture_compression_dxt3
     GL_ARB_pixel_buffer_object
     GL_ARB_texture_buffer_range
     GL_ARB_fragment_layer_viewport
     GL_ARB_transform_feedback3
     GL_EXT_timer_query
     GL_ARB_half_float_pixel
     GL_ARB_map_buffer_range
     GL_EXT_packed_depth_stencil
     GL_EXT_semaphore_fd
     GL_ARB_sync
     GL_ARB_texture_query_lod
     GL_EXT_abgr
     GL_ARB_texture_rg
     GL_MESA_texture_signed_rgba
     GL_ARB_program_interface_query
     GL_ARB_texture_filter_anisotropic
     GL_ARB_multi_draw_indirect
     GL_ARB_draw_indirect
     GL_ARB_indirect_parameters
     GL_ARB_shader_objects
     GL_EXT_texture_integer
     GL_KHR_robust_buffer_access_behavior
     GL_ARB_query_buffer_object
     GL_ARB_texture_compression_bptc
     GL_EXT_pixel_buffer_object
     GL_ARB_vertex_attrib_64bit
     GL_EXT_texture_compression_s3tc
     GL_EXT_semaphore
     GL_ARB_gpu_shader5
     GL_AMD_draw_buffers_blend
     GL_ARB_vertex_type_2_10_10_10_rev
     GL_ARB_point_sprite
     GL_ARB_uniform_buffer_object
     GL_INTEL_performance_query
     GL_KHR_blend_equation_advanced_coherent
     GL_ARB_framebuffer_object
     GL_EXT_draw_buffers2
     GL_ARB_draw_elements_base_vertex
     GL_ARB_vertex_array_object
     GL_KHR_texture_compression_astc_sliced_3d
     GL_ARB_texture_mirror_clamp_to_edge
     GL_EXT_shader_framebuffer_fetch_non_coherent
     GL_ARB_shader_subroutine
     GL_ARB_ES3_2_compatibility
     GL_ARB_texture_storage
     GL_ARB_transform_feedback2
     GL_ARB_vertex_shader
     GL_EXT_EGL_image_storage
     GL_EXT_blend_equation_separate
     GL_ARB_ES2_compatibility
     GL_ARB_ES3_1_compatibility
     GL_INTEL_blackhole_render
     GL_ARB_texture_multisample
     GL_ARB_transform_feedback_instanced
     GL_ARB_provoking_vertex
     GL_INTEL_shader_integer_functions2
     GL_EXT_texture_compression_dxt1
     GL_ARB_shader_atomic_counters
     GL_AMD_vertex_shader_viewport_index
     GL_ARB_viewport_array
     GL_EXT_demote_to_helper_invocation
     GL_ARB_buffer_storage
     GL_ARB_stencil_texturing
     GL_ARB_fragment_shader_interlock
     GL_NV_compute_shader_derivatives
     GL_ARB_compressed_texture_pixel_storage
     GL_EXT_framebuffer_sRGB
     GL_IBM_multimode_draw_arrays
     GL_ATI_texture_float
     GL_ARB_blend_func_extended
     GL_ARB_separate_shader_objects
     GL_ARB_compute_variable_group_size
     GL_MESA_pack_invert
     GL_ARB_clip_control
     GL_ARB_gpu_shader_int64
     GL_ARB_cull_distance
     GL_ARB_shader_storage_buffer_object
     GL_ARB_vertex_attrib_binding
     GL_KHR_robustness
     GL_ARB_texture_cube_map_array
     GL_AMD_conservative_depth
     GL_ARB_seamless_cube_map
     GL_EXT_texture_sRGB
     GL_INTEL_conservative_rasterization
     GL_ARB_draw_instanced
     GL_EXT_framebuffer_object
     GL_ARB_map_buffer_alignment
     GL_ARB_tessellation_shader
     GL_ARB_texture_stencil8
     GL_ARB_texture_gather
     GL_ARB_debug_output
     GL_NV_texture_barrier
     GL_ARB_shading_language_420pack
     GL_ARB_texture_buffer_object
     GL_EXT_texture_sRGB_decode
     GL_ARB_shader_group_vote
     GL_ARB_texture_float
     GL_ATI_blend_equation_separate
     GL_EXT_shader_samples_identical
     GL_MESA_framebuffer_flip_y
     GL_ARB_gpu_shader_fp64
     GL_AMD_performance_monitor
     GL_EXT_texture_array
     GL_ARB_seamless_cubemap_per_texture
     GL_INTEL_shader_atomic_float_minmax
     GL_ARB_texture_rgb10_a2ui
     GL_ARB_texture_view
     GL_ARB_shader_image_size
     GL_AMD_multi_draw_indirect
     GL_EXT_vertex_attrib_64bit
     GL_ARB_vertex_buffer_object
     GL_EXT_texture_snorm
     GL_ARB_explicit_uniform_location
     GL_ARB_instanced_arrays
     GL_ARB_texture_buffer_object_rgb32
     GL_ARB_spirv_extensions
     GL_ARB_derivative_control
     GL_ARB_fragment_coord_conventions
     GL_ARB_texture_rectangle
     GL_ARB_conditional_render_inverted
     GL_EXT_framebuffer_multisample
     GL_ARB_texture_compression_rgtc
     GL_ARB_internalformat_query
     GL_ARB_draw_buffers_blend
     GL_ARB_texture_swizzle
     GL_ARB_pipeline_statistics_query
     GL_ARB_shading_language_packing
     GL_AMD_gpu_shader_int64
     GL_ARB_timer_query
     GL_ARB_depth_buffer_float
     GL_ARB_compute_shader
     GL_ARB_transform_feedback_overflow_query
     GL_EXT_texture_swizzle
     GL_EXT_packed_float
     GL_ARB_internalformat_query2
     GL_NV_copy_image
     GL_EXT_texture_sRGB_R8
     GL_EXT_provoking_vertex
     GL_EXT_vertex_array_bgra
     GL_ARB_sampler_objects
     GL_ARB_shader_precision
     GL_ARB_post_depth_coverage
     GL_EXT_framebuffer_blit
     GL_AMD_shader_stencil_export
     GL_EXT_shader_framebuffer_fetch
     GL_EXT_transform_feedback
     GL_ARB_copy_image
     GL_ARB_occlusion_query2
     GL_ARB_texture_barrier
     GL_KHR_parallel_shader_compile
     GL_ARB_enhanced_layouts
     GL_ARB_shader_bit_encoding
     GL_EXT_shader_integer_mix
     GL_EXT_texture_filter_anisotropic
     GL_ARB_clear_texture
     GL_EXT_polygon_offset_clamp
     GL_KHR_blend_equation_advanced
     GL_ARB_half_float_vertex
     GL_ARB_depth_clamp
     GL_ARB_framebuffer_sRGB
     GL_ARB_gl_spirv
     GL_ARB_explicit_attrib_location
     GL_AMD_seamless_cubemap_per_texture
     GL_ARB_multi_bind
     GL_3DFX_texture_compression_FXT1
     GL_S3_s3tc
     GL_ARB_vertex_type_10f_11f_11f_rev
     GL_ARB_shader_image_load_store
     GL_ARB_get_texture_sub_image
     GL_AMD_pinned_memory

QPA OpenGL Detection Info
  supportsDesktopGL: true
  supportsOpenGLES: true
  isQtPreferOpenGLES: false
  Detected renderers:
    (Supported) Mesa Intel(R) HD Graphics 630 (KBL GT2) (OpenGL ES 3.2 Mesa
20.3.5)
    (Supported) Mesa Intel(R) HD Graphics 630 (KBL GT2) (4.6 (Core Profile)
Mesa 20.3.5)

useBufferInvalidation (config option): false


Hardware Information

  GPU Acceleration: auto
  Memory: 15741 Mb
  Number of Cores: 4
  Swap Location: /tmp
  Built for: sse2
  Base instruction set: fma3+avx2
  Supported instruction sets: fma3+avx2 avx2 fma3+avx avx fma4 fma3+sse4.2
sse4.2 sse4.1 ssse3 sse3 sse2

Current Settings

  Current Swap Location: /tmp
  Current Swap Location writable: true
  Undo Enabled: true
  Undo Stack Limit: 100
  Use OpenGL: true
  Use OpenGL Texture Buffer: true
  Disable Vector Optimizations: false
  Disable AVX Optimizations: false
  Canvas State: OPENGL_SUCCESS
  Autosave Interval: 300
  Use Backup Files: true
  Number of Backups Kept: 1
  Backup File Suffix: ~
  Backup Location: Same Folder as the File
  Backup Location writable: false
  Resource Location: /home/rbreu/.local/share/krita
  Use Win8 Pointer Input: false
  Use RightMiddleTabletButton Workaround: false
  Levels of Detail Enabled: true
  Use Zip64: false


Loaded Python Plugins
        export_scaled
        python_reference
        colorspace
        comics_project_management_tools
        documenttools
        exportlayers
        filtermanager
        lastdocumentsdocker
        mixer_slider_docker
        plugin_importer
        quick_settings_docker
        scripter
        tenbrushes
        tenscripts


Display Information
Number of screens: 1
        Screen: 0
                Name: eDP-1
                Depth: 24
                Scale: 1
                Physical DPI210.32
                Logical DPI192
                Physical Size: 309, 174
                Position: 0, 0
                Resolution in pixels: 2560x1440
                Manufacturer: AU Optronics
                Model: AUO1536
                Refresh Rate: 119.986
                Serial Number:

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to