how to parallelize separate matrix-matrix multiplications?

5 visualizaciones (últimos 30 días)
Yang
Yang el 25 de En. de 2018
Comentada: Yang el 26 de En. de 2018
There are three matrix-matrix multiplications: C1=A1*B1, C2=A2*B2, C3=A3*B3.
If I wrote the code like above, the three matrix-matrix multiplications will be calculated in a sequential way. Is there an easy way to parallelize the three matrix-matrix multiplications (apart from using parfor)?
Apology if this question has been raised&answered before. I didn't find such a question after some quick search.

Respuesta aceptada

Brendan Hamm
Brendan Hamm el 25 de En. de 2018
Editada: Brendan Hamm el 25 de En. de 2018
Unless you are working on a cluster, I would not expect to see any speed up from parallelizing such operations. The reason for this is that a matrix multiplication is multi-threaded, meaning that each of these computations is already utilizing multiple cores on your machine.
If you are working on a cluster, you can assign each of these variables in an SPMD block and perform the computation on each machine separately.
  3 comentarios
Brendan Hamm
Brendan Hamm el 25 de En. de 2018
This is a good point and useful for others who might happen upon this question, as according to Yang, there may not be similar posts. I was considering his question alone, but this is a better generalization of the concept.
Also, I edited the work hyper-threaded to multi-threaded, so as not to be hardware specific.
Yang
Yang el 26 de En. de 2018
Thanks a lot Brendan and Jan!

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Parallel Computing en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by