Boost logo

Boost :

Subject: Re: [boost] RFC: runtime-flexible arrays
From: Joel Falcou (joel.falcou_at_[hidden])
Date: 2012-02-16 13:17:26


On 02/16/2012 06:40 PM, Larry Evans wrote:
> Although it is probably slower if the array us unrotated; if rotation
> is needed, as in array_dyn.diff_pde.cpp, then it may be faster since,
> using something like nt2 or multi_array would, AFAICT, require copying
> the array to a new storage order. Petros (see the
> match=multi=array+pdes above) has somehow solved the problem; however
> I don't know how. Petros? OTOH, maybe you have some ideas of how the
> rotated axes problem can be solved with nt2 and used to solve the pde
> examples in array_dyn.diff_pde.cpp. -regards, Larry

storage order adaptation never trigger copy in NT2, it changes how the
for loop nest is generated around the computation unless you do :

a = as_< storage_order_stuff>(b)

, where the copy is ofc explicit.

NT2 core primitive is a loop nest generator on which we have some sort
of control from the user land.
Currently we dont support storage order of arbitrary complexity but
storage order could be defined
as a permutation of the dimensions.


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk