Skip to content

Defect: event post hangs using 2 images per node.  #411

Closed
@Ambra91

Description

@Ambra91

Defect/Bug Report

Hi. When performing the following toy example for some configuration settings, the event post statement hangs.
For example, this happens with 4 and 8 images, only when the images are distributed in the following way: 2 images for each node.

program prova_post
    use iso_fortran_env
    implicit none
    integer :: np, me
    type(event_type), allocatable :: snd_copied(:)[:]
 
    me=this_image()
    np = num_images()
    if (allocated(snd_copied)) deallocate(snd_copied)
    allocate(snd_copied(np)[*])
    if (me == 2)  print*,'I am  image 2, I am posting to 4'
    if (me == 2) event post(snd_copied(2)[4])
    if (me == 2) print*,' I am image 2, I have posted to 4'
    if (me == 4) event wait(snd_copied(2))
    if (allocated(snd_copied)) deallocate(snd_copied)
end program prova_post
  • OpenCoarrays Version: 1.9.0
  • Fortran Compiler: gfortran 7.1
  • C compiler used for building lib: gcc 7.1
  • Installation method: cmake
  • Output of uname -a: Linux yoda 2.6.32-642.11.1.el6.x86_64 tests dis_transpose: test passed  #1 SMP Fri Nov 18 19:25:05 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
  • MPI library being used: MPICH 3.2
  • Version of CMake: CMAKE-3.8.2

Observed Behavior

I am  image 2, I am posting to 4

(program hangs)

Expected Behavior

I am  image 2, I am posting to 4
 I am image 2, I have posted to 4

Steps to Reproduce

I am using a PBS script to run the program.
I have compiled the program using:

caf -o prova_post.x -g prova_post.f90

And I run it using the following script:

#!/bin/bash
#PBS -l nodes=2:ppn=2,walltime=04:00:00
#PBS -N caf_prova_post
#PBS -e caf_prova_post.err
#PBS -o caf_prova_post.out
#PBS  -W x="NACCESSPOLICY:SINGLEJOB"  
cd $PBS_O_WORKDIR

cafrun -np 4./prova_post.x>prova_post.out

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions