Optimize the codes so that each processor has a subset of the rows and local multiplication uses Breeze routine