Values are fold improvements: >1 means ncreduce is faster, <1 means ncreduce is slower Columns are different array sizes: (4x4) (40x4) (4000x10) (10x4000) (4000x10000) Rows are different types of reduce operation: A.f() A.T.f() A.f(0) A.f(1) A.T.f(1) A[2].f() A[:,2].f() For SUM function [[ 3.8070922 3.74078624 3.18315868 3.21160784 2.43980108] [ 4.46617647 4.22613065 8.31738401 6.8606588 29.21819473] [ 1.9447132 1.56371814 0.96617167 3.01338318 7.0270556 ] [ 2.51067616 4.4812749 6.82775021 2.81078355 2.02944134] [ 1.91545392 1.62806468 0.87334081 2.54212652 0.80367664] [ 3.6557377 3.52655539 3.45639535 3.09458466 3.09918836] [ 3.20726783 2.93624557 1.0432128 3.20680628 0.96305311]] For MEAN function [[ 4.53997379 4.33751425 3.18691456 3.21325964 2.61187721] [ 5.09466667 4.86712486 8.09895611 6.66878963 29.56070697] [ 1.32862454 1.2232241 0.95682217 2.77428247 6.59373701] [ 1.38306992 2.07929176 5.6042247 2.67118025 2.01389827] [ 1.32216749 1.24022472 0.8609297 2.38601915 0.79781743] [ 4.26244953 4.21212121 4.28808864 3.22779923 3.19200338] [ 4.05635649 3.68317972 1.08496276 4.00253807 0.95483616]] For STD function [[ 16.37931034 13.23200859 8.515398 8.6650662 5.56770624] [ 17.59516616 13.92785794 11.48111037 10.94399828 16.72880933] [ 7.96362619 4.69929338 2.06533419 2.63442178 5.35333711] [ 12.23589744 12.1507772 8.82073033 8.74585517 6.89534047] [ 7.9735658 4.66921665 1.54624704 2.49588909 1.30503195] [ 17.3400936 17.64123377 17.10280374 5.49334051 4.91767663] [ 14.07474227 10.96748768 1.73907847 13.80691299 1.08550626]] For VAR function [[ 12.75496689 11.19303797 8.23840394 8.17942839 5.35515979] [ 14.72340426 11.67340426 11.47882782 11.10354571 16.79689987] [ 7.43418014 4.3738514 2.07330643 2.68918206 5.09448361] [ 11.42946429 13.17880795 9.98134987 8.36491556 6.79879305] [ 7.52822581 4.28857407 1.4730624 2.47868726 1.1964753 ] [ 14.93135725 14.64387917 14.28 5.2311021 4.79074167] [ 12.18278146 9.37636544 1.65813694 11.40481928 1.04396634]] For MAX function [[ 4.18282548 4.1835206 3.064325 3.09957884 1.89579732] [ 5.3807267 5.09299191 8.16320492 6.81480951 23.32648022] [ 2.22292994 1.53729977 0.82438672 1.95009491 6.05179257] [ 2.95664467 4.09146341 3.55795579 2.05772538 1.74708854] [ 2.35276753 1.66998507 0.86066282 1.75172327 0.80780005] [ 4.53484603 4.39833333 3.88140556 3.10858712 3.08567761] [ 4.31647399 3.50316857 1.21125174 3.87866109 0.93919081]] For MIN function [[ 5.12647059 4.29441624 3.03089161 3.05712249 1.89781197] [ 5.23816794 4.79036458 8.18441573 6.75257879 23.33387201] [ 2.20617111 1.57129757 0.86588154 2.0558663 6.3874678 ] [ 2.96841155 3.84391192 3.35497735 1.99594036 1.74332781] [ 2.25244073 1.69904857 0.87264242 1.82947976 0.80815663] [ 4.62801932 4.39569536 4.34477124 3.12006903 3.10487051] [ 3.97965116 3.51935081 1.16092389 4.00438596 0.93541891]] For ALL function [[ 2.79002467e-02 3.76257310e+00 9.28888889e+01 8.84859813e+01 8.42846792e+04] [ 4.99675325e+00 5.28160000e+00 1.31449298e+02 1.89387255e+02 5.50127171e+05] [ 2.30509745e+00 1.61616675e+00 3.98208860e-01 2.52603138e+00 2.41908320e+00] [ 2.82739726e+00 4.85934820e+00 3.36824142e+01 5.78263158e+01 1.46416294e+03] [ 1.95994914e+00 1.75441501e+00 4.47726973e-01 2.20169301e+00 9.43527633e-01] [ 4.18080000e+00 4.11092715e+00 4.09602649e+00 1.30212072e+01 2.61726974e+01] [ 3.84461538e+00 3.96411856e+00 1.29984496e+01 3.94307692e+00 5.45761689e+01]] For ANY function [[ 4.54672897e+00 4.97651007e+00 9.48595944e+01 9.28051948e+01 8.83522646e+04] [ 5.02138158e+00 5.54304636e+00 1.40057190e+02 1.87542130e+02 5.78053539e+05] [ 2.42564910e+00 1.70693277e+00 4.13649990e-01 2.52723749e+00 2.52861281e+00] [ 2.97480620e+00 5.02946429e+00 3.39985881e+01 5.69674115e+01 1.50428346e+03] [ 2.29548872e+00 1.81257078e+00 4.52254796e-01 2.20091677e+00 9.46904281e-01] [ 4.29111842e+00 4.16582064e+00 4.13087248e+00 1.33412162e+01 2.89243697e+01] [ 3.91051805e+00 3.96214511e+00 1.41828299e+01 3.93322734e+00 6.09200000e+01]] python profile.py 10948.30s user 625.08s system 99% cpu 3:13:06.33 total