3.1.3. Open MPI v4.0.x 系列
本文件包含Open MPI v4.0.x系列的所有NEWS更新内容,按时间倒序排列。
3.1.3.1. Open MPI 版本 4.0.6
- Date:
2021年3月
将嵌入式PMIx更新至3.2.2版本。此次更新修复了多个
MPI_COMM_SPAWN相关问题。修复了在使用Flux PMI和UCX时出现的问题。感谢Sami Ilvonen报告并提供修复方案。
修复了使用PGI编译器编译时MPIR断点被移除的问题。感谢@louisespellacy-arm的报告。
修复了在使用Lustre时的一些ROMIO问题。感谢Mark Dixon的报告。
修复了使用外部PMIx 4构建Open MPI 4.0.x时出现的问题。
修复了在使用启用计时配置选项和UCX时的编译问题。感谢Jan Bierbaum的报告。
修复了使用Cray编译器构建Open SHMEM时出现的符号名称冲突问题。感谢Pak Lui的报告和修复。
修复了在OSX Big Sur系统下构建Open MPI时遇到的问题。感谢FX Coudert的报告。
对OFI MTL进行了多项修复。
修复了为解析长环境变量值分配足够内存的问题。感谢 @zrss 的报告。
提升构建的可重现性以协助Open MPI软件包。感谢Bernhard Wiedmann提请我们关注此问题。
3.1.3.2. Open MPI 版本 4.0.5
- Date:
2020年8月
修复了MPI RMA比较和交换操作的问题。感谢Wojciech Chlapek的报告。
如果应用程序使用SLURM的srun命令启动,则禁用Open MPI将MPI进程绑定到系统资源的功能。
在配置Open MPI时,如果默认使用8字节Fortran整数大小,则禁用Fortran mpi_f08模块的构建。感谢@ahcien的报告。
修复了当使用
--map-by选项时mpirun出现的问题。感谢Wenbin Lyu的报告。修复了使用Global Arrays回归测试套件发现的MPI单边操作的一些问题。感谢@bjpalmer的报告。
修复了使用PGI编译器时make check的问题。感谢Carl Ponder的报告。
修复了
MPI_FILE_READ_AT_ALL在某些情况下可能导致应用程序挂起的问题。感谢Scot Breitenfeld的报告。修复了使用较新版本GCC构建C++应用程序时的问题。感谢Constantine Khrulev的报告。
3.1.3.3. Open MPI 版本 4.0.4
- Date:
2020年6月
修复了一个内存补丁程序在拦截shmat和shmdt时的问题。该问题在RHEL 8.x ppc64le系统上被发现(更多信息请参阅README)。
修复了使用gcc地址消毒器捕获的非法访问问题。感谢Georg Geiser的报告。
添加检查以避免与LSF附带的libevent库发生冲突。
如果存在,则切换为链接到libevent_core而非libevent。
增加对UCX 1.9及更高版本的改进支持。
修复了Fortran 2008绑定中的ABI兼容性问题。感谢Alastair McKinstry的报告。
修复了在带有Lustre的系统上构建OMPI时
/usr/lib64的rpath问题。感谢David Shrader的报告。修复了某些MPI RMA操作中出现的内存泄漏问题。
修复了ORTE在将MPI进程映射到资源时的问题。感谢Alex Margolin的报告和提供的修复方案。
修复了OMPI MPI_T函数返回错误代码不正确的问题。
修复了调试工具无法多次附加到mpirun的问题。感谢Gregory Lee的报告。
修复了在使用NAG编译器时Fortran编译器包装器的问题。感谢Peter Brady的报告。
修复了ORTE基于ssh的进程启动器在大规模使用时的问题。感谢Benjamín Hernández的报告。
修复了在使用共享MPI I/O操作时的问题。OMPIO现在能成功从文件打开语句返回,但如果文件系统不支持共享I/O操作则会报错。感谢Romain Hild的报告。
修复了
MPI_WIN_DETACH的一个问题。感谢Thomas Naughton的报告。
3.1.3.4. Open MPI 版本 4.0.3
- Date:
2020年3月
将嵌入式PMIx更新至3.1.5版本
添加对Mellanox ConnectX-6的支持。
修复了OpenMPI IO中使用共享文件指针时的一个问题。感谢Romain Hild的报告。
修复了Open MPI在编译过程中使用先前安装的Fortran mpi模块的问题。感谢Marcin Mielniczuk的报告
修复了Fortran编译器包装器忽略禁用包装器运行路径配置选项的问题。感谢David Shrader的报告。
修复了在未安装ssh或rsh的系统上尝试使用mpirun的问题。
修复了在使用XPMEM进行节点内消息传输时发现的一些问题。
针对某些情况优化了MPI_Dims_create返回的维度。感谢@aw32的报告。
修复了发送大于4GB消息时的问题。感谢Philip Salzmann报告此问题。
新增通过Open MPI的RPM规范文件指定替代模块文件路径的功能。感谢@jschwartz-cray的报告。
在README中澄清
--with-hwloc配置选项的使用方法。 感谢Marcin Mielniczuk提出这个文档问题。修复了shmem_atomic_set的一个问题。感谢Sameh Sharkawi的报告。
修复了在具有循环边界条件的笛卡尔通信器中
MPI_Neighbor_alltoall(v,w)的问题。感谢Ralph Rabenseifner和Tony Skjellum的报告。修复了在32位系统上使用Open MPIO的问题。感谢Orion Poplawski的报告。
修复了在使用vulcan Open MPIO组件时NetCDF测试死锁的问题。感谢Orion Poplawski的报告。
修复了在Open MPI MCA参数配置文件中设置
mpi_yield_when_idle参数时被忽略的问题。感谢@iassiour的报告。修复了Open MPIO在单次操作中读写超过2GB数据时的问题。感谢Richard Warren的报告。
3.1.3.5. Open MPI 版本 4.0.2
- Date:
2019年9月
将嵌入式PMIx更新至3.1.4版本
增强Open MPI以检测进程是否在同一节点的不同命名空间中运行,这种情况下会禁用vader CMA单拷贝机制。感谢Adrian Reber报告问题并提供修复方案。
修复了ORTE作业树启动机制的一个问题。感谢@lanyangyang的报告。
修复了以root身份运行时环境变量处理的问题。感谢Simon Byrne报告并提供修复方案。
修复Fortran
MPI_FILE_GET_POSITION返回码错误。感谢Wei-Keng Liao的报告。修复非阻塞基础集合组件中用户自定义数据类型/操作的内存泄漏问题。感谢Andrey Maslennikov验证修复。
修复了共享内存与派生进程不兼容的问题。感谢@rodarima的报告。
修复发送重叠数据类型时的数据损坏问题。感谢DKRZ的报告。
修复了oob_tcp组件在有活跃监听器时关闭导致的段错误。感谢Orivej Desh报告问题并提供修复方案。
修复了ompio中的除零错误导致的段错误。 感谢@haraldkl报告问题并提供修复方案。
修复flux组件的finalize问题。感谢Stephen Herbein和Jim Garlick提供的修复方案。
修复 osc_rdma_acc_single_intrinsic 回归问题。 感谢 Joseph Schuchart 的报告和提供的修复方案。
修复包含大整数的hostnames问题。感谢@perrynzhou报告并提供修复方案。
修复了在使用UCX时
MPI_Fetch_and_op中的死锁问题 感谢Joseph Schuchart的报告。修复了基于mpirun启动的SLURM plm问题。感谢Jordon Hayes的报告和提供的修复方案。
防止rpmbuild中的grep失败导致构建中止。 感谢Daniel Letai的报告。
修复了btl/vader的最终化序列问题。感谢Daniel Vollmer的报告。
修复了在PUT控制消息期间发送的pml/ob1本地句柄问题。感谢@EmmanuelBRELLE报告并提供修复方案。
修复了持久性MPI发送和ob1"get"协议中的内存泄漏问题。感谢@s-kuberski的报告。
v4.0.x版本:mpi:标记
MPI_COMBINER_{HVECTOR,HINDEXED,STRUCT}_INTEGER为已移除项,除非配置时启用--enable-mpi1-compatibility参数修复在git子模块中运行make-authors.pl的问题。感谢Michael Heinz报告并提供修复方案。
修复了在MPI_Issend中使用
mpi_assert_allow_overtaking时出现的死锁问题。感谢Joseph Schuchart和George Bosilca的报告。添加编译标志,允许在通过MPIR附加时对堆栈中存在的文件进行解栈。 感谢James A Clark报告问题并提供修复方案。
已知问题:
在使用OFI libfabric和PSM2 MTLs传输超长消息(大于4GB)时存在一个已知问题。在本版本中,这些MTL会捕获这种情况并中止传输。未来的版本将为此问题提供更好的解决方案。
3.1.3.6. Open MPI 版本 4.0.1
- Date:
2019年3月
将嵌入式PMIx更新至3.1.2版本。
修复了OS-X上Vader(共享内存)传输的问题。感谢Daniel Vollmer的报告。
修复了usNIC BTL Makefile中的一个问题。感谢George Marselis的报告。
修复了在使用
--enable-visibility配置选项时与旧版本hwloc的兼容性问题。感谢Ben Menadue报告此问题并提供修复方案。修复了
MPI_WIN_CREATE_DYNAMIC和MPI_GET自引用时的问题。感谢Bart Janssens的报告。修复了在使用较新C++编译器时,mpi.h产生过多编译器警告信息的问题。感谢@Shadow-fax的报告。
修复了使用clang 5.0构建Open MPI时的问题。
修复了使用UCX时
MPI_WIN_CREATE的问题。感谢Adam Simpson的报告。修复了某些MPI数据类型析构操作中遇到的内存泄漏问题。感谢Axel Huebl的报告。
修复了MPI RMA累积操作中的若干问题。感谢Jeff Hammond的报告。
修复了在使用mpirun启动作业时关闭某些文件描述符可能出现的竞态条件。感谢Jason Williams报告此问题并提供修复方案。
修复了OMPIO中大型独立写入操作的问题。感谢Axel Huebl的报告。
修复了mpirun中map-by ppr选项解析的问题。感谢David Rich的报告。
修复了使用mpool hugepage组件时观察到的问题。感谢Hunter Easterday的报告和修复。
修复了调用某些MPI Fortran数据类型创建函数时产生的valgrind警告。感谢@rtoijala的报告。
修复了在使用PMIX 3.1或更新版本构建时出现的问题。感谢Alastair McKinstry的报告。
修复了构建MPI F08模块文件时遇到的问题。感谢Igor Andriyash和Axel Huebl的报告。
修复了某些MPI-RMA使用模式中遇到的两处内存泄漏问题。感谢Joseph Schuchart的报告和修复。
修复了ORTE
rmaps_base_oversubscribeMCA参数的问题。感谢@iassiour的报告。修复了UCX PML默认错误处理程序在MPI通信器上的问题。感谢Marcin Krotkiewski的报告。
修复了testmpio测试套件发现的OMPIO中的各种问题。
3.1.3.7. Open MPI 版本 4.0.0
- Date:
2018年9月
OSHMEM 已更新至 OpenSHMEM 1.4 API。
当没有可用的SPML时,不要构建OpenSHMEM层。 目前,这意味着只有在找到MXM或UCX库时才会构建OpenSHMEM层。
新增了一个UCX BTL,用于通过UCX增强MPI RMA支持
在此版本中,OpenIB BTL默认仅支持iWarp和RoCE。
将内部HWLOC更新至2.0.2版本
将内部PMIx更新至3.0.2版本
修改了选择外部与内部HWLOC和PMIx软件包构建的优先级。从本版本开始,默认配置会优先选择可用的外部HWLOC和PMIx软件包而非内部版本。
将内部ROMIO更新至3.2.1版本。
移除了对MXM MTL的支持。
移除了对SCIF的支持。
使用UCX时改进了CUDA支持。
为OMPIO启用CUDA分配缓冲区的使用。
改进了使用OMPIO时对两阶段MPI I/O操作的支持。
新增了对基于软件的性能计数器(SPCs)的支持,详见 https://github.com/davideberius/ompi/wiki/How-to-Use-Software-Based-Performance-Counters-(SPCs)-in-Open-MPI
将MTL OFI的默认启用模式从"psm,psm2,gni"改为对"shm,sockets,tcp,udp,rstream"采用默认禁用模式
在使用支持RDMA的互连时,对MPI RMA性能进行了多项改进。
更新memkind组件以使用memkind 1.6公共API。
修复了使用OpenJDK 11构建javadoc时的问题。感谢Siegmar Gross的报告。
修复了使用UCX时的内存泄漏问题。感谢Charles Taylor的报告。
修复了在使用UCX时
MPI_Finalize出现的挂起问题。修复了使用外部PMIx 2.1.2库构建Open MPI时的问题。感谢Marcin Krotkiewski的报告。
修复Vader(共享内存)传输中的竞态条件。
修复了使用较新的map-by mpirun选项时出现的问题。感谢Tony Reina的报告。
修复 rank-by 算法,使其能正确按对象和跨度进行排序
如果设置了两个环境变量,则允许以root身份运行。由Axel Huebl提出。
修复了在使用Java 10时构建Java绑定的问题。感谢Bryce Glover的报告。
修复了ORTE在应用程序正常终止但以非零错误代码退出时未报告错误消息的问题。感谢Emre Brookes的报告。