[GNC] Scroll progressively slower towards end of large table

Eric Olsen eric at ericolsen.us
Wed Nov 15 02:33:29 EST 2023


My wife has been using GnuCash for years, and a couple years ago she tried
to Open SubAccounts and a single scroll-wheel action would take a few
seconds.
Her computer info:
CPU: I7 (pretty sure it's a 2nd Gen)
RAM: Probably 8GB
Hard Drive: OS (incl GnuCash install) - SSD;
    Data (where the GnuCash Datafile is) - 7200 RPM HDD
OS: Windows 7
GnuCash: v3.11

She recently asked me to take a look at it, so I copied the data files to
my computer and I noticed the same behavior albeit less intense on my
beefier hardware. Instead of ~3 seconds mine responded after ~1 second.
My computer info:
CPU: I7-10700 (10th Gen)
RAM: 32GB
Hard Drive: OS (incl GnuCash install) - M.2 NVMe
    Data (GnuCash Datafile) - M.2 NVMe (separate from OS drive)
OS: Windows 11
GnuCash: v5.4

I noticed also that if I scroll to the top of the table, scrolling is very
responsive; as I scroll down the delay gets progressively worse. I also
noticed that the general UI was also less responsive to the same degree
scrolling was less responsive (so if I was at the top of the large table
the UI was also very responsive, if I was at the bottom and would try to
open a menu it would after a second flash a blue underline, but never
actually display a menu).

The original datafile she is using is in XML format. I saved a new file "as
SQLite" but it didn't result in any noticeable improvement.

I monitored performance, and noticed when I opened subaccounts the memory
would jump from ~130MB to ~260MB. When I would scroll around the bottom the
CPU would climb up to ~13%, and when I would scroll around the top the CPU
would climb to ~7%, but Disk (and network) would remain at 0%. When
scrolling around the bottom Memory would increase another ~16MB, when
scrolling around the top Memory would increase ~16MB as well, but quickly
drop back down between each scroll action.

Thanks,
Eric


More information about the gnucash-user mailing list