From the other link you gave at http://permalink.gmane.org/gmane.science.nmr.relax.devel/6248, the scipy.linalg access to BLAS has the same timing as the C contiguous arrays passed into numpy.dot(). See http://docs.scipy.org/doc/numpy/reference/generated/numpy.ascontiguousarray.html for how to fix this in __init__().
Regards, Edward On 15 June 2014 14:59, Troels Emtekær Linnet <[email protected]> wrote: > Hi Ed. > > At the wiki, I added some references for faster dot: > http://wiki.nmr-relax.com/Numpy_linalg > > http://www.huyng.com/posts/faster-numpy-dot-product/ > > from scipy.linalg import fblas as FB > X = FB.dgemm(alpha=1., a=A, b=B, trans_b=True) > > > 2014-06-15 10:30 GMT+02:00 Edward d Auvergne > <[email protected]>: >> >> Follow-up Comment #199, task #7807 (project relax): >> >> >> The following python script, to be placed in the base relax directory, and >> the >> corresponding log file, demonstrate the speed differences of various dot >> product operations. This is to help make the numeric dispersion models >> faster. >> >> The script tests 3 different operations: >> >> 1) Sequential dot products (a = dot(b, c); a = dot(a, d)). >> 2) Chained dot products (a = b.dot(c).dot(d)). >> 3) Using the out argument to avoid memory allocation and garbage >> collection >> (dot(b, c, a); dot(a, d, a)). >> >> The timings are: >> >> 1) 3.71 s. >> 2) 4.05 s. >> 3) 1.99 s. >> >> As option 1) is the implementation used in the relax trunk, clearly option >> 3 >> has the potential to significantly speed up the models. >> >> >> (file #21021, file #21022) >> _______________________________________________________ >> >> Additional Item Attachment: >> >> File name: dot_speed.py Size:2 KB >> File name: dot_speed.log Size:0 KB >> >> >> _______________________________________________________ >> >> Reply to this item at: >> >> <http://gna.org/task/?7807> >> >> _______________________________________________ >> Message sent via/by Gna! >> http://gna.org/ >> > _______________________________________________ relax (http://www.nmr-relax.com) This is the relax-devel mailing list [email protected] To unsubscribe from this list, get a password reminder, or change your subscription options, visit the list information page at https://mail.gna.org/listinfo/relax-devel

