distributed array processing