So if I understand this correctly, the reason the diagonal solution mentioned in class wasn't too great was because when we're at the corners, a lot of the cores will be idling since there are fewer cells to perform work on. The Gauss-Seidel method apparently allows us to compute the cells differently and also more efficiently, but if we didn't have knowledge of linear algebra, is there another way to improve the efficiency of this program?
@totofufu I think without domain knowledge (details on Gauss-Seidel in this case), we can't achieve better performance, as indicated by the last bullet point in this slide.
I think someone should try and write the code for the diagonal solution on the previous slide. See my challenge there.