Source: https://www2.cs.uh.edu/~gabriel/courses/cosc6385_s11/CA_13_VectorProcessors.pdf