MPI - Fehlermeldung

Probleme bei der Installation?
Antworten
DERTLP
User
Beiträge: 1
Registriert: Donnerstag 19. Juli 2012, 11:51

Ziel: PyTrilinos in Python zu verwenden
OS: Debian Linux

Hi Leute,

ich möchte PyTrilinos in Python verwenden. PyTrilinos gibt es unter http://trilinos.sandia.gov/packages/pytrilinos.
Ich habe über das Software Center in Debian das PyTrilinos package installiert. So weit ich das beurteilen kann funktioniert es auch, da ich zum Beispiel

Code: Alles auswählen

from PyTrilinos import Epetra, Amesos
problemlos aufrufen kann und es keine Fehlermeldung gibt.

Das Problem liegt im MPI, welches ich verwenden möchte. Das MPI dient dazu, die in PyTrilinos enthaltenen Befehle parallel zu verarbeiten, so dass zum Beispiel Matrizen schneller berechnet werden können.

Ich habe über das Software Center folgende MPI packages installiert:
- MPI module for Python
- MPI-enhanced Python interpreter (LAM based version)
- Python interface to the Message Passing interface (MPI) (default version)
- MPI-enhanced Python interpreter (MPICH based version)
- Standard MPI development files
- LAM runtime environment for executing parallel programs
- high performance message passing library (header files, common files, shared library)

So, jetzt komme ich zum eigentlichen Problem:
==================================
Ich habe ein kleines Programm geschrieben, dass lediglich aus den folgenden Zeilen besteht:

Code: Alles auswählen

#!/usr/bin/python
# -*- coding: utf-8 -*-

from PyTrilinos import Epetra
comm = Epetra.PyComm()
Das war es auch schon, ist nicht viel, reicht aber völlig aus, um PyTrilinos im Zusammenspiel mit MPI zu testen.

In meiner Shell rufe ich das ganze dann wie folgt auf:
mpirun -np 4 python TestingPyTrilinos_2.py

Leider erscheint dann folgende FEHLERMELDUNG:
====================================
"The MPI_comm_size() function was called before MPI_INIT was invoked.
*** This is disallowed by the MPI standard.
*** Your MPI job will now abort.
[debian:4917] Abort before MPI_INIT completed successfully; not able to guarantee that all other processes were killed!
*** The MPI_comm_size() function was called before MPI_INIT was invoked.
*** This is disallowed by the MPI standard.
*** Your MPI job will now abort.
[debian:4918] Abort before MPI_INIT completed successfully; not able to guarantee that all other processes were killed!
-----------------------------------------------------------------------------
It seems that [at least] one of the processes that was started with
mpirun did not invoke MPI_INIT before quitting (it is possible that
more than one process did not invoke MPI_INIT -- mpirun was only
notified of the first one, which was on node n0).

mpirun can *only* be used with MPI programs (i.e., programs that
invoke MPI_INIT and MPI_FINALIZE). You can use the "lamexec" program
to run non-MPI programs over the lambooted nodes.
-----------------------------------------------------------------------------"


Sooooo, ..... und nun bin ich auf Eure Hilfe angewiesen! Was meint Ihr, wie kriege ich das Programm zum Laufen?
Bin Euch für jede Hilfe dankbar!
Antworten