Actually the libglcmds is an exact replicate of j script coded in C syntax,
the performance is gained by eliminating interpretive overhead. The surface
plot draws 100000 polygons, gdi or cairo have no problem with it but most
of the time are spent on looping code and the setting up cd calls.

A general suggestion is to avoid gl2 commands which based on gdi drawing 
from win 3.1 era. It is not possible to draw modern look graphics such as
gradient or alpha blending. The recommedation of avoiding glcmds in
particular came from Chris who should be the most experienced person of
using glcmds.  libglcmds is even worse because it is a non-native J
component.

But performance-wise speaking libglcmds is the king. Even when gl2 is
decommitted completely, there should still be a need to code some parts 
in C or other language for critical sections.

Втр, 15 Мар 2011, Ric Tikkanz писал(а):
> Will try on Windows again tonight. Meantime it is working well in
> 64-bit Linux - very nice to have responsive plots again!
> 
> Bill, you state "However you are not encouraged to use that glcmds
> dll/so for writing new codes." Can you clarify a bit more what you
> mean and why we shouldn't use the dll/so? Are you suggesting that over
> time it may be possible to get similar performance out of the raw
> cairo scripts?
> 
> On Tue, Mar 15, 2011 at 3:04 AM, bill lam <[email protected]> wrote:
> > I got no real window, only tested on kvm and wine. What did the cder'' tell?
> > What is the value of LIBGLCMDS_jglcanvas_? Will it be a permission
> > probllem?
> >
> > Втр, 15 Мар 2011, Ric Tikkanz писал(а):
> >> Sounds great, but doesn't run for me on 32-bit Win7 :(
> >>
> >>    load 'plot'
> >>    plot i. 3 4
> >> |domain error: cd
> >> |       (LIBGLCMDS,' Glcmds_gdi32 > + i x *x *x *c *x x')&cd
> >> HDC;xpar;ipar;(utf8 PROFONT_jgl2_);(,y);#y
> >>    callback run error: expose_event_3_
> >> |domain error: cd
> >> |       (LIBGLCMDS,' Glcmds_gdi32 > + i x *x *x *c *x x')&cd
> >> HDC;xpar;ipar;(utf8 PROFONT_jgl2_);(,y);#y
> >>
> >>    JVERSION
> >> Engine: j701/2011-01-10/11:25
> >> Library: 7.01.048
> >> Platform: Win 32
> >> Installer: j701a_win.exe
> >> InstallPath: c:/program files/j701
> >>    load 'pacman'
> >>    'search' jpkgv 'plot gtk gl2 gdi'
> >> ┌──────────────────┬──────┬──────┬────────────┐
> >> │api/gdi32         │1.0.0 │1.0.0 │gdi32 api   │
> >> │api/gdiplus       │1.0.0 │1.0.0 │gdiplus api │
> >> │api/gtkinclude    │1.0.0 │1.0.0 │GTK C Header│
> >> │convert/gtkdocdict│1.0.0 │1.0.0 │gtkdocdict  │
> >> │convert/gtkdoctag │1.0.0 │1.0.0 │gtkdoctag   │
> >> │demos/gtk         │1.0.16│1.0.16│gtk demos   │
> >> │demos/plot        │1.0.3 │1.0.3 │Plot demos  │
> >> │docs/gtk          │      │1.0.2 │GTK API     │
> >> │graphics/gl2      │1.0.7 │1.0.7 │gl2         │
> >> │graphics/plot     │1.0.9 │1.0.9 │Plot        │
> >> │gui/gtk           │1.0.61│1.0.61│GTK API     │
> >> │ide/gtk           │1.0.69│1.0.69│GTK IDE     │
> >> └──────────────────┴──────┴──────┴────────────┘
> >>
> >>
> >> On Tue, Mar 15, 2011 at 12:04 AM, bill lam <[email protected]> wrote:
> >> > I added glcmds shared library for linux cairo and windows gdi32, the 
> >> > speed
> >> > can now catch up with J602 wd. The suface plot timing,
> >> > windows(under kvm) first run  0.921s   subsequent runs  0.078
> >> > linux              first run  0.393s   subsequent runs  0.303
> >> >
> >> > not sure why windows can become much faster in the 2nd run.
> >> >
> >> > Please upgrade those graphics packages. However you are not encouraged to
> >> > use that glcmds dll/so for writing new codes.
> >> >
> >> > Срд, 09 Мар 2011, bill lam писал(а):
> >> >> If the 0.11377 second is timed on Mac + jwd, then it suggested there is
> >> >> room of improvement.
> >> >>
> >> >> Втр, 08 Мар 2011, Joey K Tuttle писал(а):
> >> >> > At 8:38 PM -0800 11/03/08, Joey K Tuttle wrote:
> >> >> > >
> >> >> > >I can now to the sine plot, it takes noticeably longer (more than 3
> >> >> > >times as long) than j602 producing the plot.pdf file. The window is
> >> >> > >VERY slow to resize (using 100% of one of the 4 available cores) -
> >> >> > >much longer than "zoom" on the pdf plot and making the window bigger.
> >> >> > >
> >> >> >
> >> >> > When I said "more than 3 times" as long - I hadn't measured it. To do 
> >> >> > -
> >> >> >
> >> >> >      'surface' plot +/~ 1 o. i: 6j99
> >> >> >
> >> >> > Takes 56 times as much cpu time in j701 as in j602 -  6.4631 seconds
> >> >> > versus 0.11377 seconds...  This doesn't include all the mouse
> >> >> > clicking to free the jconsole session again.
> >> >> >
> >> >> > But at least I can plot something and get my session back (although I
> >> >> > get to "live with" the orphan process...).
> >> >> > ----------------------------------------------------------------------
> >> >> > For information about J forums see http://www.jsoftware.com/forums.htm
> >> >>
> >> >> --
> >> >> regards,
> >> >> ====================================================
> >> >> GPG key 1024D/4434BAB3 2008-08-24
> >> >> gpg --keyserver subkeys.pgp.net --recv-keys 4434BAB3
> >> >
> >> > --
> >> > regards,
> >> > ====================================================
> >> > GPG key 1024D/4434BAB3 2008-08-24
> >> > gpg --keyserver subkeys.pgp.net --recv-keys 4434BAB3
> >> > ----------------------------------------------------------------------
> >> > For information about J forums see http://www.jsoftware.com/forums.htm
> >> ----------------------------------------------------------------------
> >> For information about J forums see http://www.jsoftware.com/forums.htm
> >
> > --
> > regards,
> > ====================================================
> > GPG key 1024D/4434BAB3 2008-08-24
> > gpg --keyserver subkeys.pgp.net --recv-keys 4434BAB3
> > ----------------------------------------------------------------------
> > For information about J forums see http://www.jsoftware.com/forums.htm
> ----------------------------------------------------------------------
> For information about J forums see http://www.jsoftware.com/forums.htm

-- 
regards,
====================================================
GPG key 1024D/4434BAB3 2008-08-24
gpg --keyserver subkeys.pgp.net --recv-keys 4434BAB3
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to