1
1

44 Коммитов

Автор SHA1 Сообщение Дата
Jeff Squyres
71054a834e - minor format changes
- remove some unnecessary functions
- use OBJ_* macros
- fix ompi_hase_table_get_[first|next]_key_uint[32|64] functions

This commit was SVN r2732.
2004-09-16 23:51:30 +00:00
Jeff Squyres
c89f61660a Fix minor warning -- no need to realloc here because we've never
alloc'ed before.

This commit was SVN r2694.
2004-09-15 23:56:40 +00:00
Edgar Gabriel
64e983a88a fixing logic for lowest_free and number_free
This commit was SVN r2630.
2004-09-13 15:13:13 +00:00
Brian Barrett
c8b03b0897 * change the pcm slection to allow for both multiple components to be loaded
at the same time and multiple modules of the same component to be loaded
  at the same time (but not launching procs in the same job).
  - add a "this" pointer to all the PCM functions
  - make base select() function return a list of selected pcms, based on
    given criteria bitmask
  - update all the pcms to match
* Add a insert before position function to the ompi_list code

This commit was SVN r2590.
2004-09-10 04:54:17 +00:00
Ralph Castain
c27d1eeb80 Take out the destructor code I added to ompi_list - may be causing some problems in some pre-existing code, and we have more important issues to deal with for now!
This commit was SVN r2457.
2004-09-02 19:02:16 +00:00
Ralph Castain
e5fab162ce Add tests to ensure that we are not destructing NULL-pointers.
This commit was SVN r2452.
2004-09-02 16:17:32 +00:00
Ralph Castain
81a79e27f3 A change to the ompi_list system that *should* be transparent. It shows no affect on anything in the unit test, and works with everything I have used to test it.
The change is to the destructor for ompi_list_t - it now cleans releases all objects attached to the list. Before this change, you had to be careful to run the list of items yourself, releasing all of them, before calling OBJ_DESTRUCT on the head of the list - or else "leak" all the item memory. With this change, you don't have to do that yourself. The destructor takes care of it for you.

Please let me know if anyone observes undesirable behavior from the change.
Ralph

This commit was SVN r2421.
2004-08-31 20:52:18 +00:00
Rich Graham
4ccbabd6df change the fifo code so that all arrays are referenced relative to
a base offset, so that different procs can access these w/o having
to be in the same virtual address.

This commit was SVN r2388.
2004-08-30 01:25:34 +00:00
Rich Graham
eb384371ef make changes to support shared memory implementation.
This commit was SVN r2363.
2004-08-28 16:44:20 +00:00
Rich Graham
21211f7dd3 debug the ompi_fifo functions.
This commit was SVN r2329.
2004-08-27 16:32:09 +00:00
Rich Graham
2ed427505c get the code in ompi_fifo to compile.
This commit was SVN r2288.
2004-08-24 22:25:59 +00:00
Rich Graham
8e348220eb add code to use link lists of circular buffer fifo's.
change some of the ompi_circular buffer fifo's to provide
functionality needed for this.  Reviewed by Ralph and Denis.
ompi_fifo.h not yet tested.

This commit was SVN r2283.
2004-08-24 20:17:44 +00:00
David Daniel
b1ff3e50c2 Closing in on compilation with Solaris (and other non-GNU) compilers.
This commit was SVN r2244.
2004-08-19 23:34:46 +00:00
David Daniel
5c4c277266 Numerous niggles related to building on Solaris
This commit was SVN r2234.
2004-08-19 19:30:53 +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
Rich Graham
715ceeb569 change read interface to force a lazy free of resources. Need this
for a fifo that is a link list of such items.

This commit was SVN r2216.
2004-08-18 22:53:04 +00:00
Brian Barrett
d5133eddec * clean up the Doxygen comments in the runtime and llm classes
* recalarify previous clarification on ompi_list_get_size()

This commit was SVN r2190.
2004-08-17 22:14:47 +00:00
Rich Graham
2c70be74cf fix a few more bugs - move thread safety management outside of these
routines.

This commit was SVN r2188.
2004-08-17 21:49:01 +00:00
Brian Barrett
c5ebf49f41 * Modifications to the ompi_list_t interface and test suite
- added ompi_list_splice and ompi_list_join, which are multi-list
    manipulation functions similar to the splice functions in the STL
    list interface
  - added ompi_list_is_empty() for O(1) testing of for an empty list
  - added note that sometime in the future, ompi_list_get_size() may
    change to O(N) complexity.  DID NOT CHANGE THE FUNCTION IN ANY WAY.

If you are writing new code that needs to check for an empty list, please
use ompi_list_is_empty() rather than ompi_list_get_size() as is_empty()
will always be an O(1) operation (I can't see how you could make it
impossible to make it O(1), so this seems like a safe claim).

This commit was SVN r2186.
2004-08-17 19:31:07 +00:00
Rich Graham
9b07ea2585 fix fifo memory allocation to use the correct lengths. Add an interface
function (used in testing) to check for fifo size.

This commit was SVN r2173.
2004-08-16 23:37:07 +00:00
Rich Graham
f75b88faa5 fix a bug, so that the fifo size is rounded up to a power of 2.
Add some support code to determine nearest power of 2.

This commit was SVN r2170.
2004-08-16 23:06:33 +00:00
David Daniel
a1688d5b9f more atomic.h changes
This commit was SVN r2157.
2004-08-16 01:13:25 +00:00
Rich Graham
0ac3e819ac fix numerous bugs - code now compiles.
This commit was SVN r2129.
2004-08-13 19:49:13 +00:00
Rich Graham
71391bed98 first cut at an array based fifo. NOT TESTED !!!
This commit was SVN r2100.
2004-08-12 23:31:15 +00:00
Jeff Squyres
cda8d85f80 Add doxygen docs for ompi_list.h, and fix one minor typo mistake in
ompi_info related to ompi_list_t.

This commit was SVN r2043.
2004-08-11 16:18:52 +00:00
Tim Woodall
7d6425268d - removed debug
This commit was SVN r2018.
2004-08-10 21:23:01 +00:00
Tim Prins
105b8e6b5b Minor change to check to see if the tree has actually been initialized
before trying to destroy it.

This commit was SVN r1841.
2004-08-02 21:27:27 +00:00
Tim Woodall
9280e182f5 - changed oob i/f functions to accept tag parameter
- tcp implementation in progress
- changed calls to oob to reflect additional parameter

This commit was SVN r1839.
2004-08-02 21:24:00 +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
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
Jeff Squyres
735787e12b Remove the set_list_size inline function
This commit was SVN r1490.
2004-06-28 23:52:06 +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
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 Prins
48f51861d3 Adding a new class which is a red black tree
-reviewed by Tim
adding a small test program for the tree

This commit was SVN r1437.
2004-06-22 20:52:18 +00:00
Jeff Squyres
00c4ea28a7 Correct doxygen docs for OBJ_CLASS_DECLARATION
This commit was SVN r1428.
2004-06-21 21:20:39 +00:00
Tim Woodall
39a341be52 - temporarily revert obj reference count to non-atomic update
- fixed call to memory pool allocator

This commit was SVN r1369.
2004-06-17 18:13:31 +00:00
David Daniel
f66f6bb4cf cmpset operations now active in include/atomic.h
This commit was SVN r1318.
2004-06-16 16:27:32 +00:00
Tim Woodall
f685e75197 fixed call to allocator
This commit was SVN r1309.
2004-06-16 14:54:53 +00:00
Edgar Gabriel
8e35c78e87 in pointer_array_set_item and pointer_array_test_and_set_item, we did not update
the lowest_free field correctly, in case we just set exactly this value.

Reviewed by Tim.

This commit was SVN r1288.
2004-06-15 22:14:56 +00:00
Tim Woodall
1491d25583 moved from mem
This commit was SVN r1279.
2004-06-15 19:46:26 +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
Tim Woodall
69ff3b9ecc - removed unused list type from ompi_list
- added probe/cancel stubs
- changed scheduler to allow unlimited first fragment size / use max fragment size

This commit was SVN r1211.
2004-06-09 19:45:08 +00:00
David Daniel
1b04577727 renaming directories
This commit was SVN r1193.
2004-06-07 15:45:09 +00:00