PCBNew: Stuttering move of component @4k resolution

Bug #1843065 reported by DDuck007
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
KiCad
Expired
Medium

Bug Description

Moving a component in PCBNew (act. master-build) is stuttering at 4k resolution (3840x2160). Using 1920x1080 it moves smoothly.
In Version 5.1.4 there is a smooth movement also at 4k resolution.

- Windows 10 64bit - 1903
- Graphics: Nvidia GTX1080TI, latest driver

Kicad-version:

Application: KiCad
Version: (5.99.0-76-g3bd38ec24), release build
Libraries:
    wxWidgets 3.0.4
    libcurl/7.61.1 OpenSSL/1.1.1 (WinSSL) zlib/1.2.11 brotli/1.0.6 libidn2/2.0.5 libpsl/0.21.0 (+libidn2/2.1.1) nghttp2/1.34.0
Platform: Windows 8 (build 9200), 64-bit edition, 64 bit, Little endian, wxMSW
Build Info:
    wxWidgets: 3.0.4 (wchar_t,wx containers,compatible with 2.8)
    Boost: 1.68.0
    OpenCASCADE Community Edition: 6.9.1
    Curl: 7.61.1
    Compiler: GCC 8.2.0 with C++ ABI 1013

Build settings:
    KICAD_SCRIPTING=ON
    KICAD_SCRIPTING_MODULES=ON
    KICAD_SCRIPTING_PYTHON3=OFF
    KICAD_SCRIPTING_WXPYTHON=ON
    KICAD_SCRIPTING_WXPYTHON_PHOENIX=OFF
    KICAD_SCRIPTING_ACTION_MENU=ON
    BUILD_GITHUB_PLUGIN=ON
    KICAD_USE_OCE=ON
    KICAD_USE_OCC=OFF
    KICAD_SPICE=ON

Tags: pcbnew
tags: added: pcbnew
Revision history for this message
Patrik Bachan (xorly) wrote :

Hi, I might have similar problem. In my case, when I move component in PCBnew, it is stuttering when there is also eeschema window opened and schematic itself is more complex. When I try to move component which comes from some simple hierarchical schematic, stuttering seems to be gone or at least minimal. Closing eeschema removes problem.

Can you "solve" that component stuttering during move by closing eeschema too?

Revision history for this message
DDuck007 (dduck007.01) wrote :

Hi,
there is no difference if EESchema is closed or open - what resolution do you have?

Revision history for this message
Patrik Bachan (xorly) wrote :

2560x1440, so it seems like a different bug.

Revision history for this message
Michael Kavanagh (michaelkavanagh) wrote :

Is it possible you could upload the project/board to help with testing?

Changed in kicad:
status: New → Invalid
status: Invalid → Incomplete
Revision history for this message
Seth Hillbrand (sethh) wrote :

Do you have Supersampling x4 enabled in your anti-alias settings?

Revision history for this message
DDuck007 (dduck007.01) wrote :

I have tested all items in anti-aliasing settings without any difference regarding stuttering while moving part. It is also present if I select standard-graphics.

The testboard attached and all of the 10 other tested boards show the effect with actual master but not with 5.1.4.

Revision history for this message
DDuck007 (dduck007.01) wrote :

additional info:
Selecting a wire and moving with key "m" the movement is also stuttering.
Selecting the same wire with "d" or "g" (pull) the wire can be pulled over the whole board with very fluent moving.

Revision history for this message
DDuck007 (dduck007.01) wrote :

It seems that Bug #1843177 and this bug are nevertheless somehow connected. My "stuttering" could not be solved by closing EESchema like it was at #1843177, but fix at 44a1cf9f made the movement more fluent. It is not like in 5.1.4, but much better.
What I just found out: The more pins are part has, the more "stuttering" can be seen.

Revision history for this message
Michael Kavanagh (michaelkavanagh) wrote :

You have some complex zones mimicking teardrops. Does the performance improve if you delete these?

Revision history for this message
DDuck007 (dduck007.01) wrote :

Removing teardrops does not change the behaviour - the only thing that improved it was the bugfix in 44a1cf9f.

Revision history for this message
Jeff Young (jeyjey) wrote :

@DDuck007, I pushed another fix which *might* improve performance a bit (although it's specific to rectangular pads).

Let me know if it helps any....

Revision history for this message
KiCad Janitor (kicad-janitor) wrote :

Fixed in revision 8dd8740fa367d633198ecd965b7abd79d200468f
https://git.launchpad.net/kicad/patch/?id=8dd8740fa367d633198ecd965b7abd79d200468f

Changed in kicad:
status: Incomplete → Fix Committed
assignee: nobody → Jeff Young (jeyjey)
Jeff Young (jeyjey)
Changed in kicad:
status: Fix Committed → Triaged
milestone: none → 6.0.0-rc1
Revision history for this message
DDuck007 (dduck007.01) wrote :

Thank you :-) - I will try the nightly build tomorrow

Changed in kicad:
importance: Undecided → Medium
Revision history for this message
DDuck007 (dduck007.01) wrote :

Just saw there was already a new version yesterday afternoon (8dd8740fa). I tested it, but unfortunately it did not improve the situation. Compared to 5.1.4 there is still an unusual stuttering while moving components.
Recent master also mentions performance improve - will compile it and test after work ...

Revision history for this message
DDuck007 (dduck007.01) wrote :

I built and tested version b5742d09 - no difference.
Fix at 44a1cf9f was the only significant improvement.
I am quite sure: Increasing pins of a part and higher number of parts on a PCB make stuttering worse (everything tested against 5.1.4 where all combinations work fluent).

Revision history for this message
Jeff Young (jeyjey) wrote :

@DDuck007, when you're dragging the footprint, do the ratsnest lines get update as you drag?

Revision history for this message
DDuck007 (dduck007.01) wrote :

@jeyjey: Yes the lines get updated - both in master and in 5.1.4

Revision history for this message
Jeff Young (jeyjey) wrote :

@DDuck007, can you try setting the ratsnest lines to straight instead of curved?

Revision history for this message
DDuck007 (dduck007.01) wrote :

@jeyjey, I did not have curved ratsnest lines active - now I tried both => unfortunately no difference

Revision history for this message
Seth Hillbrand (sethh) wrote :

@DDuck007- Does the stutter happen in the following cases (please use no antialiasing for now):

1) 3840x2160, pcbnew window full screen
2) 3840x2160, pcbnew window 1/4 screen size
3) 1920x1080, pcbnew window full screen
4) 1920x1080, pcbnew window 1/4 screen size

Revision history for this message
DDuck007 (dduck007.01) wrote :

@sethh - Just tested (without antialiasing):

1) 3840x2160, pcbnew window full screen
2) 3840x2160, pcbnew window 1/4 screen size
==> no difference between full screen and 1/4: stuttering like reported

3) 1920x1080, pcbnew window full screen
4) 1920x1080, pcbnew window 1/4 screen size
==> also no difference between full screen and 1/4: much better, but directly compared to 5.1.4 still a little bit stuttering (5.1.4 moves in one flow ...)

Revision history for this message
Seth Hillbrand (sethh) wrote :

@DDuck007- Can you look at the video in lp:1833834 and let us know if your movement stutter looks the same?

Revision history for this message
DDuck007 (dduck007.01) wrote :

@sethh: Yes it look like at the beginning of the video when the part was selected and moved.
Moving a wire and/or via does not show the movement stutter.

Revision history for this message
DDuck007 (dduck007.01) wrote :

Please find attached a video showing "move component" both in master and 5.1.4.

Revision history for this message
Ian McInerney (imcinerney) wrote :

@Dduck007, does it behave this way if the ratsnest is completely hidden?

Revision history for this message
DDuck007 (dduck007.01) wrote :

Yes, it also behaves this way if ratsnest is completely disabled.

Revision history for this message
KiCad Janitor (kicad-janitor) wrote :

KiCad bug tracker has moved to Gitlab. This report is now available here: https://gitlab.com/kicad/code/kicad/-/issues/1817

Changed in kicad:
status: Triaged → Expired
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.