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

341 Коммитов

Автор SHA1 Сообщение Дата
Brian Barrett
4b3969d2ab * add header file so that this compiles again
This commit was SVN r6917.
2005-08-17 22:44:13 +00:00
Jeff Squyres
c465eb8567 Rename opal/threads/thread.h -> opal/threads/threads.h to avoid a
naming conflict with Solaris' <thread.h>

This commit was SVN r6879.
2005-08-15 11:02:01 +00:00
Brian Barrett
b514fc10da * add WRAPPER_LDFLAGS to LDFLAGS, since we might be adding random hooks in
there

This commit was SVN r6871.
2005-08-14 17:22:54 +00:00
Brian Barrett
683e80c48b * fix basic test to work better when using memory intercept methods that
only catch actual releases back to the OS

This commit was SVN r6866.
2005-08-14 03:10:51 +00:00
Brian Barrett
1b830beddb * move over changes from the /tmp/bwb-memory-hooks/copy-1 into the trunk.
This includes updates to the malloc_hook method and making everything
  components.

This commit was SVN r6852.
2005-08-13 01:08:34 +00:00
Brian Barrett
c9f5e591b1 * make sure to try munmap when testing the hooks
* add check to see impact of our hooks with malloc/free timings

This commit was SVN r6817.
2005-08-12 13:29:26 +00:00
Brian Barrett
f707ba2dd3 * Add memory dispatching code for OPAL. This allows anyone to register
callbacks to be triggered when memory is about to leave the current
  process.  The system is designed to allow a variety of interfaces,
  hopefully including whole-sale replacement of the memory manager,
  ld preload tricks, and hooks into the system memory manager.  Since
  some of these may or may not be available at runtime and we won't know
  until runtime, there is a query funtion to look for availability of
  such a setup.
* Added ptmalloc2 memory manager replacement code.  Not turned on by
  default, can be enabled with --with-memory-manager=ptmalloc2.
  Only tested on Linux, not even compiled elsewhere.  Do not use
  on OS X, or you will never see your process again.
* Added AM_CONDITIONAL for threads test to support ptmalloc2's build
  system

This commit was SVN r6790.
2005-08-09 22:40:42 +00:00
Ralph Castain
5208f9001d Update the gpr unit tests
This commit was SVN r6758.
2005-08-07 13:09:34 +00:00
Ralph Castain
4e1837687b Finish simplified interfaces for put and subscribe - more details to come.
This commit was SVN r6713.
2005-08-02 19:43:29 +00:00
Ralph Castain
ed1022afd3 Update the unit test for the new put functions.
I'll send out a general note about this in the morning, but for now I'll just notify people through this note that the new simplified "put" commands have been debugged and work just fine. I'll add documentation to the gpr.h file later - only think to really be aware of is that the tokens array must be NULL terminated. Other than that, things work pretty much as you'd expect.

This commit was SVN r6700.
2005-08-02 02:31:53 +00:00
Ralph Castain
63cef99bcd Add unit test for quick put function - not fully ready yet
This commit was SVN r6693.
2005-08-01 21:45:39 +00:00
Jeff Squyres
28d6651350 Oops -- that should not have been committed.
This commit was SVN r6599.
2005-07-24 11:27:56 +00:00
Jeff Squyres
9dab81d86b A bunch of updates to the unit tests
- Update svn:ignore's to match new exectuable names
- Consolidate the unit test Makefile.am flags into a testing
  Makefile.options 
- Remove a bunch of SUBDIRS from test/mca/Makefile so that they don't
  run by default, but can be invoked manually (they're still in
  DIST_SUBDIRS) 

This commit was SVN r6598.
2005-07-23 11:11:19 +00:00
Ralph Castain
13fdcff66b Fix a bug Greg was seeing on subscription returns - problem in pointer arithmetic
This commit was SVN r6594.
2005-07-22 20:46:07 +00:00
Ralph Castain
daf3ee8172 fix the dps tests to support new notify_data type definition
This commit was SVN r6568.
2005-07-20 19:00:54 +00:00
Brian Barrett
b04c726ad1 Fix up tests so that they all compile and (mostly) run
This commit was SVN r6338.
2005-07-04 14:53:10 +00:00
Brian Barrett
46245aaac1 * rename orte_os_create_dirpath to opal_os_create_dirpath
* rename orte_os_path to opal_os_path
* rename ompi_path_find to opal_path_find
* rename ompi_pow2 to opal_pow2

This commit was SVN r6334.
2005-07-04 01:59:52 +00:00
Brian Barrett
e55f99d23a * rename ompi_if to opal_if
* rename ompi_malloc to opal_malloc
* rename ompi_numtostr to opal_numtostr
* start of rename of ompi_environ to opal_environ

This commit was SVN r6332.
2005-07-04 01:36:20 +00:00
Brian Barrett
9f44b80291 * rename ompi_argv to opal_argv
* rename ompi_basename to opal_basename
* rename ompi bitop functions to opal
* rename ompi_cmd_line to opal_cmd_line
* rename ompi_sizet2int to opal_sizet2int
* rename orte_daemon_init to opal_daemon_init
* rename ompi_few to opal_few

This commit was SVN r6330.
2005-07-04 00:13:44 +00:00
Brian Barrett
a13166b500 * rename ompi_output to opal_output
This commit was SVN r6329.
2005-07-03 23:31:27 +00:00
Brian Barrett
23b687b0f4 * rename ompi_event to opal_event
This commit was SVN r6328.
2005-07-03 23:09:55 +00:00
Brian Barrett
39dbeeedfb * rename locking code from ompi to opal
This commit was SVN r6327.
2005-07-03 22:45:48 +00:00
Brian Barrett
ccd2624e3f * rename ompi_progress to opal_progress
This commit was SVN r6326.
2005-07-03 21:57:43 +00:00
Brian Barrett
9da0b4fe1d * rename all the atomic functions from ompi to opal
This commit was SVN r6325.
2005-07-03 21:38:51 +00:00
Brian Barrett
9f0c969bb4 * rename ompi_hash_table opal_hash_table
This commit was SVN r6324.
2005-07-03 16:52:32 +00:00
Brian Barrett
764a9314db * rename ompi_value_array opal_value_array
This commit was SVN r6323.
2005-07-03 16:38:52 +00:00
Brian Barrett
761402f95f * rename ompi_list to opal_list
This commit was SVN r6322.
2005-07-03 16:22:16 +00:00
Brian Barrett
499e4de1e7 * rename ompi_object and ompi_class to opal_object and opal_class
This commit was SVN r6321.
2005-07-03 16:06:07 +00:00
Jeff Squyres
76ba66734d I gave bad advice to Ralph yesterday; he asked how to disable the gpr
unit tests without screwing up the nightly builds.

These changes fix the problem of not including the test/mca/gpr
directory in the nightly tarball, prevent the tests from being
compiled, but leave the door open for manual compilation when the time
comes to start the work to re-enable them (e.g., uncomment a few
lines in gpr/Makefile.am).

This commit was SVN r6175.
2005-06-25 11:21:59 +00:00
Ralph Castain
8271d3f30e Okay, here is the massive checkin that restructures the registry trigger system for scalability. Actually, it isn't "quite" as large as it looks - it just touches a bunch of files.
Also included is a fix to the attribute problem for singletons.

Short explanation:
The prior system placed triggers and subscriptions on the registry for each process - approximately eight/process. Each of these had to be checked every time there was a registry operation such as a "put" or "increment-value". For large numbers of processes, this repetitive checking consumed some significant time.

The new system allows processes to "attach" to existing triggers and subscriptions, without creating a new one. Thus, there are now only eight triggers and five subscriptions on a job - *regardless of how many processes are being run*. This means that the registry now takes the same amount of time (which is pretty darn short) to process an operation regardless of how many processes are in a job.

I'll provide some startup times from scalability tests shortly - need to complete the commit so I can move the system to an appropriate cluster.

This commit was SVN r6164.
2005-06-24 16:59:37 +00:00
Jeff Squyres
d9b0aa9654 Temporarily comment out the test_rds2 test because all it does is test
the RDS selection logic, which is, unfortunately, not yet well
supported by the testing infrastructure (it causes false failures in
the nightly build).

This commit was SVN r6073.
2005-06-16 11:25:27 +00:00
Ralph Castain
83cba7f7cf Checkpoint. Fixed a logic problem that removed one-shot subscriptions even though the notifiers were supposed to stay.
This commit was SVN r6052.
2005-06-13 20:43:05 +00:00
Ralph Castain
098cc8cf3a Bring the rest of the notification modes online. Update the unit test to cover notify-on-change.
This commit was SVN r6043.
2005-06-13 14:37:02 +00:00
Ralph Castain
1c57ae20b0 Checkpoint the notifier work - notify when something is added now works, need to simply turn on the other checks.
Existing code shouldn't see any impacts. Tested on up to 125 processes.

This commit was SVN r6020.
2005-06-09 20:37:25 +00:00
Ralph Castain
51380eba13 Checkpoint the continuing re-enablement of the notifiers.
Also added a check to protect the callback system from an error being seen by Tim P. - should help with debugging.

This commit was SVN r6010.
2005-06-09 13:35:35 +00:00
Ralph Castain
7306b9d7b9 Fix the registry search routine to remove a buffer that wasn't expanding as it should - cause of recent problems observed when spawning larger numbers of processes.
For anyone interested, the problem stemmed from two things:

1. a bug in the ompi_bitmap utility (which I copied to orte_bitmap to avoid unintentionally disturbing something else) that causes the bitmap NOT to expand unless the caller asks for a bit that is more than one byte outside the current array size. The unit test didn't pick it up because it doesn't check that close to the boundary.

2. a "feature" in the ompi_bitmap utility that only expands the array if you try to SET a bit outside the current boundary, but NOT if you try to CLEAR a bit outside the array limit. This appears intentional as the unit test checks for this behavior, but I hadn't been expecting the asymmetry.

The orte_bitmap utility now appropriately expands in both circumstances. I also added a function to expand the array so it "covers" a bit location without setting or clearing it. The function allows you to ensure the array is big enough to handle the specified bit, but leave the bit alone if it already is there (the other functions would set/clear it if it was).

I've tested it with up to 100 processes without problem.

This commit was SVN r5980.
2005-06-08 15:48:38 +00:00
Galen Shipman
aaa236052d changed function signitures to match the changes in mpool
This commit was SVN r5911.
2005-06-01 15:25:17 +00:00
Tim Prins
75b0b519d8 - Added functionality to MPI_Alloc_mem and MPI_Free_mem so that they
call the memory pool to do special memory allocations, and extended 
the mpool so that it will do the allocations and keep tack of them in
a tree. Currently, if you pass MPI_INFO_NULL to MPI_Alloc_mem, we will 
try to allocate the memory and register it with as many mpools as 
possible. Alternatively, one can pass an info object with the names of 
the mpools as keys, and from these we decide which mpools to register 
the new memory with.

- fixed some comments in the allocator and fixed a minor bug

- extended the red black tree test and made a minor correction

This commit was SVN r5902.
2005-05-31 19:07:27 +00:00
Ralph Castain
93eb0d4b40 Checkpoint
This commit was SVN r5814.
2005-05-23 14:22:35 +00:00
Ralph Castain
689a290711 Add one further degree of separation between opal and orte - allow separate init of the two systems. This allows the restart capability to avoid hitting opal utilities (e.g., mca_base_open, ompi_output_init) repeatedly.
Clean up the ignores as well.

This commit was SVN r5811.
2005-05-22 18:40:03 +00:00
Ralph Castain
7b6db8a18f Can now start/finalize/restart the run-time without crashing.
Add a unit test for that functionality - will test more fully next week.

This commit was SVN r5806.
2005-05-22 03:11:33 +00:00
Ralph Castain
54a481cc14 Fix an incorrect free...
This commit was SVN r5724.
2005-05-16 21:06:09 +00:00
Ralph Castain
89b6a97f0f Bring the resource discovery system's resource file component online so I can find the node I need to launch upon. I removed all reference to the xml library that was causing trouble, and wrote my own limited xml parser instead, so this will now compile just fine anywhere.
Need to do some refining of the component, but it meets basic requirements right now. Nobody else should notice any change - system basically ignores it unless you tell it to do something.

This commit was SVN r5723.
2005-05-16 21:01:09 +00:00
Jeff Squyres
722ee2103b Fix to the fix -- Brian and I agree that this is a better fix.
This commit was SVN r5693.
2005-05-12 02:44:20 +00:00
Jeff Squyres
2b2f2f3c04 Fix a bunch of compiler warnings, mostly on 64 bit:
- some union { void*; int; } fixes for asm tests
- size_t / %lu fixes for a bunch of others

This commit was SVN r5677.
2005-05-10 23:28:31 +00:00
Jeff Squyres
a28b5ae43b Fix for a bunch of size_t issues; reviewed by George and Ralph.
- Change all uses of *printf'ing a size_t to use an explicit cast to
  (unsigned long) and the %lu escape
- change ORTE_GPR_REPLICA_MAX_SIZE to INT_MAX until bug 1345 is fixed
  (i.e., until we allow size_t in MCA params)
- ns_base_local_fns.c:orte_ns_base_get_proc_name_string(): changed
  from %0X -> %lu
- ORTE_NAME_ARGS added explicit (unsigned long) casts, and changed all
  usages of ORTE_NAME_ARGS to use %lu's

This commit was SVN r5644.
2005-05-08 13:22:55 +00:00
Ralph Castain
659d57f300 Several things in this commit - shouldn't impact any existing work:
1. Added pid_t to the dps

2. Processes now "register" their local pid and update their location (i.e., nodename) on the registry during mpi_init

3. Added a new error code for values that exceed maximum for their data type (useful when transitioning a value from one variable to another of different size)

4. Fixed a few places where size_t was being incorrectly handled

5. Updated dps_test to cover pid_t types

This should now provide support for TotalView connection - which David is pursuing.

This commit was SVN r5623.
2005-05-06 17:00:06 +00:00
Jeff Squyres
e1ab50d5e9 Add missing header files
This commit was SVN r5583.
2005-05-04 00:13:40 +00:00
Ralph Castain
44b83e73ef Fix the print warnings for the name services conversions on names from their binary value to a string.
HEADS UP: string versions of names are now presented in DECIMAL format - not HEX as they previously were. If you used the name services functions (as you were supposed to do) to access these names, you will not have any problems. If you did it yourself, then you need to fix it - my suggestion would be that you fix your code by using the name service functions to avoid future problems.

This commit was SVN r5571.
2005-05-02 15:06:13 +00:00
Ralph Castain
931924397c Fix several minor things:
1. *correctly* fix the printing of size_t variables. Need to do this through a #define, not just typecast things. Thanks to Jeff/Brian for suggesting a cleaner way to do it (as opposed to just doing the #define at the print location). Note that not ALL of the prints have been "fixed" yet - will continue to identify them.

2. Add int64 and size_t to the pack/unpack unit tests.

3. Fix a bug in the int64 pack/unpack system.

This commit was SVN r5570.
2005-05-02 14:48:57 +00:00