Description of problem: Various number of mvapich2 benchmarks fail with RC255, RC252, RC1 on mlx4 IB devices - sometime all of them fail and sometimes just some. Version-Release number of selected component (if applicable): DISTRO=RHEL-9.0.0-20220313.2 + [22-03-14 18:33:26] cat /etc/redhat-release Red Hat Enterprise Linux release 9.0 Beta (Plow) + [22-03-14 18:33:26] uname -a Linux rdma-perf-01.rdma.lab.eng.rdu2.redhat.com 5.14.0-70.1.1.el9.x86_64 #1 SMP PREEMPT Tue Mar 8 22:22:02 EST 2022 x86_64 x86_64 x86_64 GNU/Linux + [22-03-14 18:33:26] cat /proc/cmdline BOOT_IMAGE=(hd0,msdos1)/vmlinuz-5.14.0-70.1.1.el9.x86_64 root=/dev/mapper/rhel_rdma--perf--01-root ro intel_idle.max_cstate=0 intremap=no_x2apic_optout processor.max_cstate=0 intel_iommu=on iommu=on console=tty0 rd_NO_PLYMOUTH intel_idle.max_cstate=0 intremap=no_x2apic_optout processor.max_cstate=0 crashkernel=1G-4G:192M,4G-64G:256M,64G-:512M resume=/dev/mapper/rhel_rdma--perf--01-swap rd.lvm.lv=rhel_rdma-perf-01/root rd.lvm.lv=rhel_rdma-perf-01/swap console=ttyS1,115200n81 + [22-03-14 18:33:26] rpm -q rdma-core linux-firmware rdma-core-37.2-1.el9.x86_64 linux-firmware-20220209-125.el9.noarch + [22-03-14 18:33:26] tail /sys/class/infiniband/mlx4_0/fw_ver 2.42.5000 Installed: mpitests-mvapich2-5.8-1.el9.x86_64 mvapich2-2.3.6-3.el9.x86_64 How reproducible: 100% Steps to Reproduce: 1. bring up the RDMA hosts mentioned above with RHEL9.0 build 2. set up RDMA hosts for mvapich2 benchamrk tests 3. run one of the mvapich2 benchmark with "mpirun" command, as the following: timeout --preserve-status --kill-after=5m 3m mpirun -hostfile /root/hfile_one_core -np 2 mpitests-IMB-MPI1 PingPong -time 1.5 Actual results: [rdma-perf-00.rdma.lab.eng.rdu2.redhat.com:mpi_rank_0][rdma_param_handle_heterogeneity] All nodes involved in the job were detected to be homogeneous in terms of processors and interconnects. Setting MV2_HOMOGENEOUS_CLUSTER=1 can improve job startup performance on such systems. The following link has more details on enhancing job startup performance. http://mvapich.cse.ohio-state.edu/performance/job-startup/. [rdma-perf-00.rdma.lab.eng.rdu2.redhat.com:mpi_rank_0][rdma_param_handle_heterogeneity] To suppress this warning, please set MV2_SUPPRESS_JOB_STARTUP_PERFORMANCE_WARNING to 1 #---------------------------------------------------------------- # Intel(R) MPI Benchmarks 2021.3, MPI-1 part #---------------------------------------------------------------- # Date : Mon Mar 14 18:33:41 2022 # Machine : x86_64 # System : Linux # Release : 5.14.0-70.1.1.el9.x86_64 # Version : #1 SMP PREEMPT Tue Mar 8 22:22:02 EST 2022 # MPI Version : 3.1 # MPI Thread Environment: # Calling sequence was: # mpitests-IMB-MPI1 PingPong -time 1.5 # Minimum message length in bytes: 0 # Maximum message length in bytes: 4194304 # # MPI_Datatype : MPI_BYTE # MPI_Datatype for reductions : MPI_FLOAT # MPI_Op : MPI_SUM # # # List of Benchmarks to run: # PingPong #--------------------------------------------------- # Benchmarking PingPong # #processes = 2 #--------------------------------------------------- #bytes #repetitions t[usec] Mbytes/sec 0 1000 1.80 0.00 1 1000 1.73 0.58 2 1000 1.75 1.14 4 1000 1.74 2.29 8 1000 1.78 4.50 16 1000 1.76 9.07 32 1000 1.81 17.64 64 1000 1.81 35.28 128 1000 1.98 64.65 256 1000 2.86 89.40 512 1000 3.07 166.52 1024 1000 3.58 286.39 2048 1000 4.45 460.49 [rdma-perf-00.rdma.lab.eng.rdu2.redhat.com:mpi_rank_0][handle_cqe] Send desc error in msg to 1, wc_opcode=0 [rdma-perf-00.rdma.lab.eng.rdu2.redhat.com:mpi_rank_0][handle_cqe] Msg from 1: wc.status=12 (transport retry counter exceeded), wc.wr_id=0x5559ad3e7ae0, wc.opcode=0, vbuf->phead->type=0 = MPIDI_CH3_PKT_EAGER_SEND [rdma-perf-00.rdma.lab.eng.rdu2.redhat.com:mpi_rank_0][mv2_print_wc_status_error] IBV_WC_RETRY_EXC_ERR: This event is generated when a sender is unable to receive feedback from the receiver. This means that either the receiver just never ACKs sender messages in a specified time period, or it has been disconnected or it is in a bad state which prevents it from responding. If this happens when sending the first message, usually it means that the QP connection attributes are wrong or the remote side is not in a state that it can respond to messages. If this happens after sending the first message, usually it means that the remote QP is not available anymore or that there is congestion in the network preventing the packets from reaching on time. Relevant to: RC or DC QPs. [rdma-perf-00.rdma.lab.eng.rdu2.redhat.com:mpi_rank_0][handle_cqe] src/mpid/ch3/channels/mrail/src/gen2/ibv_channel_manager.c:497: [] Got completion with error 12, vendor code=0x81, dest rank=1 : No data available (61) [mpiexec.lab.eng.rdu2.redhat.com] HYDU_sock_write (utils/sock/sock.c:294): write error (Bad file descriptor) [mpiexec.lab.eng.rdu2.redhat.com] HYD_pmcd_pmiserv_send_signal (pm/pmiserv/pmiserv_cb.c:177): unable to write data to proxy [mpiexec.lab.eng.rdu2.redhat.com] ui_cmd_cb (pm/pmiserv/pmiserv_pmci.c:79): unable to send signal downstream [mpiexec.lab.eng.rdu2.redhat.com] HYDT_dmxu_poll_wait_for_event (tools/demux/demux_poll.c:76): callback returned error status [mpiexec.lab.eng.rdu2.redhat.com] HYD_pmci_wait_for_completion (pm/pmiserv/pmiserv_pmci.c:198): error waiting for event [mpiexec.lab.eng.rdu2.redhat.com] main (ui/mpich/mpiexec.c:340): process manager error waiting for completion + [22-03-14 18:36:40] __MPI_check_result 255 mpitests-mvapich2 IMB-MPI1 PingPong mpirun /root/hfile_one_core Expected results: + [21-11-04 14:32:12] timeout --preserve-status --kill-after=5m 3m mpirun -hostfile /root/hfile_one_core -np 2 mpitests-IMB-MPI1 PingPong -time 1.5 [rdma-virt-00.rdma.lab.eng.rdu2.redhat.com:mpi_rank_0][rdma_param_handle_heterogeneity] All nodes involved in the job were detected to be homogeneous in terms of processors and interconnects. Setting MV2_HOMOGENEOUS_CLUSTER=1 can improve job startup performance on such systems. The following link has more details on enhancing job startup performance. http://mvapich.cse.ohio-state.edu/performance/job-startup/. [rdma-virt-00.rdma.lab.eng.rdu2.redhat.com:mpi_rank_0][rdma_param_handle_heterogeneity] To suppress this warning, please set MV2_SUPPRESS_JOB_STARTUP_PERFORMANCE_WARNING to 1 #---------------------------------------------------------------- # Intel(R) MPI Benchmarks 2021.2, MPI-1 part #---------------------------------------------------------------- # Date : Thu Nov 4 14:32:12 2021 # Machine : x86_64 # System : Linux # Release : 4.18.0-348.el8.x86_64 # Version : #1 SMP Mon Oct 4 12:17:22 EDT 2021 # MPI Version : 3.1 # MPI Thread Environment: # Calling sequence was: # mpitests-IMB-MPI1 PingPong -time 1.5 # Minimum message length in bytes: 0 # Maximum message length in bytes: 4194304 # # MPI_Datatype : MPI_BYTE # MPI_Datatype for reductions : MPI_FLOAT # MPI_Op : MPI_SUM # # # List of Benchmarks to run: # PingPong #--------------------------------------------------- # Benchmarking PingPong # #processes = 2 #--------------------------------------------------- #bytes #repetitions t[usec] Mbytes/sec 0 1000 1.03 0.00 1 1000 1.07 0.93 2 1000 1.08 1.86 4 1000 1.07 3.72 8 1000 1.08 7.42 16 1000 1.09 14.61 32 1000 1.11 28.76 64 1000 1.15 55.57 128 1000 1.24 103.17 256 1000 1.87 136.66 512 1000 2.01 254.89 1024 1000 2.28 448.72 2048 1000 2.83 724.77 4096 1000 3.33 1228.27 8192 1000 4.71 1740.00 16384 1000 6.80 2411.04 32768 1000 9.30 3524.48 65536 640 14.55 4504.75 131072 320 24.88 5268.23 262144 160 45.39 5775.79 524288 80 87.61 5984.65 1048576 40 168.82 6211.16 2097152 20 333.61 6286.29 4194304 10 664.97 6307.48 # All processes entering MPI_Finalize Additional info: This same behavior has been observed in RHEL-8.5 release build, where it used to pass all. Also, in earlier RHEL-9.0 build, all benchmarks passed at least once.