Return-Path: Received: (from listserv@localhost) by mcs.anl.gov (8.9.3/8.9.3) id JAA26390 for mpifrm-mpi-21-outgoing; Thu, 19 Jul 2001 09:53:06 -0500 Received: from e1.ny.us.ibm.com (e1.ny.us.ibm.com [32.97.182.101]) by mcs.anl.gov (8.9.3/8.9.3) with ESMTP id JAA20052 for ; Thu, 19 Jul 2001 09:53:04 -0500 Received: from northrelay02.pok.ibm.com (northrelay02.pok.ibm.com [9.117.200.22]) by e1.ny.us.ibm.com (8.9.3/8.9.3) with ESMTP id KAA49978 for ; Thu, 19 Jul 2001 10:50:28 -0400 Received: from d01ml064.pok.ibm.com (d01ml064.pok.ibm.com [9.117.250.179]) by northrelay02.pok.ibm.com (8.11.1m3/NCO v4.96.1.0) with ESMTP id f6JEk4i136034 for ; Thu, 19 Jul 2001 10:46:05 -0400 Subject: MPI_Alltoallw error in MPI-2 To: mpi-21@mpi-forum.org X-Mailer: Lotus Notes Release 5.0.5 September 22, 2000 Message-ID: From: "Richard Treumann" Date: Thu, 19 Jul 2001 10:51:17 -0400 X-MIMETrack: Serialize by Router on D01ML064/01/M/IBM(Release 5.0.8 SPR #MIAS4UTJ8H |June 21, 2001) at 07/19/2001 10:52:25 AM MIME-Version: 1.0 Content-type: text/plain; charset=us-ascii Sender: owner-mpi-21@mpi-forum.org Precedence: bulk Reply-To: mpi-21@mpi-forum.org The response that we cannot break anything in MPI so cannot fix MPI_Alltoallw is not unexpected. The oversight in making so many things in MPI-1 "int" which should have been MPI_Aint will hobble MPI for years into the 64 bit future. MPI-1 recognized that certain subroutine arguments were really disguised addresses but overlooked the related detail that many more should be able take values tied to the address space. COUNT in data type creation and send/recv is the classic example. Displacements in multiples of datatype extent is another. Neither one is an address in disguise but both can become larger that 2**31-1 in a 64 bit application. By the time people fully recognized the problem there were millions of line of MPI code using the defined bindings. Breaking so much code was clearly not going to be acceptable. I would very much like to see MPI_Alltoallw fixed but if that cannot be accepted then we should immediately deprecate it and define a substitute that is correct. If we must go this way, can we pick a new name and define the binding very soon? I do not support Hans-Christian's suggestion that MPI make "quality of implementation" comments about the size of an "int". This is something decided first by hardware architects and second by compiler writers. The MPI implementer has little chance to affect the size of an integer on any 64 bit system. Maybe someday the 32 bit integer will vanish but if it does, it will be a painful transition for legacy codes of all kinds and will not be because MPI implementers wanted it to. It will be because hardware architects say they cannot continue to build 64 bit machines with state of the art overall performance and still deal with 32 bit integers at any useful level of performance. Regards - Dick Dick Treumann RS/6000 SP Development IBM Poughkeepsie Unix Development Lab Dept 0lva / MS P963 -- 2455 South Road -- Poughkeepsie, NY 12601 Tele (845) 433-7846 Fax (845) 433-8363