Matrix computation and multiplication, Computer Networking

Assignment Help:

In the following section, we shall discuss the algorithms for solving the matrix multiplication difficulty using the parallel models.

Matrix Multiplication Problem

Let there be two matrices, M1 and M2 of sizes a x b and b x c respectively. The product of

M1 x M2 is a matrix O of size a x c.

The values of elements stores in the matrix O are according to the given formulae:

 Oij = Summation x of (M1ix * M2xj) x=1 to b, where 1

Keep in mind, for multiplying a matrix M1 with another matrix M2, the number of columns in M1 must equivalent number of rows in M2. The well identified matrix multiplication algorithm on sequential computers takes O(n3) running time. For multiplication of two 2x2, matrices, the algorithm needs 8 multiplication operations and 4 addition operations. Another algorithm known as Strassen algorithm has been devised which needs 7 multiplication operations and 14 addition and subtraction operations. Thus, the time complexity of Strassen's algorithm is O(n2.81). The basic sequential algorithm is given below:

Algorithm: Matrix Multiplication

Input// Two Matrices M1 and M2

For I=1 to n

For j=1 to n

{

Oij = 0;

For k=1 to n

Oij= Oij + M1ik * M2kj

End For

}

End For

End For

Now, let us change the above discussed matrix multiplication algorithm according to parallel computation models.


Related Discussions:- Matrix computation and multiplication

C, #questionWrite a program to find the area under the curve y = f(x) betwe...

#questionWrite a program to find the area under the curve y = f(x) between x = a and x = b, integrate y = f(x) between the limits of a and b. The area under a curve between two poi

Explain point-to-point protocol in ccna, An industry standard suite of prot...

An industry standard suite of protocols for the use of point-to-point links to transport multiprotocol datagrams.

Master construct program in parallel construct, master construct #incl...

master construct #include extern float average(float,float,float); void master_construct ( float* x, float* xold, int n, float tol )  { int c, i, toobig; floa

Explain the hubs and repeaters, Hubs/Repeaters Hubs/Repeaters are used ...

Hubs/Repeaters Hubs/Repeaters are used to connect together two or more network segments of any media type. In larger design, signal quality starts to deteriorate as segment exc

What are the data units at dissimilar layers of the tcp / ip, What are the ...

What are the data units at dissimilar layers of the TCP / IP protocol suite? The data unit formed at the application layer is called a message, at the transport layer the data

Tunnelling - point to point, Tunnelling To guarantee privacy for the  o...

Tunnelling To guarantee privacy for the  organization, VPN specifies that each IP datagram destined for private  use of the  organization, must  first be  encrypted and then en

Relevance and protection regarding dns attacks, Relevance and Protection re...

Relevance and Protection regarding DNS Attacks While discussing about the relevance and protection of the database, there are many things which need to consider. Almost, may o

Advantages of ls over dv algorithm, Advantages of LS over DV algorithm ...

Advantages of LS over DV algorithm There  are a number of advantages to link  state  protocols  especially when  compared to  the distance vector based  routing  protocols. The

Explain how snmp works, Question: a) One of the most important duties ...

Question: a) One of the most important duties of a system administrator is to protect the information that is stored on network servers. In the same context, describe both Ma

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd