From: John D. <jb_...@bt...> - 2014-03-14 21:46:33
|
Hi Alan Thanks for your comprehensive reply, did you see my second posting regarding the freeze occurring when window events occur? I'm tending to think it is a window event issue in the wingcc code. I did monitor window resources during my program run and freeze, memory usage didn't appear to be a problem. I will digest your email and do some further diagnosis as you suggest. I'm using Windows only because I have to at the moment. I intend to migrate to a Unix platform, which I am more familiar with, as soon as possible. Kind regards John Sent from my iPhone > On 14 Mar 2014, at 21:33, "Alan W. Irwin" <ir...@be...> wrote: > >> On 2014-03-14 20:21-0000 John Duffy wrote: >> >> Hi >> >> I have the following pseudo code which work well until it freezes... >> >> plsdev("wingcc"); >> plspage(0, 0, 1600, 800, 0, 0); >> plspause(0); >> plinit(); >> >> for (...) { >> plenv(); // set new x & y max and min parameters >> plline(); // data to plot >> } >> >> plend(); >> >> Like I say, it works well until it freezes after a few hundred iterations of displaying data. I would appreciate any help in pointers where to look for problems, my code or within the "wingcc" driver. When the code freezes, Windows reports the plotting window as not responding. > > Hi John: > > My guess is you are encountering some sort of memory management issue > (heap corruption) or memory leak in the wingcc code or in the PLplot > core library that is triggered by all your iterations. > > My bet is on a memory management issue for the combination of > wingcc and the general PLplot -np option that you are using. My > impression is that combination does not work as well as it should. For > example, although results for the wingcc device normally display well > for me on the Wine platform, they only show "transparent" results > (just the frame for the window with everything else leaking through > from the display below) if the -np PLplot option is used. Of course, > this strange behaviour might just be the result of a Wine bug, but the > other alternative is some memory management issue with how -np is > implemented for the wingcc device driver that is creating a wide > variety of peculiar results on various platforms. > > To distinguish whether the problem is in wingcc + the -np option or in > the PLplot core, what happens if you try the equivalent for the svg > device? (The -np option is ignored in that case since svg is a > file-oriented device. However, use the command line options > > -fam -fflen 3 > > so that each of your plot pages [generated by plenv] will be written > to a separate file rather than just the first page written to one file > with the rest of the pages dropped). I also suggest you keep the > number of iterations small until you get an idea of the disk space > consumed by all the different svg page files you are going to generate > by a large number of iterations. > > If you do have any trouble with the svg case could you simplify the > example as much as possible while still demonstrating the issue, and > then send me that simplified code so I can try it for myself? I would > be happy to run it here on Linux under valgrind to check for any > memory management or memory leak issues. Unfortunately, I cannot do > such a check for wingcc since wingcc is Windows only and valgrind is > Unix only. > > Alan > __________________________ > Alan W. Irwin > > Astronomical research affiliation with Department of Physics and Astronomy, > University of Victoria (astrowww.phys.uvic.ca). > > Programming affiliations with the FreeEOS equation-of-state > implementation for stellar interiors (freeeos.sf.net); the Time > Ephemerides project (timeephem.sf.net); PLplot scientific plotting > software package (plplot.sf.net); the libLASi project > (unifont.org/lasi); the Loads of Linux Links project (loll.sf.net); > and the Linux Brochure Project (lbproject.sf.net). > __________________________ > > Linux-powered Science > __________________________ |