estimate minimum memory usage
ungarj opened this issue · comments
Joachim Ungar commented
We have at least some information to estimate how much memory the output array will roughly need:
def memory_estimate(bands=3, metatiling=1, pixelbuffer=0, dtype="uint8"):
tile_size = 256
metatile_size = tile_size * metatiling
# add pixelbuffer around metatile if defined
metatile_size = metatile_size + 2 * pixelbuffer
# calculate number of pixels
one_band_pixels = metatile_size ** 2
all_bands_pixels = bands * one_band_pixels
# footprint of one pixel as datatype
itemsize = np.dtype(dtype).itemsize
# total size in bytes
return all_bands_pixels * itemsize