See https://github.com/SimonDanisch/FixedSizeArrays.jl/issues/159
On Friday, October 7, 2016 at 8:10:56 AM UTC+2, Petr Hlavenka wrote: > > Hi, > With Julia 0.5 I'm little bit confused what is the best approach for high > speed array access. I'm writing a simulation where particles move in the > field interpolated from an irregular mesh of tetrahedrons in 3D. > So i basically have a *points* array of MyPoint (= 3xFloat64, stands for > x,y,z) and *elements *array of MyElement(= 4xUInt32, stands for indexes > to points forming a tetrahedron) and some lookup arrays. > I often access the points by direct indexing - defining own > getindex(::MyPoint, ::Integer) for the custom types, such as this example: > > points[elements[tetrahedron_id][vertex_id]][axis_ix] > > or in loops where i prefer treating the arrays as types such as > > for el in elements > point1 = el[1] > point2 = el[2] > r = (point1[1]+point2[1])/2 + (point1[2]+point2[2])/2 > end > > > or even calling specialized functions on MyElement type > > for el in elements > myfunc(el) > end > > I'm considering StaticArrays.jl and FixedSizeArrays to use for the > definition of MyPoint and MyElement, but I'm little bit confused what is > the actual difference between the two implementation. Could please someone > explain to me, what is the difference between this two packages? Is one of > them superseding the other one on 0.5+? What is the difference in memory > layout and performance consequences? > > Thank you very much. > Cheers > Petr > > > >