I'm developing XH5For <https://github.com/victorsndvg/XH5For>, an OO
fortran light-weight XDMF/HDF5 layer, and now I would like to test its
scalability, but I'm lost with an issue that i'm getting.
I'm going to try to explain it as best as I can.
I'm performing some weak scalability tests on Marenostrum III
<http://www.bsc.es/user-support/mn3.php> (GPFS file system) using
Collective Writing with the Contiguous HyperSlab strategy. I'm running
tests with 1, 16, 32, 64, 128, 256, 512, 1024 and 2048 MPI tasks.
All seems to work as expected except for the 2048 MPI tasks test, where I
think I'm getting an MPI interlock (it's still running without doing
anything till the job time exceeds and the job is killed).
After that, i try to reproduce an error with a number of MPI tasks between
1024-2048, and I could get the following error message while launching a
smaller size job, with 1164 MPI tasks:
HDF5-DIAG: Error detected in HDF5 (1.8.16) MPI-process 1009:
#000: H5Dio.c line 271 in H5Dwrite(): can't prepare for writing data
major: Dataset
minor: Write failed #001: H5Dio.c line 352 in H5D__pre_write(): can't write data
major: Dataset
minor: Write failed #002: H5Dio.c line 789 in H5D__write(): can't write data
major: Dataset
minor: Write failed #003: H5Dmpio.c line 529 in H5D__contig_collective_write(): couldn't
finish shared collective MPI-IO
major: Low-level I/O
minor: Write failed
I have used the following libraries/versions during compilation stage:
- intel/16.0.1
- impi/5.1.2.150
- HDF5/1.8.16-mpi
Here you can see how I open the HDF5 file for Collective Writing:
And here, how I write HyperSlabs:
Note: ENABLE_MPI, ENABLE_HDF5. ENABLE_PARALLEL_HDF5 definition flags are
I'm developing XH5For <https://github.com/victorsndvg/XH5For>, an OO
fortran light-weight XDMF/HDF5 layer, and now I would like to test its
scalability, but I'm lost with an issue that i'm getting.
I'm going to try to explain it as best as I can.
I'm performing some weak scalability tests on Marenostrum III
<http://www.bsc.es/user-support/mn3.php> (GPFS file system) using
Collective Writing with the Contiguous HyperSlab strategy. I'm running
tests with 1, 16, 32, 64, 128, 256, 512, 1024 and 2048 MPI tasks.
All seems to work as expected except for the 2048 MPI tasks test, where I
think I'm getting an MPI interlock (it's still running without doing
anything till the job time exceeds and the job is killed).
After that, i try to reproduce an error with a number of MPI tasks between
1024-2048, and I could get the following error message while launching a
smaller size job, with 1164 MPI tasks:
HDF5-DIAG: Error detected in HDF5 (1.8.16) MPI-process 1009:
#000: H5Dio.c line 271 in H5Dwrite(): can't prepare for writing data
major: Dataset
minor: Write failed #001: H5Dio.c line 352 in H5D__pre_write(): can't write data
major: Dataset
minor: Write failed #002: H5Dio.c line 789 in H5D__write(): can't write data
major: Dataset
minor: Write failed #003: H5Dmpio.c line 529 in H5D__contig_collective_write(): couldn't
finish shared collective MPI-IO
major: Low-level I/O
minor: Write failed
I have used the following libraries/versions during compilation stage:
- intel/16.0.1
- impi/5.1.2.150
- HDF5/1.8.16-mpi
Here you can see how I open the HDF5 file for Collective Writing:
I suspect that it is an issue with the impi implementation. I have not been able to compile your code on our systems due to various compilation errors (this is using a different compiler as I don’t have access to impi). Have you tried using mpich (or some other mpi implementation) instead to see if that works? Also, have you tried using 1.10.0?
I'm developing XH5For<https://github.com/victorsndvg/XH5For>, an OO fortran light-weight XDMF/HDF5 layer, and now I would like to test its scalability, but I'm lost with an issue that i'm getting.
I'm going to try to explain it as best as I can.
I'm performing some weak scalability tests on Marenostrum III<http://www.bsc.es/user-support/mn3.php> (GPFS file system) using Collective Writing with the Contiguous HyperSlab strategy. I'm running tests with 1, 16, 32, 64, 128, 256, 512, 1024 and 2048 MPI tasks.
All seems to work as expected except for the 2048 MPI tasks test, where I think I'm getting an MPI interlock (it's still running without doing anything till the job time exceeds and the job is killed).
After that, i try to reproduce an error with a number of MPI tasks between 1024-2048, and I could get the following error message while launching a smaller size job, with 1164 MPI tasks:
HDF5-DIAG: Error detected in HDF5 (1.8.16) MPI-process 1009: #000: H5Dio.c line 271 in H5Dwrite(): can't prepare for writing data
major: Dataset
minor: Write failed #001: H5Dio.c line 352 in H5D__pre_write(): can't write data
major: Dataset
minor: Write failed #002: H5Dio.c line 789 in H5D__write(): can't write data
major: Dataset
minor: Write failed #003: H5Dmpio.c line 529 in H5D__contig_collective_write(): couldn't finish shared collective MPI-IO
major: Low-level I/O
minor: Write failed
I have used the following libraries/versions during compilation stage:
I suspect that it is an issue with the impi implementation. I have not
been able to compile your code on our systems due to various compilation
errors (this is using a different compiler as I don’t have access to impi).
Have you tried using mpich (or some other mpi implementation) instead to
see if that works? Also, have you tried using 1.10.0?
I'm developing XH5For <https://github.com/victorsndvg/XH5For>, an OO
fortran light-weight XDMF/HDF5 layer, and now I would like to test its
scalability, but I'm lost with an issue that i'm getting.
I'm going to try to explain it as best as I can.
I'm performing some weak scalability tests on Marenostrum III
<http://www.bsc.es/user-support/mn3.php> (GPFS file system) using
Collective Writing with the Contiguous HyperSlab strategy. I'm running
tests with 1, 16, 32, 64, 128, 256, 512, 1024 and 2048 MPI tasks.
All seems to work as expected except for the 2048 MPI tasks test, where I
think I'm getting an MPI interlock (it's still running without doing
anything till the job time exceeds and the job is killed).
After that, i try to reproduce an error with a number of MPI tasks
between 1024-2048, and I could get the following error message while
launching a smaller size job, with 1164 MPI tasks:
HDF5-DIAG: Error detected in HDF5 (1.8.16) MPI-process 1009:
#000: H5Dio.c line 271 in H5Dwrite(): can't prepare for writing data
major: Dataset
minor: Write failed #001: H5Dio.c line 352 in H5D__pre_write(): can't write data
major: Dataset
minor: Write failed #002: H5Dio.c line 789 in H5D__write(): can't write data
major: Dataset
minor: Write failed #003: H5Dmpio.c line 529 in H5D__contig_collective_write(): couldn't
finish shared collective MPI-IO
major: Low-level I/O
minor: Write failed
I have used the following libraries/versions during compilation stage:
- intel/16.0.1
- impi/5.1.2.150
- HDF5/1.8.16-mpi
Here you can see how I open the HDF5 file for Collective Writing:
Using hdf5 1.8.17, I ran your program on a lustre system using Cray’s mpi wrappers for the intel compiler on 3072, 1536, 1200, 2016 processes with no issues (it completed in under 20s). If you have not already done so, you might want to make sure the hdf5 parallel test programs all passed.
FYI, I managed to get it to compile by adding the static flag for the compiler, I had to hard code the option in cmake. Here is what I used to compile it,
I've tried with GNU compilers, OpenMPI and HDF5 (1.8.15, 1.8.16, 1.18.17), but in a local scope or small cluster, not in Marenostrum.
Ok, I'm going to try to compile all this tools to reproduce this environment and I will tell you if there are some news.
Can you report the compilation errors you are talking about? I can help you in this point or fix any issue!
Thank you again for your effort!
Víctor.
2016-07-26 16:41 GMT+02:00 Scot Breitenfeld <brtnfld@hdfgroup.org<mailto:brtnfld@hdfgroup.org>>:
I suspect that it is an issue with the impi implementation. I have not been able to compile your code on our systems due to various compilation errors (this is using a different compiler as I don’t have access to impi). Have you tried using mpich (or some other mpi implementation) instead to see if that works? Also, have you tried using 1.10.0?
I'm developing XH5For<https://github.com/victorsndvg/XH5For>, an OO fortran light-weight XDMF/HDF5 layer, and now I would like to test its scalability, but I'm lost with an issue that i'm getting.
I'm going to try to explain it as best as I can.
I'm performing some weak scalability tests on Marenostrum III<http://www.bsc.es/user-support/mn3.php> (GPFS file system) using Collective Writing with the Contiguous HyperSlab strategy. I'm running tests with 1, 16, 32, 64, 128, 256, 512, 1024 and 2048 MPI tasks.
All seems to work as expected except for the 2048 MPI tasks test, where I think I'm getting an MPI interlock (it's still running without doing anything till the job time exceeds and the job is killed).
After that, i try to reproduce an error with a number of MPI tasks between 1024-2048, and I could get the following error message while launching a smaller size job, with 1164 MPI tasks:
HDF5-DIAG: Error detected in HDF5 (1.8.16) MPI-process 1009: #000: H5Dio.c line 271 in H5Dwrite(): can't prepare for writing data
major: Dataset
minor: Write failed #001: H5Dio.c line 352 in H5D__pre_write(): can't write data
major: Dataset
minor: Write failed #002: H5Dio.c line 789 in H5D__write(): can't write data
major: Dataset
minor: Write failed #003: H5Dmpio.c line 529 in H5D__contig_collective_write(): couldn't finish shared collective MPI-IO
major: Low-level I/O
minor: Write failed
I have used the following libraries/versions during compilation stage:
I've checked XH5For with, intel/16.0.1, openmpi/1.8.5 and HDF5/1.8.17 and
it works with 2048 MPI tasks.
I'm launching more tests to check the performance.
Till the moment I'dont know how to handle CMake Fortran flags to suggest my
preferences instead of force ... I will try to fix it.
I'm happy for receiving your support, Thank you so much again!
Using hdf5 1.8.17, I ran your program on a lustre system using Cray’s mpi
wrappers for the intel compiler on 3072, 1536, 1200, 2016 processes with no
issues (it completed in under 20s). If you have not already done so, you
might want to make sure the hdf5 parallel test programs all passed.
FYI, I managed to get it to compile by adding the static flag for the
compiler, I had to hard code the option in cmake. Here is what I used to
compile it,
I suspect that it is an issue with the impi implementation. I have not
been able to compile your code on our systems due to various compilation
errors (this is using a different compiler as I don’t have access to impi).
Have you tried using mpich (or some other mpi implementation) instead to
see if that works? Also, have you tried using 1.10.0?
I'm developing XH5For <https://github.com/victorsndvg/XH5For>, an OO
fortran light-weight XDMF/HDF5 layer, and now I would like to test its
scalability, but I'm lost with an issue that i'm getting.
I'm going to try to explain it as best as I can.
I'm performing some weak scalability tests on Marenostrum III
<http://www.bsc.es/user-support/mn3.php> (GPFS file system) using
Collective Writing with the Contiguous HyperSlab strategy. I'm running
tests with 1, 16, 32, 64, 128, 256, 512, 1024 and 2048 MPI tasks.
All seems to work as expected except for the 2048 MPI tasks test, where
I think I'm getting an MPI interlock (it's still running without doing
anything till the job time exceeds and the job is killed).
After that, i try to reproduce an error with a number of MPI tasks
between 1024-2048, and I could get the following error message while
launching a smaller size job, with 1164 MPI tasks:
HDF5-DIAG: Error detected in HDF5 (1.8.16) MPI-process 1009:
#000: H5Dio.c line 271 in H5Dwrite(): can't prepare for writing data
major: Dataset
minor: Write failed #001: H5Dio.c line 352 in H5D__pre_write(): can't write data
major: Dataset
minor: Write failed #002: H5Dio.c line 789 in H5D__write(): can't write data
major: Dataset
minor: Write failed #003: H5Dmpio.c line 529 in H5D__contig_collective_write(): couldn't
finish shared collective MPI-IO
major: Low-level I/O
minor: Write failed
I have used the following libraries/versions during compilation stage:
- intel/16.0.1
- impi/5.1.2.150
- HDF5/1.8.16-mpi
Here you can see how I open the HDF5 file for Collective Writing: