GTG

GTG is uber slow on startup (or when exiting Workview) when showing hundreds of tasks in "All tasks"

Bug #587307 reported by Jeff Fortin Tam
20
This bug affects 3 people
Affects Status Importance Assigned to Milestone
GTG
Invalid
Critical
Izidor Matušov

Bug Description

GTG 0.2.4 or GTG 0.3.0~ubuntu108. My Atom CPU gets eaten alive by GTG when clicking "All tasks", for roughly 10-20 seconds.

Related branches

Revision history for this message
Jeff Fortin Tam (kiddo) wrote :

Actually, I'm not sure this is still relevant with the bzr trunk version (which seems really fast, but seems to have really weird task counting bugs).

Revision history for this message
Lionel Dricot (ploum-deactivatedaccount) wrote :

This is believed to be fixed in trunk.

If you can reproduce this with trunk, please reopen the bug and give us a way to reproduce it.

Changed in gtg:
assignee: nobody → Lionel Dricot (ploum)
milestone: none → 0.3
status: New → Fix Committed
Changed in gtg:
milestone: 0.3 → 0.2.9
Changed in gtg:
importance: Undecided → High
Jeff Fortin Tam (kiddo)
Changed in gtg:
status: Fix Committed → New
Revision history for this message
Jeff Fortin Tam (kiddo) wrote :

Not fixed as of bzr revision 985. I don't have a netbook anymore, but a 5 years old thinkpad with a Pentium M on it (a vast improvement over an Atom CPU).

GTG 0.2.4 loads/populates my 150 tasks in ~5-10 seconds
GTG bzr 985 needs a minute to do the same thing, with 100% cpu usage.

cProfile and gprof2dot graph attached.

summary: - gtg is uber slow when showing ~100 tasks in "all tasks" on a netbook
+ gtg is uber slow on startup when showing ~150 tasks in "all tasks"
Revision history for this message
Jeff Fortin Tam (kiddo) wrote : Re: gtg is uber slow on startup when showing ~150 tasks in "all tasks"
Revision history for this message
Izidor Matušov (izidor) wrote :

I have a few tips how to improve performance on startup... I'll try to do that

Changed in gtg:
assignee: Lionel Dricot (ploum) → Izidor Matušov (izidor)
Izidor Matušov (izidor)
Changed in gtg:
status: New → Confirmed
Revision history for this message
Izidor Matušov (izidor) wrote :

After consulting with ploum, we decided to deal with performance issues during 0.3 release cycle -- which will be about debugging backends support and preformance issues.

Changed in gtg:
milestone: 0.2.9 → 0.3
Izidor Matušov (izidor)
Changed in gtg:
assignee: Izidor Matušov (izidor) → nobody
Revision history for this message
Lionel Dricot (ploum-deactivatedaccount) wrote :

Can someone try rev 1091 and 1092 to see if, like me, there's a huge perf regression in that revision?

Revision history for this message
pfrenssen (pieter-frenssen) wrote :

I have around 250 tasks. I'm testing with liblarch rev c88ff146cda0 (20120324)

r1091: 1:14 minutes
r1092: 1:26 minutes
r1149: 1:59 minutes

It seems to have gotten worse. I am getting many errors with the latest revision (r1149):

2012-04-03 03:15:35,926 - ERROR - CellRendererTags:on_render:146 - Can't load icon 'gtg-tags-all'
2012-04-03 03:15:35,927 - ERROR - CellRendererTags:on_render:146 - Can't load icon 'gtg-tags-none'

Revision history for this message
pfrenssen (pieter-frenssen) wrote :

The errors I am getting are just harmless warnings. I have tested the revision that introduced them and it does not impact the loading time. Ref. http://bazaar.launchpad.net/~gtg/gtg/trunk/revision/1117

Test results for this revision and the preceding one:

r1116: 1:19 minutes
r1117: 1:20 minutes

Revision history for this message
Izidor Matušov (izidor) wrote :

I am playing with installation script and break manual instalation by python setup.py install. I wil fix it this week.

I did some profiling and find potential to show fully loaded GTG under 5 seconds: https://lists.launchpad.net/gtg-contributors/msg00781.html

It is my personal priority to solve this bug over the next few weeks.

Changed in gtg:
assignee: nobody → Izidor Matušov (izidor)
importance: High → Critical
Revision history for this message
Ricardo Graça (devius) wrote :

Anyone wishing to test the performance can use the following command:

./scripts/debug.sh -s bryce

This is available with the source code and can be run in the trunk directory after checking out the files from the public repository.

Izidor Matušov (izidor)
Changed in gtg:
status: Confirmed → In Progress
Revision history for this message
Izidor Matušov (izidor) wrote :

Fix committed at rev 1177.

Changed in gtg:
status: In Progress → Fix Committed
Enki1122 (xerotonin)
Changed in gtg:
status: Fix Committed → Fix Released
Revision history for this message
Izidor Matušov (izidor) wrote :

Enki1122> Fix Released is a state reserved for a situation when an official GTG release is available.

Changed in gtg:
status: Fix Released → Fix Committed
Changed in gtg:
status: Fix Committed → Fix Released
Revision history for this message
Jeff Fortin Tam (kiddo) wrote :

Unfortunately reopening this (thought I did, years ago). Even with 0.3.1 I'm facing abysmal performance, even on a Core2 Quad or Core i7 processor, it eats the CPU (only one core) for 10 seconds if you have ~500 tasks.

Rhythmbox can show 13 000 rows instantly, and Evolution can also show tens of thousands of rows instantly even if they are threaded in a treeview, so why can't GTG? Switching Workview on/off with 500 tasks should take no more than 50 miliseconds, normally.

Possible areas to investigate:

* Are you updating the model all the time for each item while leaving it connected to the (tree)view? Have you tried just duplicating the model, working on the duplicate, then swapping it into place to the view when you're done?
* Have you profiled this to see where the time & CPU is actually spent? See also http://jeff.ecchi.ca/blog/?s=profiling&submit=Search

Changed in gtg:
status: Fix Released → New
summary: - gtg is uber slow on startup when showing ~150 tasks in "all tasks"
+ GTG is uber slow on startup (or when exiting Workview) when showing
+ hundreds of tasks in "All tasks"
Revision history for this message
Izidor Matušov (izidor) wrote :

Closing as invalid, because GTG is moving its github issue tracker and the bug is already reported over there https://github.com/getting-things-gnome/gtg/issues/109

Changed in gtg:
status: New → Invalid
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

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