1
1
Граф коммитов

60 Коммитов

Автор SHA1 Сообщение Дата
Jeff Squyres
8724f59dbb Fix more fortran values
This commit was SVN r2786.
2004-09-21 00:25:08 +00:00
Jeff Squyres
017df2797b Update fortran constants for op's
This commit was SVN r2781.
2004-09-20 19:22:00 +00:00
George Bosilca
7707eedb51 Some additions for MPI2. At the page 297 in the MPI2 standard several new predefined datatypes are introducted.
This commit was SVN r2762.
2004-09-19 10:16:00 +00:00
Jeff Squyres
f559b54df4 Update some more mpif.h values -- still need to do something about
MPI_REQUEST_NULL, though.

This commit was SVN r2758.
2004-09-19 07:39:44 +00:00
George Bosilca
6788ad6681 The new datatype engine. With this commit the engine is completly imported in OpenMPI.
Better memory handling, faster it adapt it's behaviour to the low level driver and to the
datatype representation. However, only the TCP driver has been modified to fit the new engine.

For Fortran the MPI_DATATYPE_NULL is now registered at index 0 in the translation table.

This commit was SVN r2757.
2004-09-19 07:20:24 +00:00
George Bosilca
3482ab96d6 Update the definition of the Fortran MPI_DATATYPE_NULL.
This commit was SVN r2752.
2004-09-19 03:50:30 +00:00
Jeff Squyres
eb4279559e Some fixes for the attribute code:
- move the attribute init section in ompi_mpi_init() down below where
  communicators are setup (we need MPI_COMM_WORLD to be setup before
  attributes and keyvals are setup)
- removed confusing extra wrapper class around ompi_hash_table_t;
  looks like it was a victim of slow eroding of members so I put took
  it out back and put it out of its misery
- added preliminary definitions for all the pre-defined keyvals.
  Still need more work here to assign their initial values, but I
  think Edgar was running into an atrribute problem and it may have
  been that the pre-defined attrs didn't yet exist.
- removed some LAM-specific predefined keyvals from mpi.h

This commit was SVN r2695.
2004-09-16 00:00:09 +00:00
Jeff Squyres
f6f0cccbec First cut of MPI_File / io MCA component framework. This also
includes the romio component.  Only blocking operations are supported
-- non-blocking stuff is pending some changes in the top-level
progression engine, and some threaded issues need to be worked out.

This commit was SVN r2655.
2004-09-14 10:55:10 +00:00
Jeff Squyres
434a09fbf1 Fix a bad MPI function prototype
This commit was SVN r2529.
2004-09-07 21:38:46 +00:00
Jeff Squyres
2fc9f9181f Some infrastructure help for the F77 bindings:
- added src/mpi/f77/strings.[ch] for f<-->c string conversions
- added src/mpi/f77/constants* for instiantiating and providing macros
  to check for the various fortran address "constants" (read the
  comments in this file -- it's quite complicated, unfortunately :-\ ):
  - MPI_BOTTOM
  - MPI_ARGV_NULL
  - MPI_ARGVS_NULL
  - MPI_ERRCODES_IGNORE
  - MPI_STATUS_IGNORE
  - MPI_STATUSES_IGNORE
- updated fortran MPI_COMM_SET_NAME and MPI_COMM_GET_NAME to check
  string handling
- updated fortran MPI_RECV to check MPI_STATUS_IGNORE handling
- updated fortran MPI_COMM_SPAWN to check string and MPI_ARGV_NULL and
  MPI_ERRCODES_IGNORE handling
- partially modified src/mpi/f77/prototypes_mpi.h to account for
  string length parameters passed by the fortran compiler; more work to
  be done there
- backed out a silly previous change in send_f.c by me (duh)
- updated fortran MPI_COMM_DUP and MPI_COMM_FREE to check int<-->fint
  macros 

This commit was SVN r2512.
2004-09-04 22:02:18 +00:00
George Bosilca
f9114b22a6 Removing the complaint about the attribute functions when we compile a C++ file.
Second level commit log: "The Great and Powerful Jeff Squyres figured out and fixed this bug remotely. All praise Jeff." ;) yup yup

This commit was SVN r2304.
2004-08-25 17:44:06 +00:00
David Daniel
5ce8144d91 Probably an unpopular change, but...
In order to get consistent behaviour on linux with various gcc versions,
I am defining _GNU_SOURCE in ompi_config.h and changing the definition
of asprintf, etc.

Problems:
1) autoconf was defining _GNU_SOURCE for its tests, but we were not
setting it
2) g++ sets it by default (I think)
3) some version of gcc set it by default

If somebody knows a consistent solution for these problems then we can
revert to not setting it.

This commit was SVN r2230.
2004-08-19 19:27:15 +00:00
David Daniel
e865b75241 fixes for Solaris
This commit was SVN r2155.
2004-08-15 23:54:30 +00:00
Jeff Squyres
cfd5524ad5 Committing several things under one commit, but they're all at least
somewhat tied together and I'd rather have a consistent commit rather
than several smaller commits that individually break the tree:
- first cut of src/file/file.c: MPI_File handling.  More to come here.
- tweaked MPI_Info handling a bit: cause MPI_Info_f2c to invoke error
  handler if provided index is out of range (vs. returing
  MPI_INFO_NULL without invoking an error handler)
- moved general MPI MCA params off into their own .h and .c file (so
  that ompi_info can call it and therefore display MPI MCA params)
- first [abbreviated] cut of src/mca/io/base/* -- much more to come
  here; stripped down to basics for this commit
- filled in a small number of MPI_File* functions for testing purposes
- updated a bunch of doxygen docs
--> Unresolved questions about MPI_ERRORS_RETURN, MPI_ERRORS_ABORT,
    and MPI::ERRORS_THROW_EXCEPTIONS because of vagueness in MPI
    standard -- Edgar and I are discussing what to do here
--> Unresolved questions about what to do in a case like this:
      MPI_File_open(..., &file);
      MPI_File_close(&file);
      MPI_File_read(..., &file);
    because MPI-2:9.7 says that the default error handler on MPI_File
    handles is MPI_ERRORS_RETURN -- we can't even print a warning
    here!  This certainly violates the Law of Least Astonishment for
    MPI users (who certainly expect MPI functions that fail to
    complain loudly and to abort by default).

This commit was SVN r2136.
2004-08-14 01:56:05 +00:00
Jeff Squyres
50ef741777 Temporary fix -- Edgar is going to go home and look up proper, modern
fortran 77 syntax for strings.  Stupid fortran!

This commit was SVN r2133.
2004-08-13 20:43:54 +00:00
Jeff Squyres
2693c5791c Edgar correctly pointed out that I declared the SVN character string
incorrectly

This commit was SVN r2130.
2004-08-13 20:06:48 +00:00
Jeff Squyres
7cf2055530 Make OMPI_SVN_VERSION be a string in mpif.h.in
This commit was SVN r2127.
2004-08-13 19:46:09 +00:00
Jeff Squyres
726af9ea85 Revamp MPI_Info handling a bit:
- fix a few bugs
- convert/add doxygen comments for internal info functions in
  src/info/info.h (some comments were originally in src/info/info.c)
- make it thread safe
- make MPI_INFO_NULL be a real object (vs ((struct ompi_info_t*) 0))
- add error checking into top-level MPI functions
- add support in MPI_Info for "never freeing MPI handles" as a form of
  debugging i.e., check if see if you accidentally use a freed handle)
- add support for "print out a list of un-freed MPI_Info handles
  during MPI_FINALIZE"

This commit was SVN r2089.
2004-08-12 16:56:24 +00:00
David Daniel
ac36e0fc27 Adding conditionals for portable (v)asprintf and (v)snprintf implementations
This commit was SVN r2026.
2004-08-10 22:41:17 +00:00
Jeff Squyres
a721849e84 While waiting for a lengthy compile, I noticed a bunch of old remnants
from the "LAM/MPI" -> "Open MPI" name change that didn't convert
properly.  So this commit fixes all instances of "OMPI/MPI" to "Open
MPI".

This commit was SVN r1924.
2004-08-06 14:30:18 +00:00
Jeff Squyres
2399ac3cf8 Check for case where we *have* <stdbool.h>, but it doesn't *work*
(e.g., Portland compilers don't have/know about <stdbool.h>, but
AC_CHECK_HEADERS will typically find the GNU/gcc <stdbool.h>).
Reviewed by Brian.

This commit was SVN r1889.
2004-08-05 11:12:25 +00:00
Jeff Squyres
5337c8043f Oops -- macros not defined.
This commit was SVN r1796.
2004-07-22 17:15:08 +00:00
Jeff Squyres
a061f0f19d Ensure that we install the ompi_config.h file with 0644 perms, not
influenced by the user's default umask

This commit was SVN r1794.
2004-07-22 14:51:53 +00:00
Jeff Squyres
9120b406b8 Ensure to include ompi_stdint.h
This commit was SVN r1779.
2004-07-18 12:41:52 +00:00
Jeff Squyres
949bf3f51d Fix fortran bindings on systems with weak symbols
This commit was SVN r1773.
2004-07-17 20:10:03 +00:00
George Bosilca
c1f0e9bcc2 Change the datatype MPI_DATATYPE_NULL from NULL to a real datatype delacred
in src/datatype/dt_module.c. Now we can easily test for all the correct
flags on send and receive (like datatype commit ...)

This commit was SVN r1768.
2004-07-16 21:06:37 +00:00
Jeff Squyres
b3a98bab00 Add some protection for redefining malloc/realloc/free -- we do not
want to do this in the C++ MPI bindings.

This commit was SVN r1713.
2004-07-14 15:13:32 +00:00
Brian Barrett
000644007f * C++ MPI bindings. MPI:: only
This commit was SVN r1712.
2004-07-14 14:11:03 +00:00
Brian Barrett
25e7107517 * doh! I can't read. Only DELETE should be void*, the others should have
a last argument of int*.  Go back to the previous way for the others.

This commit was SVN r1658.
2004-07-13 04:58:39 +00:00
Brian Barrett
d71d949620 * fix prototypes for the strange COPY, DUP, DELETE functions - last argument
should be void* not int*

This commit was SVN r1654.
2004-07-13 04:41:55 +00:00
Jeff Squyres
a5a712b31f Lots of changes in this commit, mostly having to do with the first
real commit of the collectives.  MPI_SCAN and MPI_EXSCAN are still not
implemented, but lots of other things are in the critical path and
holding up other people, so it's ok to commit without them:

- better checks for sizes in configure, and add defaults for fortran
  sizes if we don't have a fortran compiler
- fix some logic that was accidentally broken for size checks for the
  file type offset_t
- add some C equivalent types for fortran's complex and double complex
  (for use in internal reduction/op functions)
- additionals and slight reorganization of ompi_mpi_init()
  ompi_mpi_finalize()
- fully implement all top-level MPI collective calls, including all
  param checking for both intra- and inter-communicators (woof)
- change the communicator_t type for stuff that we need in coll, and
  update all references throughout the code base to match
- all kinds of updates to the coll framework base
- next cut of the basic coll module -- has all intracommunicator
  collectives implemented except scan and exscan (see note above).
  All intercommunicator functions return ERR_NOT_IMPLEMENTED.
- MPI_Op is a fixed implementation -- not component-ized yet.  So
  there are generic C loops for all implementations.

This commit was SVN r1491.
2004-06-29 00:02:25 +00:00
Tim Woodall
84dd3084b0 backed out changed to OMPI_THREAD_LOCK
This commit was SVN r1469.
2004-06-24 21:09:55 +00:00
Tim Woodall
9b830472fd changed THREAD_LOCK/THREAD_UNLOCK to OMPI_THREAD_LOCK/OMPI_THREAD_UNLOCK
to prevent conflicts w/ external libraries/headers

This commit was SVN r1467.
2004-06-24 20:51:46 +00:00
Edgar Gabriel
e01d115dee updated the fortran constants of error codes/classes and group/communicator constants
This commit was SVN r1404.
2004-06-17 22:51:07 +00:00
Edgar Gabriel
37b9a01025 updated the MPI error codes to be positiv. Completed the list
with all MPI-2 error codes, even if we are not using all of them at the moment.

This commit was SVN r1401.
2004-06-17 22:38:45 +00:00
George Bosilca
ccca0451f7 Update the file to declare the MPI_INTEGER1 and MPI_REAL2
This commit was SVN r1400.
2004-06-17 22:15:34 +00:00
George Bosilca
1e4dcd7f61 Remove the second prototypes for some functions.
This commit was SVN r1379.
2004-06-17 19:16:33 +00:00
George Bosilca
e1942d9068 Add the attribute default copy & delete functions for all types of objects: communicators, datatypes and
windows. Add the MPI 1 function to.

This commit was SVN r1372.
2004-06-17 18:29:35 +00:00
George Bosilca
8ba6f49786 Update the fortran datatype indexes.
This commit was SVN r1341.
2004-06-17 00:04:39 +00:00
Tim Woodall
abba2b038c - removed src/mem directory
- moved mem/free_list.h to class/ompi_free_list.h
- moved mem/malloc.h to util/malloc.h
- added src/mca/mpool component type

This commit was SVN r1274.
2004-06-15 19:07:45 +00:00
David Daniel
2f96ba71fe renaming files
This commit was SVN r1192.
2004-06-07 15:40:19 +00:00
David Daniel
563ac2a338 First pass of lam -> ompi conversion
This commit was SVN r1191.
2004-06-07 15:33:53 +00:00
Edgar Gabriel
5f570a8b62 modified the value of MPI_COMM_NULL to two, since we need to have a valid
entry in the f_to_c translation table for this object. We still wanted
to be MPI_COMM_WORLD zero and MPI_COMM_SELF 1.

Reviewed and agreed by Jeff.

This commit was SVN r1146.
2004-05-21 19:30:39 +00:00
Vishal Sahay
62e5cbea60 Remove typos and add one more defn
This commit was SVN r1127.
2004-05-07 23:45:40 +00:00
Jeff Squyres
e4bbefd57b Fix for bug 845: elminiated an #if/#endif block that is only necessary
if we're going to suport non-ANSI compilers (in which case we would
need a corresponding #else block with a set of non-ANSI typedefs),
which we're not going to do.  :-)

This commit was SVN r1102.
2004-04-28 01:52:56 +00:00
George Bosilca
d45d74b36c Add the type for 2 more MPI predefined datatypes: lam_mpi_2cplex and lam_mpi_2dblcplex.
This commit was SVN r1100.
2004-04-27 18:26:05 +00:00
Prabhanjan Kambadur
ca48b3962b Changing some prototypes and also changing the functions. There were some spelling mistakes and other problems. Also commiting the MPI topology functions
This commit was SVN r1075.
2004-04-21 20:55:54 +00:00
Jeff Squyres
4be63d8cd2 Forgot to fix op global names, and forgot to add global for op_null.
Oops.

This commit was SVN r1063.
2004-04-20 23:10:05 +00:00
Jeff Squyres
7177358f23 Doh! Fix typo.
This commit was SVN r1060.
2004-04-20 22:35:13 +00:00
Jeff Squyres
ea6b6c4fd5 - Remove some extraneous ()'s
- Add type for MPI_OP_NULL
- Rename global op intrinsics
- Change errhandler globals back to instances, not pointers

This commit was SVN r1059.
2004-04-20 22:18:26 +00:00