A problem with memory deregistration

Marco Corbatto <[email protected]>
Newsgroups gmane.network.myrinet.general
Message-ID <[email protected]>
Hi,
Using mpich-1.2..3 we get a problem with memory deregistration
using the synchronous send (MPI_Ssend) of a datatype with size >16KB.
The problem doesn't appear either using MPI_Send or sending contiguous
buffers.
 
For example running the following code:  

#include "mpi.h"  
#include <stdio.h>
 
int main(int argc,char **argv)  {
    int myid, namelen; 
    char processor_name[MPI_MAX_PROCESSOR_NAME]; 
    MPI_Status status; 
    float v1[3000],v2[3000]; 
    int ArrayLength[2]; 
    MPI_Aint ArrayOffset[2]; 
    MPI_Datatype ArrayTipi[2] = {MPI_FLOAT, MPI_FLOAT}; 
    MPI_Datatype dtype; 
 
    MPI_Init(&argc,&argv); 
    MPI_Comm_rank(MPI_COMM_WORLD,&myid); 
    MPI_Get_processor_name(processor_name,&namelen); 
 
    ArrayLength[0]=ArrayLength[1]=3000; 
    MPI_Address(v1, &(ArrayOffset[0])); 
    MPI_Address(v2, &(ArrayOffset[1])); 
    MPI_Type_struct(2,ArrayLength,ArrayOffset,ArrayTipi,&dtype); 
 
    fprintf(stderr,"Process %d on %s\n", myid, processor_name); 
    if (myid == 0) 
        MPI_Ssend(MPI_BOTTOM, 1, dtype, 1, 99, MPI_COMM_WORLD); 
    else
        MPI_Recv(MPI_BOTTOM, 1, dtype, MPI_ANY_SOURCE, 99, MPI_COMM_WORLD,&status); 
    MPI_Barrier(MPI_COMM_WORLD); 
    MPI_Finalize(); 
}     

we get the following message:
 
Process 0 on n1
Process 1 on n2
Unexpected state for clear_interval:zone=0x8000000:benice=1,s=0xe4,e=0xeb,i=0xe5,j=0xe5,registered[j]=1,refcount[j]=1
9305 vvvvvv dump_reg_cache vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv
regcache.c:132: failed assertion: "0".
9305 from 0x8000000 length 0xe4000,registered=0 refcount=0 
9305 from 0x80e4000 length 0x7000, registered=1 refcount=1
9305 from 0x80eb000 length 0x315000, registered=0 refcount=0
9305 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ 

probably because there is an attempt to deregister a region
with refcount !=0 

Thanks in advance
Marco
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.