
These changes in the position of the elements in matrix A and B present each processing element, PE, a new pair of values to multiply. The elements of matrix A will move in left direction and the elements of matrix B will move in upward direction. Arrange the matrices A and B in such a way that every processor has a pair of elements to multiply. Processing element PE ij represents a ij and b ij. Matrices A and B have elements a ij and b ij respectively. We will design an algorithm to multiply two n × n arrays using n 2 processors in a particular amount of time. We have considered a 2D mesh network SIMD model having wraparound connections. A p-dimensional mesh network having kP nodes has a diameter of p(k–1).īisection width − Bisection width is the minimum number of edges needed to be removed from a network to divide the mesh network into two halves. Total number of nodes = (number of nodes in row) × (number of nodes in column)Ī mesh network can be evaluated using the following factors −ĭiameter − In a mesh network, the longest distance between two nodes is its diameter. Here, all the edges are parallel to the grid axis and all the adjacent nodes can communicate among themselves. Mesh NetworkĪ topology where a set of nodes form a p-dimensional grid is called a mesh topology. Mesh and hypercube have higher network connectivity, so they allow faster algorithm than other networks like ring network. Here, we will discuss the implementation of matrix multiplication on various communication networks like mesh and hypercube. Matrix multiplication is an important multiplication design in parallel computation. A matrix is a set of numerical and non-numerical data arranged in a fixed number of rows and column.
