bugPSPP - Bugs: bug #40065, Make GUI usable when working

 
 

bug #40065: Make GUI usable when working

Submitted by:  Michel Boaventura <michelboaventura>
Submitted on:  Thu 19 Sep 2013 05:13:55 AM UTC  
 
Category: Graphical User InterfaceSeverity: 1 - Wishlist
Status: NoneAssigned to: None
Open/Closed: OpenRelease: None
Effort: 0.00

Add a New Comment (Rich MarkupRich Markup):
   

You are not logged in

Please log in, so followups can be emailed to you.

 

Thu 26 Sep 2013 05:49:22 PM UTC, comment #2:

I'm attaching a patch for people who want to play with this idea.
It works only for the Descriptives command. When running descriptives on large datasets, the gui will remain active and there will be an indication of the number of cases processed in the status bar.

There are lots of issues associated with re-entrancy which this patch does not address. For example, if you try to run another procedure, whilst the first is still running, bad things will happen (will probably crash). Also, there will be no sensible datasheet display whilst running because during that time, no datasheet exists.

However people might be interested to play with this patch to see what is and is not possible.

(file #29230)

John Darrington <jmd>
Project Administrator
Thu 19 Sep 2013 05:36:21 AM UTC, comment #1:

This was also reported at bug #20823.

The main issue is, that we need some kind of concurrency. This means either:

  • Multi-threading;
  • Multi-processing;

or

  • Concurrency from the Glib main loop.

Whichever solution is chosen, it will be necessary to provide some kind of mutex on all the static objects we have. I started doing this some time ago. That is the purpose of the 'thread-aware' branch at http://git.savannah.gnu.org/cgit/pspp.git/commit/?h=thread-aware

I recall that Ben was rather cautious about integrating this - perhaps rightly so. But if this is going to be implemented I think this will be necessary.

Also one must bear in mind, that if this is done, then using the GUI to process huge files is always going to be slower since CPU cycles will be used to update the GUI.

John Darrington <jmd>
Project Administrator
Thu 19 Sep 2013 05:13:55 AM UTC, original submission:

I'm starting to work with PSPP with large files. The smallest one has 50,000,000 cases in a 3GB file. PSPP can handle it fine (specially compared with spss), but it freezes while my syntax is being executed.

It would be very nice if PSPP could not freeze the screen and even better if it shows the number (or proportion) of cases done.

I'm really willing to help code this feature if someone could direct me.

Michel Boaventura <michelboaventura>
Project Member

 

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

Attach File(s):
   
   
Comment:
   

 

Depends on the following items: None found

Items that depend on this one: None found

 

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

    Do you think this task is very important?
    If so, you can click here to add your encouragement to it.
    This task has 0 encouragements so far.

    Only logged-in users can vote.

     

    Please enter the title of George Orwell's famous dystopian book (it's a date):

     

     

    Follows 1 latest change.

    Date Changed By Updated Field Previous Value => Replaced By
    Thu 26 Sep 2013 05:49:22 PM UTCjmdAttached File-=>Added 0001-Experimental-patch-to-demonstrate-concurrency.patch, #29230

    Back to the top


    Powered by Savane 3.1-cleanup