Help / Release / J 6.02 / (+/%#)"r Improved

From J Wiki
Jump to navigation Jump to search


>> << Pri JfC LJ Phr Dic Voc !: Rel NuVoc wd Help Release



(+/%#)"r

Improved

initial writing: 2007-07-25
last updated: 2007-07-27


The monad (+/%#)"r has been made more efficient. The following benchmarks demonstrate the improvement.

dwide=: 5 2e5 ?@$ 0
dtall=: 2e5 5 ?@$ 0
dsq  =: 990 1100 ?@$ 0

swide=: (1e5 ?@$ 0) (<"1 ]1e5 2?@$ 5 2e9  )} 1$.5 2e9
stall=: (1e5 ?@$ 0) (<"1 ]1e5 2?@$ 2e9 5  )} 1$.2e9 5
ssq  =: (1e5 ?@$ 0) (<"1 ]1e5 2?@$ 2e8 3e8)} 1$.2e8 3e8

ts=: 6!:2 , 7!:2@]  NB. time and space
ts 'Expression'
Expression       J 6.02    J 6.01    Ratio
(+/%#)"1 dwide 0.00276342  1792 0.01219391  2099200  4.41  1171.43
(+/%#)"1 dtall 0.00493687  2098816 0.12038998  2099200  24.39  1.00
(+/%#)"1 dsq  0.00305743  9792 0.00628113  26432  2.05  2.70
(+/%#)"1 swide 0.00129642  134656 0.00675263  4590912  5.21  34.09
(+/%#)"1 stall 0.00962258  3279872 0.24598901  43612480  25.56  13.30
(+/%#)"1 ssq  0.00798939  3279808 0.24640704  43604352  30.84  13.29



>> << Pri JfC LJ Phr Dic Voc !: Rel NuVoc wd Help Release