[Mpi3-rma] MPI-3.1 RMA planning
dinan at mcs.anl.gov
Fri Aug 3 14:48:56 CDT 2012
I second this discussion. I would like to see an option for users to specify the type of data in the window rather than a disp_unit in bytes.
I also think we should consider adding MPI_Win_shared_get_attr() and deprecating MPI_Win_shared_query().
----- Original Message -----
From: "Pavan Balaji" <balaji at mcs.anl.gov>
To: mpi3-rma at lists.mpi-forum.org
Sent: Thursday, July 26, 2012 12:27:39 PM
Subject: Re: [Mpi3-rma] MPI-3.1 RMA planning
>> 2. The disp_unit is a weird semantic which is really meant to
>> demonstrate what datatype I will be using. We are jumping through hoops
>> to get the same_size and same_disp_unit measures which make little sense
>> on heterogeneous systems. The correct way to do this would have been to
>> not take a disp_unit parameter at all, and instead take a MPI_Datatype
>> parameter. In this case, two different processes can give MPI_INT but
>> have different type sizes. That adds better safety checks in MPI.
> Maybe, but for some reasons, RMA windows are completely specified with
> bytes. I am not sure what the reason for this was.
>> Unfortunately, all our window creation routines are screwed up in this
>> manner. We should consider adding MPI_Win_create_type,
>> MPI_Win_allocate_type, MPI_Win_allocate_shared_type in MPI-3.1 and
>> deprecating the older routines. It would have been much better to do
>> this in 3.0, but it's not a small change.
> Ugs, this makes me shiver. I agree in principle, but it's ugly.
This is just a starting point for discussion. I was just trying to
illustrate the problem and give a starting recommendation for
discussion. The underlying issue is that using bytes directly is a bad
model in MPI, whether it is for send/recv or RMA.
More information about the mpiwg-rma