I'm currently trying to optimize a piece of code I've written (at present 
it takes around 85 hours to finish, so there's some way to go...)
and have hence checked out the Fast Numeric Computation 
<http://julialang.org/blog/2013/09/fast-numeric/> post on the Julia blog. 
One issue that was new to me as a former Matlab
user was the importance of the order of calculations (row vs. column order) 
when working with large matrices.

I was wondering how this applies to higher dimensional arrays. In my 
problem, I am working on an Array{Float64,5}, the dimensions 
of which are around [12, 11, 10, 1000, 40]. Due to the nature of my 
problem, I have to work through this backwards on the last dimension, 
from 40 to 1, but for each of the Array{Float64,4}'s [12, 11, 10, 1200, i] 
I could work through the elements in any order.

Would it be preferable to loop over the "first" dimension first, or the 
largest dimension first, or do something else entirely?


Reply via email to