Set the chunksize used by LAMA for partitioning the data array.

This must be smaller than an upper limit determined by the free memory factor, which is the fraction of memory kept free as a temporary workspace, otherwise an error is raised. If called with None as the argument then the chunksize is set to its upper limit. If called without any arguments the existing chunksize is returned.

The upper limit to the chunksize is given by:

\[upper\_chunksize = \dfrac{f \cdot total\_memory}{mpi\_size \cdot w_1 + w_2}\]

where \(f\) is the free memory factor and \(w_1\) and \(w_2\) the workspace factors 1 and 2 respectively.

arg: float or Constant, optional

The chunksize in bytes.


The value prior to the change, or the current value if no new value was specified.