|
Packit |
0848f5 |
----------------------------------------------------------------------
|
|
Packit |
0848f5 |
KNOWN ISSUES
|
|
Packit |
0848f5 |
----------------------------------------------------------------------
|
|
Packit |
0848f5 |
|
|
Packit |
0848f5 |
### Solaris compilers
|
|
Packit |
0848f5 |
|
|
Packit |
0848f5 |
* Compilation on solaris will freeze when MPICH is configured with
|
|
Packit |
0848f5 |
"--enable-strict". This is due to a solaris compiler bug related
|
|
Packit |
0848f5 |
to a specific order of assignments to long long and short variables.
|
|
Packit |
0848f5 |
See the following ticket for more information:
|
|
Packit |
0848f5 |
|
|
Packit |
0848f5 |
https://trac.mpich.org/projects/mpich/ticket/2105
|
|
Packit |
0848f5 |
|
|
Packit |
0848f5 |
### PathScale compilers
|
|
Packit |
0848f5 |
* Due to bugs in the PathScale compiler suite, some configurations of MPICH
|
|
Packit |
0848f5 |
do not build correctly.
|
|
Packit |
0848f5 |
- v5.0.1: When the --disable-shared configure option is passed to MPICH,
|
|
Packit |
0848f5 |
applications will give a segfault.
|
|
Packit |
0848f5 |
|
|
Packit |
0848f5 |
- v5.0.5: Unless you pass the --enable-fast=O0 configure flag to MPICH,
|
|
Packit |
0848f5 |
applications will hang.
|
|
Packit |
0848f5 |
|
|
Packit |
0848f5 |
See the following ticket for more information:
|
|
Packit |
0848f5 |
|
|
Packit |
0848f5 |
https://trac.mpich.org/projects/mpich/ticket/2104
|
|
Packit |
0848f5 |
|
|
Packit |
0848f5 |
### Fine-grained thread safety
|
|
Packit |
0848f5 |
|
|
Packit |
0848f5 |
* ch3:sock does not (and will not) support fine-grained threading.
|
|
Packit |
0848f5 |
|
|
Packit |
0848f5 |
* MPI-IO APIs are not currently thread-safe when using fine-grained
|
|
Packit |
0848f5 |
threading (--enable-thread-cs=per-object).
|
|
Packit |
0848f5 |
|
|
Packit |
0848f5 |
* ch3:nemesis:tcp fine-grained threading is still experimental and may
|
|
Packit |
0848f5 |
have correctness or performance issues. Known correctness issues
|
|
Packit |
0848f5 |
include dynamic process support and generalized request support.
|
|
Packit |
0848f5 |
|
|
Packit |
0848f5 |
|
|
Packit |
0848f5 |
### Lacking channel-specific features
|
|
Packit |
0848f5 |
|
|
Packit |
0848f5 |
* ch3 does not presently support communication across heterogeneous
|
|
Packit |
0848f5 |
platforms (e.g., a big-endian machine communicating with a
|
|
Packit |
0848f5 |
little-endian machine).
|
|
Packit |
0848f5 |
|
|
Packit |
0848f5 |
* Support for "external32" data representation is incomplete. This
|
|
Packit |
0848f5 |
affects the MPI_Pack_external and MPI_Unpack_external routines, as
|
|
Packit |
0848f5 |
well the external data representation capabilities of ROMIO. In
|
|
Packit |
0848f5 |
particular: noncontiguous user buffers could consume egregious
|
|
Packit |
0848f5 |
amounts of memory in the MPI library and any types which vary in
|
|
Packit |
0848f5 |
width between the native representation and the external32
|
|
Packit |
0848f5 |
representation will likely cause corruption. The following ticket
|
|
Packit |
0848f5 |
contains some additional information:
|
|
Packit |
0848f5 |
|
|
Packit |
0848f5 |
http://trac.mpich.org/projects/mpich/ticket/1754
|
|
Packit |
0848f5 |
|
|
Packit |
0848f5 |
* ch3 has known problems in some cases when threading and dynamic
|
|
Packit |
0848f5 |
processes are used together on communicators of size greater than
|
|
Packit |
0848f5 |
one.
|
|
Packit |
0848f5 |
|
|
Packit |
0848f5 |
|
|
Packit |
0848f5 |
### Performance issues
|
|
Packit |
0848f5 |
|
|
Packit |
0848f5 |
* SMP-aware collectives do not perform as well, in select cases, as
|
|
Packit |
0848f5 |
non-SMP-aware collectives, e.g. MPI_Reduce with message sizes
|
|
Packit |
0848f5 |
larger than 64KiB. These can be disabled by setting the environment
|
|
Packit |
0848f5 |
variable MPIR_CVAR_ENABLE_SMP_COLLECTIVES to 0.
|
|
Packit |
0848f5 |
|
|
Packit |
0848f5 |
* MPI_Irecv operations that are not explicitly completed before
|
|
Packit |
0848f5 |
MPI_Finalize is called may fail to complete before MPI_Finalize
|
|
Packit |
0848f5 |
returns, and thus never complete. Furthermore, any matching send
|
|
Packit |
0848f5 |
operations may erroneously fail. By explicitly completed, we mean
|
|
Packit |
0848f5 |
that the request associated with the operation is completed by one
|
|
Packit |
0848f5 |
of the MPI_Test or MPI_Wait routines.
|