[firedrake] Installing Firedrake on an HPC machine
Justin Chang
jychang48 at gmail.com
Thu Aug 6 16:05:11 BST 2015
Yes run-pyop2.py contains exactly those two lines
> mpiexec -n 1 python run-pyop2.py
init pyop2
forking
init mpi
--------------------------------------------------------------------------
An MPI process has executed an operation involving a call to the
"fork()" system call to create a child process. Open MPI is currently
operating in a condition that could result in memory corruption or
other system errors; your MPI job may hang, crash, or produce silent
data corruption. The use of fork() (or system() or other calls that
create child processes) is strongly discouraged.
The process that invoked fork was:
Local host: compute-0-0 (PID 52215)
MPI_COMM_WORLD rank: 0
If you are *absolutely sure* that your application will successfully
and correctly survive a call to fork(), you may disable this warning
by setting the mpi_warn_on_fork MCA parameter to 0.
--------------------------------------------------------------------------
So I think I am getting exactly what you're getting except I am still
getting the fork error. And when I try your latest test:
>mpiexec -n 2 python manual-fork.py
forking
forking
init pyop2
init mpi
init pyop2
init mpi
--------------------------------------------------------------------------
An MPI process has executed an operation involving a call to the
"fork()" system call to create a child process. Open MPI is currently
operating in a condition that could result in memory corruption or
other system errors; your MPI job may hang, crash, or produce silent
data corruption. The use of fork() (or system() or other calls that
create child processes) is strongly discouraged.
The process that invoked fork was:
Local host: compute-0-0 (PID 52345)
MPI_COMM_WORLD rank: 1
If you are *absolutely sure* that your application will successfully
and correctly survive a call to fork(), you may disable this warning
by setting the mpi_warn_on_fork MCA parameter to 0.
--------------------------------------------------------------------------
2
2
[compute-0-0.local:52342] 1 more process has sent help message
help-mpi-runtime.txt / mpi_init:warn-fork
[compute-0-0.local:52342] Set MCA parameter "orte_base_help_aggregate" to 0
to see all help / error messages
On Thu, Aug 6, 2015 at 9:55 AM, Lawrence Mitchell <
lawrence.mitchell at imperial.ac.uk> wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> On 06/08/15 15:42, Justin Chang wrote:
> >> mpiexec -n 2 python run-pyop2.py
> >
> >
> --------------------------------------------------------------------------
> >
> > An MPI process has executed an operation involving a call to the
> >
> > "fork()" system call to create a child process. Open MPI is
> > currently
> >
> > operating in a condition that could result in memory corruption or
> >
> > other system errors; your MPI job may hang, crash, or produce
> > silent
> >
> > data corruption. The use of fork() (or system() or other calls
> > that
> >
> > create child processes) is strongly discouraged.
> >
> Huh, OK.
>
> I was expecting this to work! To confirm, run-pyop2.py just contains:
>
> from pyop2 import op2
> op2.init()
>
> Can you edit some files in PyOP2 just to check what's going on:
>
> In PyOP2/pyop2/__init__.py
>
> Replace:
>
> from pyop2_utils import enable_mpi_prefork
>
> with:
>
> print 'init pyop2'
> from pyop2_utils import enable_mpi_prefork
>
> In PyOP2/pyop2/mpi.py
>
> Replace:
>
> from decorator import decorator
>
> with:
>
> print 'init mpi'
> from decorator import decorator
>
> In PyOP2/pyop2_utils/__init__.py
>
> Replace:
>
> prefork.enable_prefork()
>
> with:
>
> print 'forking'
> prefork.enable_prefork()
>
>
> And then try running run-pyop2.py on just one MPI process.
>
> I see:
>
> init pyop2
> forking
> loading mpi
>
>
> But maybe you get something else?
>
> And then let's test if the following works:
>
> cat > manual-fork.py << EOF
> from pyop2_utils import enable_mpi_prefork
> enable_mpi_prefork()
> from firedrake import *
> from mpi4py import MPI
> print MPI.COMM_WORLD.size
> EOF
> mpiexec -n 2 python manual-fork.py
>
> Cheers,
>
> Lawrence
>
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1
>
> iQEcBAEBAgAGBQJVw3VgAAoJECOc1kQ8PEYv6vMH/0axxqZd+KqdQ5OMIjdBuF9g
> OIJC6YcoCCcigYh/RccSAVpzTuAvGWQdRJqMMlEfukrZrn6NSsw+TT+kzR+SPneg
> D66OVIsO2vfKfia/9yflEE4gKkVHfzo067dzstDZ8HnG0tVEqAexJdKzfK7nUE6M
> LJovg+YbJ5g/50BPbfCYJNRCtYAfjHjZWNOfYlLRITH55O7oIlAo4d2Pvk3wb+ok
> lDJI9G1gdHOIz8U+uuQ8/dKbutUSRfH7a3NK4wbjf/Q05BCS16k2T/Ouim1wkUql
> 9/4lKDkKsNTfMILXxNf3STlHJJlF5JRpDRJ+N462UjfJyTI9qTeZIv5GD9lH/x8=
> =afxk
> -----END PGP SIGNATURE-----
>
> _______________________________________________
> firedrake mailing list
> firedrake at imperial.ac.uk
> https://mailman.ic.ac.uk/mailman/listinfo/firedrake
>
-------------- next part --------------
HTML attachment scrubbed and removed
More information about the firedrake
mailing list