Hey guys,

On May 23, 2007, at 10:58 AM, Jonathan Guyer wrote:



On May 23, 2007, at 10:43 AM, Daniel Wheeler wrote:

I hope this is not necessary. After a quick search, there seem to be a number of wrappers out there.

<http://trilinos.sandia.gov/packages/pytrilinos/> - version 2.3.0 seems to have some python bindings, this may build a petsc version of python which we don't really want. We really want to say "import petsc" and "petsc.solve(myMatrix)" if at all
                                                                                
            possible.

We may not need to worry about that. <http://trilinos.sandia.gov/ packages/pytrilinos/overview.html> says (most of this is gibberish to me, but I've emphasized the last sentence):

Parallelism. PyTrilinos also supports MPI. If Trilinos is built with MPI support enabled, PyTrilinos will support MPI as well. Most of the Trilinos parallelism support is encapsulated in the Epetra_Comm class and its derivatives, which means PyTrilinos parallelism is encapsulated in the Epetra.Comm class and its derivatives. When the Epetra module is imported, it automatically calls MPI_Init() and registers MPI_Finalize() with the python atexit module.

*** Scripts can be executed using a standard python interpreter, called via the standard mpirun command. ***



Now, that may mean that we would always have to invoke mpirun in order to use Trilinos, even if we're only using one CPU, but it seems to mean that we would *not* have to recompile Python or our other libraries.


It would be very strange to demand to use mpirun to run in a single processor. In C and other Python implemetations, if you do not use mpirun when you run your application the program runs as a single processor machine (if the program is well written, of course).

I am unable to see the point of using PETSc, when there are other libraries that do the same thing (and with a much cleaner and clearer API). If you simply want the solvers, why not use Roldan Pozos' templated Krylov solvers?

http://math.nist.gov/iml++/

They are a very elegant set of  libraries.

Cheers,
Edwin




Reply via email to