Also, I'm pretty sure I tried with all optimizations turned off.

On Wed, Jan 15, 2014 at 8:45 AM, Thomas Costigliola <[email protected]>wrote:

> Off the top of my head g000i.ijs is one. There are others, when I get some
> time I will retry with your suggestion and post the results.
>
>
> On Wed, Jan 15, 2014 at 8:19 AM, bill lam <[email protected]> wrote:
>
>> I didn't test. Which tests failed with gcc 4.8? I guess it is the loop
>> vectorize optimization that may break ar.c, you may try disable it with a
>> CFLAG switch.
>>
>> 15.01.2014, в 20:38, Thomas Costigliola <[email protected]> написал(а):
>>
>> > Hi Bill, did you run the test suite after compiling?  I have been having
>> > problems with gcc 4.8. I haven't been able to get a passing libj, I have
>> > tried a few distros' gcc with different optimizations. It seems to
>> always
>> > be overoptimizing some things. Gcc 4.7 doesn't have the issue.
>> >
>> > On Jan 14, 2014 10:11 PM, "bill lam" <[email protected]> wrote:
>> >>
>> >> I get similar result for Fibo that linux needed about 41s and this is
>> >> strange.  I then recompiled the libj.so using gcc 4.8 -O3 switch,
>> >> and it droped to 14s, a little bit faster than wine's 17s.
>> >>
>> >> I guess it depends on compiler and optimization level.
>> >>
>> >> Вт, 14 янв 2014, Ben Gorte - CITG писал(а):
>> >>> With pleasure. Here are two examples. The first is from my work (image
>> > analysis). It computes the good old Haralick texture on a 5000x5000
>> aerial
>> > image. The adverb Filter uses ;. to activate TextSub at every 25th pixel
>> > (1M times).
>> >>>
>> >>> ~$ ~/j701/bin/jconsole
>> >>>   load '/home/ben/j701-user/temp/pgm.ijs'
>> >>>
>> >>>   CM =. 4 : '((# /.)~ y) (<"1 ~.y) } (x,x)$0'"0 2
>> >>>   Norm =: 3 : 'y%+/,y'
>> >>>   Contrast=: 3 : '+/, y * *:(<:#y)%~-/~i.#y'"2
>> >>>   Con =: 3 : 'Contrast Norm (+|:) y'"2             NB. for
>> > non-normalized non-symmetrical cm
>> >>>
>> >>>   TextSub =: 4 : 0                NB. texture in a sub-image
>> >>> co =. |:,.(_1&}."1 ,: 1&}."1) y
>> >>> cm =. x CM co
>> >>> Con cm
>> >>> )
>> >>>
>> >>>   im =: <.(%16) * pgmread '/home/ben/data/Danbi/redsub.pgm'
>> >>> NB. Filter applies 12&F to 7x7 subimages of <.im%16, at every 5th line
>> > and column.
>> >>>   6!:2 'conperpix =. <.1000*12 TextSub Filter (5 5,:7 7) <.im%16'
>> >>> 87.5534
>> >>>
>> >>> ~$ wine /media/Windows/Documents\ and\
>> > Settings/bgorte/j701/bin/jconsole.exe
>> >>> ....
>> >>>   6!:2 'conperpix =. <.1000*12 TextSub Filter (5 5,:7 7) <.im%16'
>> >>> 67.088
>> >>>
>> >>> It's a 30% speed difference.
>> >>>
>> >>> Here's a more drastic example. I guess it spends most of its time
>> doing
>> > extended precision things. The Fibo routine is activated recursively
>> just
>> > 20 times or so. The result has over 200000 digits.
>> >>>
>> >>> ~$ ~/j701/bin/jconsole
>> >>>   Fibo =: 3 : 0"0    NB. Compute large Fibonacci numbers like Fibo
>> > 1000000
>> >>> if. y<5 do.              NB. returns (F y-1),F y
>> >>>   ((,~<:)y){0 1 1 2 3x
>> >>> elseif. 0=2|y do.
>> >>>   'b c'=.Fibo -:y
>> >>>   a=.c-b
>> >>>   d=.c+b
>> >>>   p=.b*a+c
>> >>>   q=.c*b+d
>> >>>   (q-p),q
>> >>> elseif. do.
>> >>>   'b c'=.Fibo -:>:y
>> >>>   a=.c-b
>> >>>   d=.c+b
>> >>>   p=.b*a+c
>> >>>   q=.c*b+d
>> >>>   p,q-p
>> >>> end.
>> >>> )
>> >>>      6!:2 'z=.{:Fibo 1000000'
>> >>> 41.3298
>> >>>
>> >>>
>> >>> ~$ wine /media/Windows/Documents\ and\
>> > Settings/bgorte/j701/bin/jconsole.exe
>> >>> ....
>> >>>       6!:2 'z=.{:Fibo 1000000'
>> >>> 15.5417
>> >>>
>> >>> #":z           NB.
>> >>> 208988
>> >>>
>> >>> ________________________________________
>> >>> From: [email protected] [
>> > [email protected]] on behalf of Michael Dykman [
>> > [email protected]]
>> >>> Sent: Tuesday, January 14, 2014 17:02
>> >>> To: J Programming
>> >>> Subject: Re: [Jprogramming] On benchmarking results from J programming
>> > styles
>> >>>
>> >>> As the timings that you are reporting are very tiny values, we should
>> >>> pause for a moment and consider a basic difference between those OSs.
>> >>> Under windows, the finest-grained application timer available tick
>> >>> 18/s; on linux that number is 1024/s. I suggest that you try some
>> >>> longer-running verbs if you expect a fair comparison.
>> >>>
>> >>> On Tue, Jan 14, 2014 at 6:11 AM, Ben Gorte - CITG
>> >>> <[email protected]> wrote:
>> >>>> Speaking about J, performance and Linux, is it true that Windows is
>> > significantly faster? Or is there something wrong with my installation?
>> > Also when runnning windows J under wine on my linux PC I get a better
>> > performance than with native linux J:
>> >>>>
>> >>>> NB. Native Linux
>> >>>>   JVERSION
>> >>>> Engine: j701/2011-01-10/11:25
>> >>>> Library: 7.01.087
>> >>>> Platform: Linux 32
>> >>>> Installer: j701a_linux32.sh
>> >>>> InstallPath: /home/ben/j701
>> >>>>   time'locs=:nudge"1 locs'
>> >>>> 1.43086e_5
>> >>>>   time'locs=:pfn"1 locs'
>> >>>> 7.41384e_6
>> >>>>   time'locs=:(pfn f.)"1 locs'
>> >>>> 3.77003e_6
>> >>>>   time'locs=:pfns"1 locs'
>> >>>> 3.7135e_5
>> >>>>
>> >>>> NB. wine + Windows J
>> >>>> JVERSION
>> >>>> Engine: j701/2011-01-10/11:25
>> >>>> Library: 7.01.040
>> >>>> Platform: Win 32
>> >>>> Installer: j701a_win.exe
>> >>>> InstallPath: z:/media/windows/documents and settings/bgorte/j701
>> >>>>   time'locs=:nudge"1 locs'
>> >>>> 1.09025e_5
>> >>>>   time'locs=:pfn"1 locs'
>> >>>> 5.56416e_6
>> >>>>   time'locs=:(pfn f.)"1 locs'
>> >>>> 2.88706e_6
>> >>>>   time'locs=:pfns"1 locs'
>> >>>> 2.77585e_5
>> >>>>
>> >>>> Regards,
>> >>>> Ben
>> >>>> ________________________________________
>> >>>> From: [email protected] [
>> > [email protected]] on behalf of Raul Miller [
>> > [email protected]]
>> >>>> Sent: Monday, January 13, 2014 06:44
>> >>>> To: Programming forum
>> >>>> Subject: Re: [Jprogramming] On benchmarking results from J
>> > programming styles
>> >>>>
>> >>>> That sounds about right.
>> >>>>
>> >>>> The big caution I would place on interpreting these results is: "This
>> >>>> won't necessarily apply for games implemented in J for Linux, where I
>> >>>> intend to rely on the SDL and byte-per-pixel graphics layouts.
>> >>>> Nonetheless, I retain the logic here, since it's representative of a
>> >>>> real-world design decision which directly influences performance on
>> >>>> the slower Kestrel architecture."
>> >>>>
>> >>>> If J is to perform well when applied in suboptimal fashion we'll need
>> >>>> some way of representing the code which strips out a lot of the
>> >>>> functionality (type checks, size checks, rank handling, maybe even
>> >>>> overflow handling?), at least for the time-critical routines. (As
>> much
>> >>>> as possible, hoisting redundant operations out of primitives used in
>> >>>> bottleneck loops.)
>> >>>>
>> >>>> Thanks,
>> >>>>
>> >>>> --
>> >>>> Raul
>> >>>>
>> >>>>
>> >>>> On Sun, Jan 12, 2014 at 11:59 PM, William Tanksley, Jr
>> >>>> <[email protected]> wrote:
>> >>>>> A friend of mine wrote the following paper describing his attempt to
>> >>>>> characterize the differences between a few different styles of
>> >>>>> implementing the same code in J a few different ways -- explicit,
>> >>>>> implicit, and a few variations. He also baselined against a Forth
>> >>>>> implementation.
>> >>>>>
>> >>>>> I found his writeup very interesting. What do you think?
>> >>>>>
>> >>>>> http://sam-falvo.github.io/2014/01/05/subroutine-performance-in-j/
>> >>>>>
>> >>>>> -Wm
>> >>>>>
>> > ----------------------------------------------------------------------
>> >>>>> For information about J forums see
>> > http://www.jsoftware.com/forums.htm
>> >>>>
>> ----------------------------------------------------------------------
>> >>>> For information about J forums see
>> http://www.jsoftware.com/forums.htm
>> >>>>
>> ----------------------------------------------------------------------
>> >>>> For information about J forums see
>> http://www.jsoftware.com/forums.htm
>> >>>
>> >>>
>> >>>
>> >>> --
>> >>> - michael dykman
>> >>> - [email protected]
>> >>>
>> >>> May the Source be with you.
>> >>> ----------------------------------------------------------------------
>> >>> 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
>> >> gpg --keyserver subkeys.pgp.net --armor --export 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
>> ----------------------------------------------------------------------
>> For information about J forums see http://www.jsoftware.com/forums.htm
>>
>
>
----------------------------------------------------------------------
For information about J forums see http://www.jsoftware.com/forums.htm

Reply via email to