octave:1> hosts = ["127.0.0.1"; "127.0.0.1"]; octave:2> sockets = connect (hosts); octave:3> # only current process: octave:3> tic; a = rand (500, 300, 100); t(1) = toc; b = (sin (a) + cos (a)) .* (log (sin (a) - cos (a))) .^ 2; t(2) = toc t = 0.34770 3.86631 octave:4> tic; a = rand (500, 300, 100); t(1) = toc; b = (sin (a) + cos (a)) .* (log (sin (a) - cos (a))) .^ 2; t(2) = toc t = 0.34666 3.90547 octave:5> tic; a = rand (500, 300, 100); t(1) = toc; b = (sin (a) + cos (a)) .* (log (sin (a) - cos (a))) .^ 2; t(2) = toc t = 0.34684 3.89278 octave:6> # only slave process: octave:6> reval ("tic; a = rand (500, 300, 100); t(1) = toc; b = (sin (a) + cos (a)) .* (log (sin (a) - cos (a))) .^ 2; t(2) = toc; send (t, sockets(1, :))", sockets(2, :)); octave:7> t2 = recv (sockets(2, :)) t2 = 0.34386 3.84460 octave:8> reval ("tic; a = rand (500, 300, 100); t(1) = toc; b = (sin (a) + cos (a)) .* (log (sin (a) - cos (a))) .^ 2; t(2) = toc; send (t, sockets(1, :))", sockets(2, :)); octave:9> t2 = recv (sockets(2, :)) t2 = 0.34196 3.87165 octave:10> reval ("tic; a = rand (500, 300, 100); t(1) = toc; b = (sin (a) + cos (a)) .* (log (sin (a) - cos (a))) .^ 2; t(2) = toc; send (t, sockets(1, :))", sockets(2, :)); octave:11> t2 = recv (sockets(2, :)) t2 = 0.33942 3.86087 octave:12> # both processes together octave:12> reval ("tic; a = rand (500, 300, 100); t(1) = toc; b = (sin (a) + cos (a)) .* (log (sin (a) - cos (a))) .^ 2; t(2) = toc; send (t, sockets(1, :))", sockets(2, :)); tic; a = rand (500, 300, 100); t1(1) = toc; b = (sin (a) + cos (a)) .* (log (sin (a) - cos (a))) .^ 2; t1(2) = toc t1 = 0.35082 4.01196 octave:13> t2 = recv (sockets(2, :)) t2 = 0.34491 3.99605 octave:14> reval ("tic; a = rand (500, 300, 100); t(1) = toc; b = (sin (a) + cos (a)) .* (log (sin (a) - cos (a))) .^ 2; t(2) = toc; send (t, sockets(1, :))", sockets(2, :)); tic; a = rand (500, 300, 100); t1(1) = toc; b = (sin (a) + cos (a)) .* (log (sin (a) - cos (a))) .^ 2; t1(2) = toc t1 = 0.35159 4.00315 octave:15> t2 = recv (sockets(2, :)) t2 = 0.34697 4.01153 octave:16> reval ("tic; a = rand (500, 300, 100); t(1) = toc; b = (sin (a) + cos (a)) .* (log (sin (a) - cos (a))) .^ 2; t(2) = toc; send (t, sockets(1, :))", sockets(2, :)); tic; a = rand (500, 300, 100); t1(1) = toc; b = (sin (a) + cos (a)) .* (log (sin (a) - cos (a))) .^ 2; t1(2) = toc t1 = 0.35196 4.00479 octave:17> t2 = recv (sockets(2, :)) t2 = 0.34731 4.01496 octave:18> # only current process, double array size octave:18> tic; a = rand (500, 300, 200); t(1) = toc; b = (sin (a) + cos (a)) .* (log (sin (a) - cos (a))) .^ 2; t(2) = toc t = 0.69251 7.74978 octave:19> tic; a = rand (500, 300, 200); t(1) = toc; b = (sin (a) + cos (a)) .* (log (sin (a) - cos (a))) .^ 2; t(2) = toc t = 0.69830 7.81378 octave:20> tic; a = rand (500, 300, 200); t(1) = toc; b = (sin (a) + cos (a)) .* (log (sin (a) - cos (a))) .^ 2; t(2) = toc t = 0.69782 7.83261 octave:21>