add precomputation when all vertices are active, use mapped memory to transfer reduction results back to host
adding second method of doing scatter / activation - much faster for low activation levels