I'm having a difficult time understanding the difference between the linear algebra packages MAGMA and PLASMA from just a quick glance. It looks like MAGMA is oriented towards GPU's and vector coprocessors, while PLASMA is oriented towards a vanilla multicore system. But I'd appreciate an explanation comparing them, and what they do differently from BLAS/LAPACK/ScaLAPACK.
$\begingroup$
$\endgroup$
4
-
$\begingroup$ Why did you use a comment instead of submitting an answer below? $\endgroup$– cjordan1Commented Nov 28, 2012 at 3:48
-
$\begingroup$ I emailed the PLASMA/MAGMA developers, and their current preference is that questions about the distributions be directed to their forums: MAGMA ,PLASMA, LAPACK. $\endgroup$– Aron AhmadiaCommented Nov 28, 2012 at 16:54
-
$\begingroup$ Or they could just add a simple blurb on each of the websites so people aren't tempted to ask their favorite, easily searchable computational scientist forum instead. $\endgroup$– cjordan1Commented Nov 28, 2012 at 18:35
-
$\begingroup$ Well, you know what my opinion on that would be :) $\endgroup$– Aron AhmadiaCommented Nov 28, 2012 at 21:55
Add a comment
|
1 Answer
$\begingroup$
$\endgroup$
See here or the PLASMA README. LAPACK is serial and parallelism enters only via multi threaded BLAS3. ScaLAPACK is for distributed memory machines and requires BLACS/MPI. PLASMA targets shared memory parallelism on multicore machines.