Follow-up Comment #12, task #7807 (project relax): With the current implementation, the speed of a global analysis for 100 spins is speeded up by a factor X2. The unit tests though fail! 1000 iterations 100 spins 3 sfrq ('sfrq: ', 600000000.0, 'number of cpmg frq', 15, array([ 2., 6., 10., 14., 18., 22., 26., 30., 34., 38., 42., 46., 50., 54., 58.])) ('sfrq: ', 800000000.0, 'number of cpmg frq', 20, array([ 2., 6., 10., 14., 18., 22., 26., 30., 34., 38., 42., 46., 50., 54., 58., 62., 66., 70., 74., 78.])) ('sfrq: ', 900000000.0, 'number of cpmg frq', 22, array([ 2., 6., 10., 14., 18., 22., 26., 30., 34., 38., 42., 46., 50., 54., 58., 62., 66., 70., 74., 78., 82., 86.])) ('chi2 cluster:', 0.0) TRUNK single spin ncalls tottime percall cumtime percall filename:lineno(function) 1 0.000 0.000 0.556 0.556 <string>:1(<module>) 1 0.001 0.001 0.556 0.556 pf:418(single) 1000 0.002 0.000 0.548 0.001 pf:404(calc) 1000 0.007 0.000 0.546 0.001 relax_disp.py:908(func_CR72_full) 1000 0.052 0.000 0.533 0.001 relax_disp.py:456(calc_CR72_chi2) 3003 0.380 0.000 0.422 0.000 cr72.py:100(r2eff_CR72) 3000 0.041 0.000 0.056 0.000 chi2.py:32(chi2) 100 spins 1 0.000 0.000 54.478 54.478 <string>:1(<module>) 1 0.002 0.002 54.478 54.478 pf:440(cluster) 1000 0.004 0.000 54.396 0.054 pf:404(calc) 1000 0.011 0.000 54.392 0.054 relax_disp.py:908(func_CR72_full) 1000 5.304 0.005 54.366 0.054 relax_disp.py:456(calc_CR72_chi2) 300300 38.733 0.000 43.016 0.000 cr72.py:100(r2eff_CR72) 300000 4.190 0.000 5.704 0.000 chi2.py:32(chi2) 600300 0.700 0.000 3.029 0.000 fromnumeric.py:1379(sum) 600300 1.931 0.000 1.931 0.000 {method 'sum' of 'numpy.ndarray' objects} 300300 0.267 0.000 1.463 0.000 fromnumeric.py:1774(amax) 300300 0.238 0.000 1.305 0.000 fromnumeric.py:1836(amin) 300300 1.196 0.000 1.196 0.000 {method 'max' of 'numpy.ndarray' objects} 300300 1.067 0.000 1.067 0.000 {method 'min' of 'numpy.ndarray' objects} NOW -------- single spin ncalls tottime percall cumtime percall filename:lineno(function) 1 0.000 0.000 0.591 0.591 <string>:1(<module>) 1 0.001 0.001 0.591 0.591 pf:418(single) 1000 0.002 0.000 0.586 0.001 pf:404(calc) 1000 0.008 0.000 0.584 0.001 relax_disp.py:971(func_CR72_full) 1000 0.141 0.000 0.570 0.001 relax_disp.py:494(calc_CR72_chi2) 1003 0.139 0.000 0.186 0.000 cr72.py:101(r2eff_CR72) 17029 0.184 0.000 0.184 0.000 {numpy.core.multiarray.array} 3000 0.042 0.000 0.057 0.000 chi2.py:32(chi2) 1003 0.030 0.000 0.047 0.000 numeric.py:1862(allclose) 100 spins ncalls tottime percall cumtime percall filename:lineno(function) 1 0.000 0.000 38.563 38.563 <string>:1(<module>) 1 0.002 0.002 38.563 38.563 pf:440(cluster) 1000 0.004 0.000 38.461 0.038 pf:404(calc) 1000 0.012 0.000 38.457 0.038 relax_disp.py:971(func_CR72_full) 1000 12.907 0.013 38.429 0.038 relax_disp.py:494(calc_CR72_chi2) 1504108 18.221 0.000 18.221 0.000 {numpy.core.multiarray.array} 300000 4.072 0.000 5.526 0.000 chi2.py:32(chi2) 1300 1.290 0.001 1.467 0.001 cr72.py:101(r2eff_CR72) 300000 0.343 0.000 1.454 0.000 fromnumeric.py:1379(sum) 300000 0.933 0.000 0.933 0.000 {method 'sum' of 'numpy.ndarray' objects} 504818 0.372 0.000 0.372 0.000 {range} 300000 0.179 0.000 0.179 0.000 {isinstance} 1300 0.134 0.000 0.178 0.000 numeric.py:1862(allclose) _______________________________________________________ Reply to this item at: <http://gna.org/task/?7807> _______________________________________________ Message sent via/by Gna! http://gna.org/