Fortran+MPI program can't run on OPA when using variable format expressions

Fortran+MPI program can't run on OPA when using variable format expressions

The code:
use mpi
implicit none
real*8 send_data(10)
integer ierr,mynode,numnodes,status(10)
integer k

send_data=0.0d0
call mpi_init(ierr)
call mpi_comm_rank(MPI_Comm_World, mynode, ierr)
call mpi_comm_size(MPI_Comm_World, numnodes, ierr)
k=10
if(mynode==0) write(*,100)send_data(:10)
100 format(<k>I4) !can't run with OPA Error
!100 format(10I4) !can run on OPA
call mpi_finalize(ierr)
end

Compiler: 2019.update2 and 2019.update4

Compile command: mpiifort  

OS: CentOS Linux release 7.6.1810

opainfo(10.7.0.0.133) output: 

hfi1_0:1                           PortGID:0xfe80000000000000:00117509010ad11e
   PortState:     Active
   LinkSpeed      Act: 25Gb         En: 25Gb        
   LinkWidth      Act: 4            En: 4           
   LinkWidthDnGrd ActTx: 4  Rx: 4   En: 3,4         
   LCRC           Act: 14-bit       En: 14-bit,16-bit,48-bit       Mgmt: True 
   LID: 0x00000001-0x00000001       SM LID: 0x00000001 SL: 0 
         QSFP Copper,       3m  Hitachi Metals    P/N IQSFP26C-30       Rev 01
   Xmit Data:               1424 MB Pkts:             10048182
   Recv Data:               7270 MB Pkts:             10871417
   Link Quality: 5 (Excellent)

Run: $ mpirun -n 4 -env I_MPI_FABRICS shm:ofi ./a.out

Output:

geospace.430313hfi_userinit: mmap of status page (dabbad0008030000) failed: Operation not permitted
geospace.430313psmi_context_open: hfi_userinit: failed, trying again (1/3)
geospace.430313hfi_userinit: assign_context command failed: Invalid argument
geospace.430313psmi_context_open: hfi_userinit: failed, trying again (2/3)
geospace.430313hfi_userinit: assign_context command failed: Invalid argument
geospace.430313psmi_context_open: hfi_userinit: failed, trying again (3/3)
geospace.430313hfi_userinit: assign_context command failed: Invalid argument
geospace.430313PSM2 can't open hfi unit: -1 (err=23)
Abort(1619087) on node 3 (rank 3 in comm 0): Fatal error in PMPI_Init: Other MPI error, error stack:
MPIR_Init_thread(666)..........: 
MPID_Init(922).................: 
MPIDI_NM_mpi_init_hook(1070)...: 
MPIDI_OFI_create_endpoint(1751): OFI endpoint open failed (ofi_init.h:1751:MPIDI_OFI_create_endpoint:Invalid argument)

But if it changed from "100 format(<k>I4)" to "100 format(10I4)", it can run well.

Thank you.

1 post / 0 new
For more complete information about compiler optimizations, see our Optimization Notice.