sounds intriguing! will have a look at that TensorOperations.jl. the size of the array is
*julia> **size(m.EV)* *(2,4,3,3,2,17,2,9,29)* On 18 August 2014 22:27, Jutho <juthohaege...@gmail.com> wrote: > What are the dimensions (i.e. sizes) of these 9 dimensions? You might be > interested in trying the tensorcontract routine from TensorOperations.jl > and compare the method=:BLAS vs method=:native approach. Although I do > assume that for a specific case like this (where basically every dimension > is individually contracted with a matrix) there might be better approaches. > > > Op maandag 18 augustus 2014 22:35:25 UTC+2 schreef Florian Oswald: >> >> Hi! >> >> yes. I find that >> >> 37 % of time spent at line 26 >> 51 % of time spent at line 29 >> >> in the gist. >> >> line 26 is >> >> idx1 = idx9(is1,iz1,iy1,ip1,itau1,ia,ih,ij,age,p) >> >> >> >> line 29 is >> >> @inbounds tmp += m.vbar[idx1] * Gz[iz + p.nz * (iz1 + p.nz * (ij-1)-1)] * >> Gyp[iy + p.ny * ((ip-1) + p.np * ((iy1-1) + p.ny * ((ip1-1) + p.np * >> (ij-1)))) ] * Gs[is + p.ns * (is1-1)] * Gtau[itau1] >> >> >> >> >> >> >> >> >> On 18 August 2014 19:13, Kevin Squire <kevin....@gmail.com> wrote: >> >>> Have you run it through the profiler already? >>> >>> >>> On Monday, August 18, 2014, Florian Oswald <florian...@gmail.com> wrote: >>> >>>> Hi all, >>>> >>>> i'm trying to improve the performance of this function: >>>> >>>> https://gist.github.com/floswald/9e79f6f51c276becbd74 >>>> >>>> In a nutshell, I have got a high-dimensional array vbar (in this >>>> instance it is 9D), and I want to obtain another array EV (also 9D), by >>>> matrix-multiplying several dimensions of vbar with transition matrices - >>>> they are prefixed with "G..." in the function. The G's are square matrices, >>>> where row i has the probability of moving from state i to state j. (some of >>>> those matrices are actually 3D because they depend on an additional state, >>>> but that doesn't matter.) >>>> >>>> I devectorized it already but wanted to see whether anyone out there >>>> has a suggestion. >>>> >>>> thanks! >>>> florian >>>> >>> >>