bugPSPP - Bugs: bug #24726, scrolling lags/needs performance...

 
 

bug #24726: scrolling lags/needs performance profiling

Submitter:  -Deleted Account- <kiddo>
Submitted:  Sun 02 Nov 2008 01:01:23 PM UTC
   
 
Category:  Graphical User Interface Severity:  5 - Average
Status:  Fixed Assigned to:  jmd
Open/Closed:  Closed Release:  None
Effort:  0.00
* Mandatory Fields

Add a New Comment Rich Markup
   

Jump to the original submission

Fri 19 Dec 2008 06:52:58 PM UTC, comment #8: 

Indeed, much faster and without flickering now. However, this only works if you leave the window with small dimensions (such as the initial size).

Maximizing the window on my 1920x1200 desktop creates a noticeable lag when scrolling (not as much as before, but still). Perhaps there's something left to be investigated there?

-Deleted Account- <kiddo>
Mon 15 Dec 2008 10:51:53 AM UTC, comment #7: 

The latest git version should have fixed most of these problems.

John Darrington <jmd>
Group administrator
Tue 25 Nov 2008 09:40:27 PM UTC, comment #6: 


> hen clicking into any cell of the variable or data view, the column headers and rows all flicker 3-4 times. I am assuming this is exactly the same issue?


No. That's really a different issue.  That problem was fixed (two days ago) in the rewrite-sheet branch of the git repository.  It'll appear in the master branch when the time is right.

John Darrington <jmd>
Group administrator
Tue 25 Nov 2008 07:34:10 PM UTC, comment #5: 

when clicking into any cell of the variable or data view, the column headers and rows all flicker 3-4 times. I am assuming this is exactly the same issue?

-Deleted Account- <kiddo>
Tue 18 Nov 2008 02:14:11 AM UTC, comment #4: 

On second thoughts, this is in fact a seperate issue.  So I'm re-opening this bug.

There is indeed less than optimal behaviour when drawing the datasheet with large numbers of variables (though not for large numbers of cases).

The problem is that the widths of the variable columns in the data view is non-uniform.  So currently the implementation iterates all variables in order to find the pixel positions of the columns.
See the function g_sheet_column_start_pixel.

Clearly this is undesireable and a better solution is needed.


John Darrington <jmd>
Group administrator
Sat 08 Nov 2008 04:11:22 AM UTC, comment #3: 

Marking this as a duplicate of bug #21374 and closing this item.

John Darrington <jmd>
Group administrator
Sun 02 Nov 2008 11:46:31 PM UTC, comment #2: 

Thanks for your feedback.

The scrolling behaviour of the sheet certainly needs attention.  However, you may rest assurred that it's independent of the number of cases. (I've tried it with over 10^7).

There is currently an experimental version in the git repository which goes a long way to fixing this problem.  If you're interested in testing it for us, you can find it at
http://git.savannah.gnu.org/gitweb/?p=pspp.git;a=shortlog;h=refs/heads/rewrite-sheet

There are still some problems with it however (for instance it doesn't always redraw areas of screen damage).

John Darrington <jmd>
Group administrator
Sun 02 Nov 2008 01:10:56 PM UTC, comment #1: 

see http://jeff.ecchi.ca/public/pspp%20scrolling.ogv for a video demo of the problem. It doesn't lag as much as it does in reality, but oh well, that's a limitation of screencasts.

-Deleted Account- <kiddo>
Sun 02 Nov 2008 01:01:23 PM UTC, original submission:  

In 0.6.1, both the variable view and data view lag a lot when scrolling. Actually, you can scroll, let go of the touchpad scrollbar, and look at pspp keep scrolling for 10 seconds or so :) this is not the case with, say, gnumeric (or even OOo Calc).

If this happens on a small dataset (575 variables, 8 cases), I'm worried about what kind of performance problems would appear with large ones.

My non-developer guess is that the pspp gui must be doing unnecessary work, like repainting all the rows/columns on each scroll step, or something along those lines. At least, when I scroll, I noticed that it seems to scroll one line at a time, and things "flicker" (such as the column/row headers).

Maybe this could be profiled using sysprof/systat, but I lack the knowledge/skill to do that.

Some interesting profiling reference material, if you haven't seen them already:

http://ftp.belnet.be/mirrors/FOSDEM/2007/FOSDEM2007-ProfilingDesktopApplication.ogg

http://www.gnome.org/~federico/docs/2005-GNOME-Summit/html/index.html

http://www.gnome.org/~federico/docs/2006-GUADEC/how-much-faster/index.html

-Deleted Account- <kiddo>

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach Files:
   
   
Comment:
   

No files currently attached

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -email is unavailable- added by jmd (Posted a comment)
  • -email is unavailable- added by kiddo (Submitted the item)
  •  

    There are 0 votes so far. Votes easily highlight which items people would like to see resolved in priority, independently of the priority of the item set by tracker managers.

    Only logged-in users can vote.

     

    Follow 7 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2008-12-15 jmd StatusConfirmed Fixed
        Open/ClosedOpen Closed
    2008-11-18 jmd Open/ClosedClosed Open
    2008-11-18 jmd StatusDuplicate Confirmed
        Assigned toNone jmd
    2008-11-08 jmd StatusNone Duplicate
        Open/ClosedOpen Closed

    Back to the top

    Powered by Savane 3.15-e6e5.
    Corresponding source code