On 2016-11-15 14:59+0100 Laurent Berger wrote:

> Hi Alan,
>
> I haven't got qt installed.
> My results looks like yours results :
>
> lb@mp12-lb:~/plplot.git/examples/c++$ time ./x01 -dev wxwidgets -np
> PLplot library version: 5.11.1
> Fontconfig warning: "/etc/fonts/conf.d/65-droid-sans-fonts.conf", line 103: 
> Having multiple values in <test> isn't supported and may not work as expected
> Fontconfig warning: "/etc/fonts/conf.d/65-droid-sans-fonts.conf", line 138: 
> Having multiple values in <test> isn't supported and may not work as expected
> Fontconfig warning: "/etc/fonts/conf.d/65-droid-sans-fonts.conf", line 103: 
> Having multiple values in <test> isn't supported and may not work as expected
> Fontconfig warning: "/etc/fonts/conf.d/65-droid-sans-fonts.conf", line 138: 
> Having multiple values in <test> isn't supported and may not work as expected
>
> real    0m0.407s
> user    0m0.108s
> sys    0m0.016s
> lb@mp12-lb:~/plplot.git/examples/c++$ time ./x01 -dev wxwidgets -np
> PLplot library version: 5.11.1
> Fontconfig warning: "/etc/fonts/conf.d/65-droid-sans-fonts.conf", line 103: 
> Having multiple values in <test> isn't supported and may not work as expected
> Fontconfig warning: "/etc/fonts/conf.d/65-droid-sans-fonts.conf", line 138: 
> Having multiple values in <test> isn't supported and may not work as expected
> Fontconfig warning: "/etc/fonts/conf.d/65-droid-sans-fonts.conf", line 103: 
> Having multiple values in <test> isn't supported and may not work as expected
> Fontconfig warning: "/etc/fonts/conf.d/65-droid-sans-fonts.conf", line 138: 
> Having multiple values in <test> isn't supported and may not work as expected
>
> real    0m10.997s
> user    0m0.064s
> sys    0m0.040s
> lb@mp12-lb:~/plplot.git/examples/c++$ time ./x01 -dev xwin -np
> PLplot library version: 5.11.1
>
> real    0m0.122s
> user    0m0.056s
> sys    0m0.020s
> lb@mp12-lb:~/plplot.git/examples/c++$ time ./x01 -dev xwin -np
> PLplot library version: 5.11.1
>
> real    0m0.122s
> user    0m0.060s
> sys    0m0.016s
> lb@mp12-lb:~/plplot.git/examples/c++$ time ./x01 -dev xcairo -np
> PLplot library version: 5.11.1
> Fontconfig warning: "/etc/fonts/conf.d/65-droid-sans-fonts.conf", line 103: 
> Having multiple values in <test> isn't supported and may not work as expected
> Fontconfig warning: "/etc/fonts/conf.d/65-droid-sans-fonts.conf", line 138: 
> Having multiple values in <test> isn't supported and may not work as expected
>
> real    0m0.125s
> user    0m0.088s
> sys    0m0.016s
> lb@mp12-lb:~/plplot.git/examples/c++$ time ./x01 -dev xcairo -np
> PLplot library version: 5.11.1
> Fontconfig warning: "/etc/fonts/conf.d/65-droid-sans-fonts.conf", line 103: 
> Having multiple values in <test> isn't supported and may not work as expected
> Fontconfig warning: "/etc/fonts/conf.d/65-droid-sans-fonts.conf", line 138: 
> Having multiple values in <test> isn't supported and may not work as expected
>
> real    0m0.128s
> user    0m0.084s
> sys    0m0.020s
> lb@mp12-lb:~/plplot.git/examples/c++$

Hi Laurent:

Thanks very much for the above report.

Your timing results verify mine and show that -dev wxwidgets sometimes
has very poor "real" timing results even though the actual cpu times
indicated by the sum of "user" + "sys" are quite fast and consistent.

For this case

> real    0m10.997s
> user    0m0.064s
> sys    0m0.040s

the sum of user + sys is 0.104 seconds so that means for this test the
cpu was idle for 10.893 seconds out of the 10.997 seconds or 99.05 per
cent of the time which is equivalent to two (!) orders of magnitude
slowdown.  Since your results and mine confirm the problem for a wide
range of Linux kernel versions, my working hypothesis is these
excessive idle times/slowdowns are due to the inefficient way that
Linux kernel IPC is being used to implement the necessary two-way
communication between -dev wxwidgets and the wxPLviewer application on
Linux.

Gaining two orders of magnitude in speed is certainly an attractive
goal for the wxwidgets device/wxPLviewer combination so I am tempted
to immediately start reviewing the Linux kernel IPC use between -dev
wxwidgets and wxPLviewer.  However, my current knowledge of Linux
kernel IPC is small, and I have many other PLplot issues on my plate
at the moment so I will have to delay this for quite a while.  Thus,
there is an opportunity for someone else to contribute substantially
here if they have some knowledge about the most efficient way to use
Linux kernel IPC or want to learn more about that interesting topic.

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
__________________________

------------------------------------------------------------------------------
_______________________________________________
Plplot-devel mailing list
Plplot-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/plplot-devel

Reply via email to