Bug 423240 - Enabling OCIO makes Advanced Color selector extremely slow
Summary: Enabling OCIO makes Advanced Color selector extremely slow
Status: ASSIGNED
Alias: None
Product: krita
Classification: Applications
Component: Color Selectors (show other bugs)
Version: 4.3.0
Platform: Microsoft Windows Microsoft Windows
: NOR normal
Target Milestone: ---
Assignee: Dmitry Kazakov
URL:
Keywords: triaged
Depends on:
Blocks:
 
Reported: 2020-06-19 18:45 UTC by stephen
Modified: 2021-09-20 12:19 UTC (History)
4 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments
Color pick lag (1.50 MB, image/gif)
2020-06-19 21:45 UTC, stephen
Details

Note You need to log in before you can comment on or make changes to this bug.
Description stephen 2020-06-19 18:45:01 UTC
SUMMARY

The Advanced Color Selector performs slowly and gives stutters and lag during click and drag; the lag and stutter happen at any value or hue change while moving 
the cursor on the canvas or while shifting hue on the color wheel.

STEPS TO REPRODUCE

1. Make sure your Advanced Color Selector is active
2. Put lots of different colors on the canvas in a new blank document file.
3. With the color picker, click and drag on the canvas while making sure you never keep the same color selected.

OR : Simply click and drag on the color wheel while making sure the hue keeps shifting

OBSERVED RESULT :

The Color UI stutters and lags when :
CASE i  : your value or hue shift while dragging on the canvas;
CASE ii : your hue alone shifts while dragging on the color wheel.


EXPECTED RESULT : 
No lag or delay from the Color UI and Docker while performing these operations
with the Advanced Color Selector active.


SOFTWARE/OS VERSIONS 
Windows 10 1909(OS build 18363.900)

ADDITIONAL INFORMATION 

System specs :
Core i7-3610QM @2.30GHz
RAM : 12 GB DDR3
GPU : Nvidia GT 640M
Comment 1 wolthera 2020-06-19 19:11:45 UTC
Not getting this one on Linux, 4.3.1-alpha (git cbaa3e5) either... Is there anything specific about your system? Like, maybe there's some software maybe interfering?
Comment 2 stephen 2020-06-19 20:34:39 UTC
(In reply to wolthera from comment #1)
> Not getting this one on Linux, 4.3.1-alpha (git cbaa3e5) either... Is there
> anything specific about your system? Like, maybe there's some software maybe
> interfering?

Nope ! No program interfering at all.
Comment 3 wolthera 2020-06-19 21:10:34 UTC
can you make a video? Because the thing is that if we cannot reproduce it, we cannot fix it, so there must be something you're doing that we are not doing. This also counts for the slow layer operations bug report.
Comment 4 stephen 2020-06-19 21:28:57 UTC
(In reply to wolthera from comment #3)
> can you make a video? Because the thing is that if we cannot reproduce it,
> we cannot fix it, so there must be something you're doing that we are not
> doing. This also counts for the slow layer operations bug report.

Sure. I'll post a gif image of the issue. I'll record a video and post.
Just give me some minutes. In a moment.
Comment 5 stephen 2020-06-19 21:45:47 UTC
Created attachment 129533 [details]
Color pick lag

There is the color pick lag I was referring to.
Comment 6 Tiar 2020-07-31 16:52:14 UTC
For the Color Selector Tool (Color Picker), I don't see any lag in Krita 4.3.0 appimage. 

For the Advanced Color Selector (docker), I also don't see that much lag as @stephen recorded. There is some little lag on dragging inside the rectangle, but it's the same as in Krita 4.1.7.

Note: I was checking on Linux.

@stephen - are you sure you used the released version? There was some lag recently in some development versions, but it doesn't seem to be present in Krita 4.3.0. If yes, you're sure - then maybe this bug report needs to be checked by someone on Windows.
Comment 7 Ahab Greybeard 2020-08-02 05:16:26 UTC
I don't see this with the 4.3.0 appimage or the 4.3.0 portable .zip on Windows 10.
I also don't see it with the latest nightly builds on Linux or Windows 10.

There was the same description lag bug in the 4.3.0 prealphas in mid-April as reported here:
https://bugs.kde.org/show_bug.cgi?id=420159
That bug was fixed for an unknown reason.

HSV click-drag response is not affected by canvas graphics acceleration being enabled or disabled. (If you try toggling cga in 4.3.0, that has a separate canvas lock-up bug that has now been fixed.)

@stephen: Can you do Help -> Show system information for bug reports and post the full output here?
Comment 8 stephen 2020-08-02 23:15:21 UTC
(In reply to Ahab Greybeard from comment #7)
> I don't see this with the 4.3.0 appimage or the 4.3.0 portable .zip on
> Windows 10.
> I also don't see it with the latest nightly builds on Linux or Windows 10.
> 
> There was the same description lag bug in the 4.3.0 prealphas in mid-April
> as reported here:
> https://bugs.kde.org/show_bug.cgi?id=420159
> That bug was fixed for an unknown reason.
> 
> HSV click-drag response is not affected by canvas graphics acceleration
> being enabled or disabled. (If you try toggling cga in 4.3.0, that has a
> separate canvas lock-up bug that has now been fixed.)
> 
> @stephen: Can you do Help -> Show system information for bug reports and
> post the full output here?

I'm on Windows 10. The issue is still present from my side. Even with Krita 4.3.0

Here's the system info for the bug report :
Krita

 Version: 4.3.1-alpha (git 62566d1)
 Languages: en_US, en, en_US, en, en_US, en, en_US, en, en_US, en, en_US, en, en_US, en, en_US, en, en_US, en
 Hidpi: true

Qt

  Version (compiled): 5.12.8
  Version (loaded): 5.12.8

OS Information

  Build ABI: x86_64-little_endian-llp64
  Build CPU: x86_64
  CPU: x86_64
  Kernel Type: winnt
  Kernel Version: 10.0.18363
  Pretty Productname: Windows 10 (10.0)
  Product Type: windows
  Product Version: 10

OpenGL Info
 
  Vendor:  "Google Inc." 
  Renderer:  "ANGLE (NVIDIA GeForce GT 640M Direct3D11 vs_5_0 ps_5_0)" 
  Version:  "OpenGL ES 3.0 (ANGLE 2.1.0.57ea533f79a7)" 
  Shading language:  "OpenGL ES GLSL ES 3.00 (ANGLE 2.1.0.57ea533f79a7)" 
  Requested format:  QSurfaceFormat(version 3.0, options QFlags<QSurfaceFormat::FormatOption>(DeprecatedFunctions), 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 3.0, options QFlags<QSurfaceFormat::FormatOption>(), depthBufferSize 24, redBufferSize 8, greenBufferSize 8, blueBufferSize 8, alphaBufferSize 8, stencilBufferSize 8, samples 0, swapBehavior QSurfaceFormat::DefaultSwapBehavior, swapInterval 0, colorSpace QSurfaceFormat::DefaultColorSpace, profile  QSurfaceFormat::NoProfile) 
     Version: 3.0
     Supports deprecated functions false 
     is OpenGL ES: true 

QPA OpenGL Detection Info 
  supportsDesktopGL: true 
  supportsAngleD3D11: true 
  isQtPreferAngle: true 

Hardware Information

  GPU Acceleration: angle
  Memory: 12126 Mb
  Number of Cores: 4
  Swap Location: C:/Users/Yed/AppData/Local/Temp

Current Settings

  Current Swap Location: C:/Users/Yed/AppData/Local/Temp
  Current Swap Location writable: true
  Undo Enabled: true
  Undo Stack Limit: 400
  Use OpenGL: true
  Use OpenGL Texture Buffer: true
  Use AMD Vectorization Workaround: false
  Canvas State: OPENGL_SUCCESS
  Autosave Interval: 300
  Use Backup Files: false
  Number of Backups Kept: 1
  Backup File Suffix: ~
  Backup Location: Same Folder as the File
  Backup Location writable: false
  Use Win8 Pointer Input: false
  Use RightMiddleTabletButton Workaround: false
  Levels of Detail Enabled: true
  Use Zip64: false


Display Information
Number of screens: 1
	Screen: 0
		Name: \\.\DISPLAY1
		Depth: 32
		Scale: 1
		Resolution in pixels: 1600x900
		Manufacturer: 
		Model: 
		Refresh Rate: 60
Comment 9 Dmitry Kazakov 2020-08-30 12:02:07 UTC
Hi, Stephen!

Could you please check if you have any OCIO settings enabled? The only way how I can reproduce the bug is going to Settings->Dockers->LUT Management and enable OCIO support in "Internal" mode. Could you try disabling OCIO and recheck?

Could you also make and share two screenshots:

1) Settings->Configure Krita->Color Management->Display
2) Settings->Configure Krita->Color Selector Settings->Color Selector
Comment 10 stephen 2020-08-30 13:43:09 UTC
(In reply to Dmitry Kazakov from comment #9)
> Hi, Stephen!
> 
> Could you please check if you have any OCIO settings enabled? The only way
> how I can reproduce the bug is going to Settings->Dockers->LUT Management
> and enable OCIO support in "Internal" mode. Could you try disabling OCIO and
> recheck?
> 
> Could you also make and share two screenshots:
> 
> 1) Settings->Configure Krita->Color Management->Display
> 2) Settings->Configure Krita->Color Selector Settings->Color Selector

When I uncheck UseOpenColorIO, the advanced color selector operates better. But with the option checked, there are lags for all color update operations.
Changing "Internal" to "OCIO" didn't do anything. Neither did reverting back to "Internal" again. So right now, to avoid lags, we have to disable the "UseOpenColorIO" option.

For the required additional info.
Display in Color Management Settings: 
https://imgur.com/PHtHGsY

Color Selector in Color Selector Settings : 
https://imgur.com/PVGaEQQ