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
>>>>
>>>
>>

Reply via email to