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
