POOMA vs PETSc on Beowulf Clusters

kaustuv kaustuv at stanford.edu
Fri Feb 14 09:48:29 PST 2003


Hi,
 I am looking for a nice matrix library for parallel applications (mostly
solution of Partial Differential Equations on structured Grids over
cluster of linux boxes), and after a lot of web-searching I stumbled upon
these two...PETSc and POOMA. Having gone through the manuals of the two I
had following comparision chart:

PETSc:
-----
 PROS:
  + Easy development of parallel applications & is in public domain.
  + Lot of Numerical libraries supported (Basic Backend is LAPACK)
  + Writen in C, so should give highly optimized code even with average
    compilers.
 CONS:
  - You cannot extract an single indivisual element of array directly.
  - No Stencils (like ones available in BLITZ++/POOMA) to make life easy.
  - Not suited for Matrix Free methods for it assumes you finally have a
    matrix (which might be costly to create even in compressed format)

POOMA:
------
 PROS:
  + Easy development of parallel applications & is in public Domain.
  + Stencils via expression templates. So coding is a simplified.
 CONS:
  - Makes heavy use C++ expression templates which I believe mihgt hinder
    compiler level optimization. In any case they lead to code bloat
  - No support for numeric linear libraries (cf. PETSc)

Can some one please share theri experiences of their use with the two
libraies (advantages - disadvatages - suggestions - scalability)?

Regards
Kaustuv





More information about the Beowulf mailing list