Do it a little bit different way (more J-like!)
a=. ? 1000 1000 $ 10
   d=. ? 1000 $ 10
 6!:2 ' a +/ .* d '
0.0141761

Ask your friend, how long does it take with matlab a^3 ?
 mp=. +/ .*
   6!:2 ' a mp a mp a'
11.2945



> I told my friend about how nice J was.  Am I wrong?
>
> He said, how fast can you multiply a 1000x1000 matrix times
> a 1x1000 vector to get a 1x1000 resultant vector.
>
> his MatLab code ran in about .6 seconds.
>
> His code follows..
>
> matrix = randn(312,256);
> vector = randn(256,1);
>
> tic
> for i = 1:1000
>     output = matrix*vector;
> end
> toc
>
> I wrote my code which runs in about 2.5 minutes
>
> here is my code:
>
> #!/home/efittery/bin/jconsole
>
> A =: 256 312 $ 1+ i. 312 * 256x
> B =: 312   1 $ 1+ i. 312x
>
> jumbo =: monad define
>     for. i. y do.
>         yVector =: A +/ .* B
>     end.
>     )
>
> jumbo 1000
>
>
>
> ----------------------------------------------------------------------
> 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