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 <[email protected]> wrote: > Have you run it through the profiler already? > > > On Monday, August 18, 2014, Florian Oswald <[email protected]> > 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 >> >
