PTL logo

From: Bachar Dedi [Netanya] (david.bachar_at_[hidden])
Date: 2010-08-08 01:20:35


My name is David and I am a programmer who uses One of my
application needs is to pass a large amount of bytes (a 60 MB file)
between the ranks.
I recently encountered a problem , I'm getting the one of follow
 "AccessViolationException: Attempted to read or write protected memory.
This is often an indication that other memory has been corrupted."
job aborted:
[ranks] message

[0-20] terminated

[21] fatal error
Fatal error in MPI_Iprobe: Internal MPI error!, error stack:
MPI_Iprobe(125)..................: MPI_Iprobe(src=MPI_ANY_SOURCE,
tag=MPI_ANY_TAG, MPI_COMM_WORLD, flag=0x00000000002AE428,
status=0x00000000002AE410) failed
MPIDI_CH3I_Progress_shm(93)......: shared memory read progress failed
MPIDI_CH3I_SHM_read_progress(312): shared memory read progress unable to
handle incoming packet
MPIDI_CH3U_Handle_recv_pkt(184)..: received unknown packet type
 [22-24] terminated

Or another exception regarding MPI_ALLOC_MEM.

I'm trying to see if I understand the memory allocation process, and the
problem and to see if there is any solution.

If I understand correctly when I use the send message, the MPI
communicator actually allocates an unmanaged memory on the stack and
copies the managed data into it and then when I receive the data on the
receiver rank it is copied into a new managed memory block and then the
unmanaged memory (in the sender process) is freed. Is what I described
so far correct?

Now the important issue is how do I try and solve the problem. I didn't
quite understand why the allocated memory was not enough and how can I
guarantee it will be enough in my case. Or why there is a try to access
outside of the memory borders.
Another question is: does this problem occur only with large byte
arrays? If I will change my message to contain a constant size byte
array (e.g. byte[50000]) will this solve the problem?

Thank you in advance,

* Mobile: 054-9981887
* Office: 09-8864730
* David(Dedi) Bachar <mailto:david.bachar_at_[hidden]>

The information in this e-mail transmission contains proprietary and business
sensitive information. Unauthorized interception of this e-mail may constitute
a violation of law. If you are not the intended recipient, you are hereby
notified that any review, dissemination, distribution or duplication of this
communication is strictly prohibited. You are also asked to contact the sender
by reply email and immediately destroy all copies of the original message.