1
1

1109 Коммитов

Автор SHA1 Сообщение Дата
George Bosilca
31fa688e67 Look like the correct way to detect the microsoft compilers is to check for _WIN32 and not WIN32.
This commit was SVN r8402.
2005-12-07 22:56:10 +00:00
George Bosilca
35f8ce5bbf Move the win32 from ompi directly into the include directory.
This commit was SVN r8401.
2005-12-07 22:50:55 +00:00
Craig E Rasmussen
d77f418fc9 Initial version.
This commit was SVN r8399.
2005-12-07 16:39:34 +00:00
George Bosilca
5851b55647 Improve the latency for small and medium messages. The idea is to decrease the
number of recv system call by caching the data. Each endpoint has a buffer
(the size is an MCA parameter) that can be use as a cache. Before each receive
operation this buffer is added at the end of the iovec list. All data that are
not expected by the fragment will go in this cache. If the cache contain data
all subsequent receive will just memcpy the data into the BTL buffers.

The only drawback is that we will spin around the receive_handle until all the
cached data is readed by the PML layer. This limitation come from the fact that
the event library is unable to call us if there is no events on the socket.
Therefore we are unable to keep the data in the cache until the next loop
into the progress engine.

This commit was SVN r8398.
2005-12-07 00:12:59 +00:00
Tim Woodall
bce1d2e220 volatile not required for non-threaded case
This commit was SVN r8392.
2005-12-06 18:27:56 +00:00
Brian Barrett
38391e3406 disable shared receive queue support at compile time if the mvapi implementation
does not support shared receive queues (such as the one shipped by SilverStorm / 
Infinicon for OS X).  Reviewed by Galen.

This commit was SVN r8389.
2005-12-06 15:46:30 +00:00
Brian Barrett
7998cca0f3 - don't try to read the LIBS info from ROMIO's configure script if running
the script did not complete successfully
- ROMIO likes to default to using the system compiler if no compiler is
  specified.  This can lead to using a different compiler for ROMIO as
  for Open MPI, which is not always a good thing.  Reset the default to
  behave the same way Open MPI does.

This commit was SVN r8380.
2005-12-05 23:54:27 +00:00
Tim Woodall
3f396aeae9 fix send to self for large messages
This commit was SVN r8379.
2005-12-05 23:36:33 +00:00
Jeff Squyres
5f949b567d forgot to commit this long ago
This commit was SVN r8378.
2005-12-03 15:38:42 +00:00
Rich Graham
137703da29 add some comments.
This commit was SVN r8376.
2005-12-03 00:14:58 +00:00
Tim Woodall
e135f850af backed out to much :-)
This commit was SVN r8356.
2005-12-01 17:32:27 +00:00
Tim Woodall
394bf196bd back out changes to match only one probe - consensus was we should
allow this if multiple threads post multiple probes

This commit was SVN r8353.
2005-12-01 17:17:06 +00:00
Tim Woodall
53a33f3bed dont allow fragment to match more than one probe
This commit was SVN r8352.
2005-12-01 17:06:40 +00:00
Tim Woodall
8c443832ae add a parameter to limit max number of btls (HCA ports used)
This commit was SVN r8342.
2005-11-30 22:18:21 +00:00
Tim Woodall
d7c1c23e3f corrections for handling probe with out of order delivery
- when processing out of order list - reset match to null on each iteration
- check matched request type and if probe - complete probe and queue fragment
  on unexpected list

This commit was SVN r8339.
2005-11-30 17:57:59 +00:00
Brian Barrett
72bb35a814 * don't build the ROMIO request f2c and c2f routines. We don't use them
(because we wrap ROMIO requests as first class OMPI requests).

This commit was SVN r8338.
2005-11-30 15:37:14 +00:00
Brian Barrett
7afad13808 * minor cleanup to remove warning
This commit was SVN r8337.
2005-11-30 14:43:52 +00:00
Jeff Squyres
6149b5fec8 Change from old-C-style casting to get rid of const to proper
const_cast<>-style casting.  For the rationle behind this, see:

http://www.open-mpi.org/community/lists/users/2005/11/0391.php

This commit was SVN r8327.
2005-11-30 03:22:27 +00:00
George Bosilca
b47aa5c142 If pending_length is not zero the datatype engine believe that a partial conversion is still in the buffer attached to the convertor. We have to force it to zero for all new convertors. This bug is still half fixed until I figure out a correct way to do it when we clone a convertor ... Anyway, this future correction will not affect open mpi.
This commit was SVN r8324.
2005-11-30 00:16:58 +00:00
Jeff Squyres
20eebeaa14 MPI_TESTANY is described in MPI-1 p46. The last 2 full paragraphs of
the page address three situations:

1. if the array of requests are all REQUEST_NULL, set flag=true and
   index=MPI_UNDEFINED
2. if the array of requests are not all REQUEST_NULL, if any of them
   finished, set flag=true and index=whatever_the_index_was
3. if the array of requests are not all REQUEST_NULL, if none of them
   finished, set flag=false and index=MPI_UNDEFINED

With regards to the index value, we are currently doing 1 and 2, but
not 3.  More specifically, index should be set to MPI_UNDEFINED if no
requests are found to have completed (regardless of whether they are
REQUEST_NULL or not).

This patch fixes this problem.

This commit was SVN r8319.
2005-11-29 23:41:04 +00:00
Brian Barrett
a46d0d3801 Add support to Open MPI for MPI_Register_datarep, as ROMIO now has support for the
functionality.  This is a global registration, so all components have to be made
aware of the registration -- therefore, do things at the component level, not the
module level.

This commit was SVN r8314.
2005-11-29 18:25:35 +00:00
Tim Woodall
5db38b38f5 corrections for latency issue
- don't do additional select until non-blocking read fails 
- don't do an additional read for 0 byte message

This commit was SVN r8312.
2005-11-29 17:33:01 +00:00
Brian Barrett
6bd76c8f91 * prefix the newest of the ROMIO MPI interface functions
This commit was SVN r8311.
2005-11-29 15:45:00 +00:00
Brian Barrett
f35d5d67a8 * PGI compilers found this little bugglet in ROMIO - check the datatype, not
the count when using the DATATYPE check macro....

This commit was SVN r8310.
2005-11-29 14:56:30 +00:00
George Bosilca
cae4b603f4 First cut of the checksum capabilities for the convertor. Right now it's always set to zero, but it will change shortly.
This commit was SVN r8305.
2005-11-29 06:33:21 +00:00
Brian Barrett
79bf8843d2 * update memory hooks interface to allow for callbacks on both allocations
and dealllocations, per request from Galen and Tim

This commit was SVN r8303.
2005-11-29 04:46:14 +00:00
Brian Barrett
8b9a539986 * update ROMIO with the version from MPICH 1.2.7p1, marked as version
2005-06-09

This commit was SVN r8300.
2005-11-29 01:41:53 +00:00
George Bosilca
9d990af4a5 Remove 2 useless functions. They have been replaced by the mca_base version few commits ago.
This commit was SVN r8287.
2005-11-28 20:14:23 +00:00
Galen Shipman
55a9fbefd8 fix misc compiler warnings..
This commit was SVN r8263.
2005-11-27 22:53:30 +00:00
George Bosilca
bfa4a40983 Cast it the a well known type to remove a warning.
This commit was SVN r8261.
2005-11-26 21:17:15 +00:00
George Bosilca
b9a739e2b6 Remove 2 useless assignments (they are done at the end before the return).
This commit was SVN r8260.
2005-11-26 21:16:30 +00:00
George Bosilca
011e46017f Match the latest changes on the TEG PML (increase ompi_request_completed when a request is
finished).

This commit was SVN r8259.
2005-11-26 21:06:37 +00:00
Rainer Keller
bf0892bb32 - Implement correct Fortran Logical-handling in f77/f90 interface in
case of:
    sizeof(MPI_Flogical) != sizeof (int)
  and
    Fortran value of .TRUE. != 1
  as is often the case.
- Check in configure the value of .TRUE., the C-type coresponding to
  logical and check, that fortran compiler does not do something strange
  with arrays of logicals
- Convert all occurrences of logicals in the fortran wrappers, only
  in case it is needed.
  *Please note* Implementation of MPI_Cart_sub needed special treatment.
- Output these value in ompi_info -a
- Clean up the prototypes_mpi.h to just have a single definition and
  thereby deleting the necessity for prototypes_pmpi.h

- configured, compiled and tested with F90-program, which uses
  MPI_Cart_create and MPI_Cart_get:
  linux ia32, gcc (no testing, as no f90)
  linux ia32, gcc --disable-mpi-f77 --disable-mpi-f90 (had a bug there)
  linux ia32, icc-8.1
  linux opteron, gcc-3.3.5, pgcc, pathccx/pathf90 (tested just
pgi-compiler)
  linux em64t, gcc, icc-8.1 (tested just icc)

This commit was SVN r8254.
2005-11-24 16:52:35 +00:00
George Bosilca
00c10a6372 Make the MX BTL startup scalable. When the number of processes involved in the MPI application
increase the previous connection code was broken. It can take as much as 60 seconds to connect
64 processes. Now we do not create the connections when we add the procs but only when we send
them the first message. Now it take only 1.6 seconds to setup a 64 procs MPI job over MX (doing a 2 steps barrier in order to insure that we create all the connections).

This commit was SVN r8252.
2005-11-23 23:48:56 +00:00
Edgar Gabriel
83cef7f8ac in scatterv we tested unfortunatly the wrong datatype for the
displacement (for both the inter and intra-communicator version). The
displacements in scatterv are given in multiples of the sendtype.
This fix should probably make to v1.0.1 as well?

This commit was SVN r8251.
2005-11-23 21:42:45 +00:00
Jeff Squyres
6b823e3663 Remove a little extra memory that is no longer needed
This commit was SVN r8246.
2005-11-23 11:16:59 +00:00
Edgar Gabriel
c96e4d43c7 fixes for other routines which take an MPI-2 byte displacement or an address as
an argument.

This commit was SVN r8244.
2005-11-23 03:52:19 +00:00
Edgar Gabriel
a1b00e0a49 fixing the fortran interface for MPI_Get_address. Since the address
argument is defined to be 

integer (KIND=MPI_ADDRESS_KIND)

we have to map that to an MPI_Aint in the f->c interface, else the
typecast back from the C to the Fortran interface will be wrong as well.
The same holds (at least) for all other new MPI-2 datatype functions
which take a byte-displacement or an address as an argument.

This commit was SVN r8243.
2005-11-23 03:22:50 +00:00
Edgar Gabriel
b6ddb73f38 fixing the condition under which the values of the c-functions are
passed back to the fortran routines. Should probably go to v1.0.1, but
is unfortunatly just half of the overall fix. 

This commit was SVN r8242.
2005-11-23 03:12:40 +00:00
George Bosilca
58ba8f033d Handle the case when there is no F77 support available for us.
This commit was SVN r8238.
2005-11-22 21:52:14 +00:00
George Bosilca
7c73095440 Update the correct sended size.
This commit was SVN r8237.
2005-11-22 21:51:04 +00:00
Tim Woodall
b06335abe2 start of a pml for data reliability
This commit was SVN r8236.
2005-11-22 17:24:47 +00:00
Jeff Squyres
9812694227 Ensure to instantiate MPI_F_STATUS_IGNORE and MPI_F_STATUSES_IGNORE.
Thanks to Anthony Chan for pointing this out.

Note that these will only work for the Fortran compiler that Open MPI
was configured with -- since these values, are, by definition,
single-value, they cannot support all 4 values that Open MPI may
generate for the different Fortran name-mangling schemes.  A lengthy
comment in ompi_mpi_init.c explains this in more detail.  Added to the
README to explain this situation, as well as the forthcoming
.TRUE. Fortran fixes.

This commit was SVN r8231.
2005-11-22 15:24:39 +00:00
George Bosilca
bec02702b7 Remove a static build conflict between UNIQ and TEG. Change the mca_pml_base_ptl_t to mca_pml_uniq_ptl_t
This commit was SVN r8227.
2005-11-22 03:44:18 +00:00
George Bosilca
1aa6d27ffe Remove all the compilation warnings I found including unused variables and functions.
This commit was SVN r8226.
2005-11-22 03:42:15 +00:00
Brian Barrett
20cea60b82 * fix "make distclean" error in PML
* turns out (duh!) that there was a reason that the <projectdir>dir
  variable was set in the AM conditional.  If not, stupid directories
  are created and not needed...  duh.

This commit was SVN r8205.
2005-11-20 07:41:09 +00:00
Brian Barrett
8faa1884f0 * The last of the build system optimizations. Combine the component and
component/base Makefile.am files, reducing the time configure spends
  stamping out Makefiles at the end
* Install base_impl.h file when devel-headers are being installed

This commit was SVN r8200.
2005-11-20 01:03:01 +00:00
Jeff Squyres
ebd97afdac - Make the types of the MCA param variables be "int", not "int32_t"
- Separate out the registration of the MCA params into a standalong
  function that is invoked by ompi_mpi_init() (so that ompi_info can
  see these params)
- Rename the params to "mpi_ddt_*" instead of "datatype_*" so that
  they fit into the common naming scheme

This commit was SVN r8196.
2005-11-18 22:51:11 +00:00
Galen Shipman
eb3ccdb4d8 make compiler happy on false postive warning..
This commit was SVN r8192.
2005-11-18 18:48:11 +00:00
Galen Shipman
4fce90a37b one last warning fixed on 32 bit platforms.
This commit was SVN r8191.
2005-11-18 17:27:09 +00:00