1
1

138 Коммитов

Автор SHA1 Сообщение Дата
Tim Woodall
ce03565c4f - exchange procs arch/byte ordering at startup
- added tcp ptl support for heterogenous architectures

This commit was SVN r3075.
2004-10-12 21:50:25 +00:00
Tim Woodall
0d58bace41 cleanup compiler warnings
This commit was SVN r3072.
2004-10-12 20:29:31 +00:00
Tim Woodall
7219f2d4f2 handle requests not completing initially due to resource exhaustion
This commit was SVN r3071.
2004-10-12 19:34:31 +00:00
Tim Woodall
a86dc99b02 call the appropriate constructors
This commit was SVN r3067.
2004-10-12 16:14:12 +00:00
Tim Woodall
0df8ca90ea small re-org of request completion - moved test/wait out of pml
This commit was SVN r3066.
2004-10-12 15:50:01 +00:00
Tim Woodall
aa07811da5 intialize variables
This commit was SVN r3065.
2004-10-12 15:18:43 +00:00
George Bosilca
acca9f2f5e Improuve the logi of the wait function. I add a label simply because it was more convenient and faster than using additional variable to get out of the double loops.
This commit was SVN r3047.
2004-10-11 15:42:22 +00:00
George Bosilca
22418fb788 Change the PML logic a little bit. If there are several path between 2 nodes, I dont need message multiplexing, just fragments. So when we create the request we always pick up the first PTL attached to the destination. Now a communication between 2 nodes with small messages will always take the same path.
This commit was SVN r3046.
2004-10-11 15:40:36 +00:00
George Bosilca
da97ee8eba Typo ...
This commit was SVN r3044.
2004-10-11 15:36:01 +00:00
Jeff Squyres
31f6c00f3f Initialize a previously-uninitialized variable
This commit was SVN r3032.
2004-10-10 15:18:48 +00:00
George Bosilca
a62dafec84 Behave as expected by the MPI layer.
Use the defines from the mpi.h
Release the correct request.
Set the correct status
And return MPI_UNDEFINED if all requests are MPI_REQUEST_NULL.

This commit was SVN r3028.
2004-10-10 01:12:42 +00:00
Rich Graham
145ce7d68c set pointer to fragment matching logic routine, if this
not already set by the ptl - reviewed by tim.

This commit was SVN r2964.
2004-10-06 22:10:43 +00:00
Jeff Squyres
c3c63b57c4 Arf. Anju and I misunderstood each other yesterday -- the OMPI_EXPORT
thingy needs to go on the *declaration*, not the *definition*.  Well,
at least this was all done en masse and via an automated mechanism, so
total time wasted was only about 15 minutes...

This commit was SVN r2858.
2004-09-24 18:33:36 +00:00
Jeff Squyres
044d5da589 More late-night hacking -- add OMPI_EXPORT to the component struct in
every component.

This commit was SVN r2857.
2004-09-24 10:42:55 +00:00
Jeff Squyres
ae6ce15c85 Fix a bunch of compiler warnings. Some were actual problems; others
were the compiler unable to deduce that the action really was safe.

This commit was SVN r2852.
2004-09-24 07:51:26 +00:00
Tim Woodall
41fa392177 cleanup mess from macro change
This commit was SVN r2626.
2004-09-13 11:55:27 +00:00
Tim Woodall
c592e6af28 include recv request
This commit was SVN r2625.
2004-09-13 11:49:25 +00:00
Tim Woodall
573c45a3be correctly release recv resources in wait/test (e.g decrement communicator reference count)
This commit was SVN r2624.
2004-09-13 11:47:25 +00:00
Tim Woodall
0854d03744 comments
This commit was SVN r2571.
2004-09-09 21:34:58 +00:00
Tim Woodall
8de416c25d Modified per ptl request cache to honor the request limit - However, if the
cache limit is exceeded - a request is allocated from the global pool. A flag
mca_pml_base_send_request.req_cached has been added to the request so that the
ptl can determine wether the request came from the cache and hence has been 
initialized via the ptls ptl_request_init method. If not - the ptl is responsible
for allocating the resources required to handle the request - or potentially queue
the request until resources become available.

This commit was SVN r2570.
2004-09-09 21:31:49 +00:00
Tim Woodall
16d250b376 - integration of gpr/ns/oob w/ mpirun2
This commit was SVN r2344.
2004-08-28 01:15:19 +00:00
David Daniel
927ef83454 This is a large check-in related to switching from
os/atomic.h  -->  include/sys/atomic.h

WARNING:  There are almost certainly some bugs introduced here, but I
believe that using this system will get us to a stable and portable
library faster in the long run.

Other changes:

threads/mutex

  Reorganized to use pthreads or asm atomic operations as available.
  Untested Windows implementation added using InterlockedExchange() funcion.

threads/thread

  Added an untested Windows implementation

other places

  Updates to include the "right" header files or to use
  ompi_atomic_add_int() rather that fetchNadd() etc.

This commit was SVN r2221.
2004-08-18 23:24:27 +00:00
Tim Woodall
bd8af9ecdf return correct status
This commit was SVN r2166.
2004-08-16 19:09:03 +00:00
David Daniel
a1688d5b9f more atomic.h changes
This commit was SVN r2157.
2004-08-16 01:13:25 +00:00
Jeff Squyres
58eb425f30 Add missing .h file to fix the tarball generated by "make dist"
This commit was SVN r2033.
2004-08-11 01:28:12 +00:00
Tim Woodall
a78f5f2059 setup pointer to mca_ptl_peer_t in recv fragment in match if not already set
by the ptl - to support unconnected protocols that don't already know the peer

This commit was SVN r2009.
2004-08-10 19:07:14 +00:00
Jeff Squyres
b47e1daac6 - Remove one additional useless VERSION file that escaped last night
- Remove all the "EXTRA_DIST = VERSION" stanzas from the Makefile.am
  of components who are not using the VERSION file.

This commit was SVN r2001.
2004-08-10 10:51:13 +00:00
Jeff Squyres
ff62e4db26 - Due to limitations in AC_DEFINE (namely that you can't direct a
specific AC_DEFINE to a specific header file), emulate the behavior
  of AC_HEADER_FILES when saving the values from the VERSION files;
  dump them into a temporary file and diff them against the
  already-existing .h file.  If they're the same, do nothing.  If
  they're different, replace the .h file.
- With this capabiliy, move the #define's of all version numbers out
  of ompi_config.h and into component-specific <type>-<name>-version.h
  header files.  This will prevent a lot of extra compilation when
  you updat your local svn working copy.
- Remove the requirement for having a VERSION file.  If you don't have
  it, then a .h file with your version numbers won't be generated.
- Remove the VERSION file from lots of components that don't use it.
  I've added it to my "consistency" list to go back and re-add them
  along with using the proper #define's in the component struct after
  we reach a period of stability.

This commit was SVN r1999.
2004-08-10 04:10:08 +00:00
Tim Woodall
1b6a2a59c1 maintain reference count on communicator for duration of request
This commit was SVN r1907.
2004-08-05 19:35:10 +00:00
Tim Prins
fe9f18c03b bug fixes:
-properly initialize variables in the oob_tcp_msg struct
-properly close peer sockets in the tcp oob
-fix compare in bucket allocator to use the correct variable
-remove duplicate free in teg

-updated the oob tests
-add more output to tcp oob when there are failures

This commit was SVN r1866.
2004-08-04 14:33:02 +00:00
Tim Woodall
821565e7de fix issue in casting macro parameter
This commit was SVN r1860.
2004-08-03 22:58:12 +00:00
Jeff Squyres
eb8cba98af - massive change for module<-->component name fixes throughout the
code base.
  - many (most) mca type names have "component" or "module" in them,
    as relevant, just to further distinguish the difference between
    component data/actions and module data/actions.  All developers
    are encouraged to perpetuate this convention when you create
    types that are specific to a framework, component, or module
  - did very little to entire framework (just the basics to make it
    compile) because it's just about to be almost entirely replaced
  - ditto for io / romio
  - did not work on elan or ib components; have to commit and then
    convert those on a different machine with the right libraries and
    headers
- renamed a bunch of *_module.c files to *_component.c and *module*c
  to *component*c (a few still remain, e.g., ptl/ib, ptl/elan, etc.)
- modified autogen/configure/build process to match new filenames
  (e.g., output static-components.h instead of static-modules.h)
- removed DOS-style cr/lf stuff in ns/ns.h
- added newline to end of file src/util/numtostr.h
- removed some redundant error checking in the top-level topo
  functions
- added a few {} here and there where people "forgot" to put them in
  for 1 line blocks ;-)
- removed a bunch of MPI_* types from mca header files (replaced with
  corresponding ompi_* types)
- all the ptl components had version numbers in their structs; removed
- converted a few more elements in the MCA base to use the OBJ
  interface -- removed some old manual reference counting kruft

This commit was SVN r1830.
2004-08-02 00:24:22 +00:00
Tim Woodall
985687112b changes (bug fixes) based on code review by UBC
This commit was SVN r1823.
2004-07-30 16:31:43 +00:00
Tim Woodall
952daced67 fixed regression introduced w/ change to support request allocation/caching w/in pml
(should now support more than two processes)

This commit was SVN r1822.
2004-07-30 16:29:56 +00:00
Jeff Squyres
915187c3c3 Fix compile error. Please test compile before committing...
This commit was SVN r1803.
2004-07-26 11:18:00 +00:00
Weikuan Yu
e6ee369852 Modified some of lines to be 76 columns only to fit 80x24 screens.
A minor point to folks who like long lines: 
  Our coding style is shiftwidth=4 textwidth=76

This commit was SVN r1801.
2004-07-25 16:15:52 +00:00
Tim Woodall
b577174a4a changes to PTL interface
- moved pml_base_send_request_t allocation to pml - provide capability to cache
   requests on per ptl basis - and provide hooks for ptl to init/cleanup ptl
   specific data cached on the request
-  renamed request/fragment super fields
-  added ptl_send i/f which is called by pml for the first fragment, the
   ptl_put i/f is called for subsequent fragments of the same request

This commit was SVN r1745.
2004-07-15 18:08:20 +00:00
Tim Woodall
85b39439a8 skip over procs w/out associated ptls
This commit was SVN r1647.
2004-07-12 22:37:09 +00:00
Tim Woodall
bdb99df9a1 modified pml add_procs so that it calls ptl add_procs once w/ the entire
set of procs during mpi-init. 

This commit was SVN r1584.
2004-07-07 23:43:09 +00:00
Jeff Squyres
8149265189 - Updated versioning system; "svn" number is now a string (vs. an int)
- Updated autogen.sh and friends to be more flexible and allow
  components to be configured and built outside of the Open MPI tree
- Removed $(LIBOMPI_LA) from all component Makefile.am's -- it's
  unnecessary 

This commit was SVN r1566.
2004-07-07 12:45:36 +00:00
Tim Woodall
8cfc45bbee restored Jeffs changes
This commit was SVN r1529.
2004-07-01 16:25:44 +00:00
Tim Woodall
165d4f8841 merge of oob/rte changes from rte branch
This commit was SVN r1527.
2004-07-01 14:49:54 +00:00
Jeff Squyres
97bed7c0d4 Building MCA components as DSOs is now the default. Use
--disable-mca-dso to build MCA components statically as part of
libmpi, or --enable-mca-dso=LIST to only build some components as DSOs
(see ./configure --help for more details).

This commit was SVN r1521.
2004-06-30 22:11:32 +00:00
Tim Woodall
1d6576d1f6 - more appropriate change of MUTEX_LOCK to OMPI_MUTEX_LOCK
(sorry about the last one)

This commit was SVN r1470.
2004-06-24 21:39:08 +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
de519a6a43 check for valid progress function
This commit was SVN r1468.
2004-06-24 20:58:40 +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
Tim Woodall
ebd9c4d92f - moved src/mca/ptl/base/ptl_base_sendreq.h -> src/mca/pml/base/pml_base_sendreq.h
src/mca/ptl/base/ptl_base_recvreq.h -> src/mca/pml/base/pml_base_recvreq.h
- rename mca_ptl_base_recv_request_t -> mca_pml_base_recv_request_t
         mca_ptl_base_send_request_t -> mca_pml_base_send_request_t

This commit was SVN r1463.
2004-06-24 19:28:30 +00:00
Tim Woodall
13b025abb7 fix for buffered send
This commit was SVN r1462.
2004-06-24 17:03:08 +00:00
Tim Woodall
2ce7ca725b - cleanup of some of the c bindings
- for threaded case - cleanup event libraries progress thread
- cleanup of request handling for persistent sends
- added support for buffered sends

This commit was SVN r1461.
2004-06-24 16:47:00 +00:00