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

382 Коммитов

Автор SHA1 Сообщение Дата
Brian Barrett
2a94f693f6 * make sure to actually add the ptmalloc2-specific library dependencies to
LIBADD, so that libtool does it's magic propogation thing...

This commit was SVN r8508.
2005-12-15 18:11:51 +00:00
Jeff Squyres
6bc6178e8d Make the comment explain much more fully what is going on (in typical
Jeff-length).  Also change it such that we also have a lt_dlhandle
type -- even in the case of --disable-dlopen.  Specifically, even in
the case of --disable-dlopen, we still have shell functions that use
an lt_dlhandle parameter, so we need that type, even if <ltdl.h> isn't
used.

This commit was SVN r8507.
2005-12-15 17:47:54 +00:00
Brian Barrett
e574fd7fbe - update some svn ignores
- don't fail to configure if threads aren't found, since
  we don't have thread support on windows
- rather than setting the asm file name to none in asm-data,
  special case windows w/ CL in the ompi_config_asm macros.
  Otherwise, there were some warnings during make dist and
  configure that didn't need to be there.

This commit was SVN r8502.
2005-12-15 04:19:16 +00:00
Brian Barrett
e8cca1710f couple of changes to make Open MPI compile under Cygwin with gcc:
- add the right asm format
  - add checks for some constants / fields that cygwin
    doesn't have in the stacktrace code
  - fix for slightly more verbose libtool 2 betas that
    have multiple lines for link output

This commit was SVN r8501.
2005-12-15 00:51:28 +00:00
Brian Barrett
01e7191c3e * use our memory barriers instead of ptmalloc2's, since it only does the
right thing with gcc on x86.

This commit was SVN r8490.
2005-12-13 16:04:48 +00:00
Rainer Keller
e59291ebd3 - As I got a conflict for doing the same thing due to problems on SX,
decided check in...
   Protect also stdio.h

This commit was SVN r8486.
2005-12-13 08:05:41 +00:00
George Bosilca
c9c9a6df61 A line for WINDOWS asm support ... yes none at the moment. Most of the
functions we generate from assembler are available on windows.

This commit was SVN r8485.
2005-12-13 06:18:39 +00:00
George Bosilca
cf09491da5 Remove all useless header as well as those generating name conflicts (io.h).
This commit was SVN r8484.
2005-12-13 06:17:15 +00:00
George Bosilca
af39262a66 I hope I get it right this time. We detect at configure time if the current
Windows installation provide the 32 and 64 bits atomic operations and compile
only the relevant part. For 64 bits there is a problem, but I already put a
big comment about it in the configure file ...

This commit was SVN r8480.
2005-12-13 06:08:45 +00:00
George Bosilca
30648c55ff First version of the paffinity for Windows. We detect correctly if the
functions are available in the .h file as well as the kernel32.dll but
we generate empty functions.

This commit was SVN r8478.
2005-12-13 06:04:41 +00:00
George Bosilca
3e03a5f702 A better comment I hope ...
This commit was SVN r8477.
2005-12-12 23:39:40 +00:00
George Bosilca
ed234c910f The compare and set return an int (always).
This commit was SVN r8476.
2005-12-12 23:17:04 +00:00
George Bosilca
39e8d4ce02 Protect the function definition not the typedef.
This commit was SVN r8475.
2005-12-12 22:33:02 +00:00
George Bosilca
6f3ac068a6 Use Windows functions ... Microsoft complain about a bunch of POSIX functions as being
deprecated. They offer the _ version as not deprecated, so let's use what they provide.

This commit was SVN r8470.
2005-12-12 22:04:30 +00:00
George Bosilca
c107d02eee Miss this one on the last commit.
This commit was SVN r8469.
2005-12-12 22:02:42 +00:00
George Bosilca
bd0ee62e62 Protect headers and use __WINDOWS__ for Windows code.
This commit was SVN r8468.
2005-12-12 22:01:51 +00:00
George Bosilca
8c71f578da The real timer in Windows is a long long.
This commit was SVN r8467.
2005-12-12 21:52:53 +00:00
George Bosilca
6e5aeab0b5 Remove the dependance to ltdl.h for all the the places where we dont't really need it. Read
the comment for more informations.

This commit was SVN r8466.
2005-12-12 21:51:20 +00:00
George Bosilca
1f342275a0 Support the atomic.h and timer.h header files.
This commit was SVN r8462.
2005-12-12 19:52:13 +00:00
Brian Barrett
d8d67b618f don't intercept mmap if we have to use dlsym to get at the real mmap. dlsym
may call calloc(large number), which causes ptmalloc2 to call mmap, which
causes us to try to dlsym for mmap, which leads to looping badness.

This commit was SVN r8461.
2005-12-12 19:38:42 +00:00
George Bosilca
436ef18ec2 Adding high performance timers for windows (the same as for Linux we use the counters from
the processor).

This commit was SVN r8458.
2005-12-12 17:27:48 +00:00
Brian Barrett
6c4ac2299c fix typo in release hooks if calling for every malloc/free
This commit was SVN r8431.
2005-12-10 05:06:52 +00:00
George Bosilca
699653f733 Typo correction.
This commit was SVN r8427.
2005-12-09 05:17:27 +00:00
Brian Barrett
0348d02875 * need to expose posix_memalign so that the one in our ptmalloc2 is used
instead of the one in libc.  Thanks to Gleb Natapov for tracking this
  down.

This commit was SVN r8418.
2005-12-08 18:06:52 +00:00
George Bosilca
d145902b17 Move all win32 related files in opal, and modify all the Makefiles.am to
include the change.

This commit was SVN r8412.
2005-12-08 06:17:15 +00:00
Brian Barrett
364ca3f075 - Add configure-time switch (--enable-ptmalloc2-opt-sbrk) to control when
the ptmalloc2 memory hooks component triggers callbacks for memory
  allocation / deallocation.  If enabled (the default) it is only when
  memory is actually obtained from or released to the OS (so little
  malloc calls only trigger callbacks if sbrk is called).  If disabled,
  callbacks are triggered every time malloc/free/etc. is called
* It turns out that syscall and mmap aren't good friends due to the return
  type of mmap and some old legacy issues with syscall functions that
  take more than 5 parameters.  For now, default to either loading
  the symbol from glibc using dlsym or using the __m{un,}map functions.
  Thanks to George for finding this.
* Fix some dumb typos in the mmap / munmap catching code

This commit was SVN r8410.
2005-12-08 04:47:03 +00:00
George Bosilca
f636243309 Look like opal is a better place for windows related stuff.
This commit was SVN r8405.
2005-12-08 00:07:40 +00:00
Brian Barrett
aa28207fdc don't include gas assembler hints
This commit was SVN r8400.
2005-12-07 18:18:36 +00:00
Jeff Squyres
b04f6bf71b Fix a segv; it's possible to have an empty string parameter (""), such
that opal_argv_split() will return an empty array.  So test for that
case before trying to iterate through the array.

This commit was SVN r8396.
2005-12-06 20:06:40 +00:00
George Bosilca
1fe691c1f5 powerpc-apple-darwin8-gcc-4.0.0 catch 2 warnings about uninitialized usage. Reading the code I have to agree with it,
even if it's highly improbable that it could happens in real life. But we never know ...

This commit was SVN r8393.
2005-12-06 18:44:52 +00:00
George Bosilca
9efd0e0813 Include the memoryhooks.h after the standard include files to insure that all expected types are
correctly defined (like size_t).

This commit was SVN r8383.
2005-12-06 05:55:36 +00:00
George Bosilca
23c618ab51 Allow a VPATH build to find the include files.
This commit was SVN r8382.
2005-12-06 05:26:36 +00:00
Brian Barrett
f44bd9e067 * Intercept both allocations and deallocations from ptmalloc2 (including
both mmap and munmap), adjusting the configure script so that the
  component will only be activated on systems that use ptmalloc2 in the
  first place -- ie, Linux
* Remove the malloc_hooks component - it became an unworkable solution
  once threads and such were considered.
* Remove malloc_interpose component - it never worked quite right and
  was not going to be able to intercept malloc, so it wasn't going to
  be useful for OMPI's purposes.
* Update tests a little bit to match recent memory hooks api
  issues - still needs a bit of work.

This commit was SVN r8381.
2005-12-06 00:44:50 +00:00
Brian Barrett
4ada272062 update memory hooks to properly initialize, even if malloc hasn't been
called when the component is initialized...

This commit was SVN r8369.
2005-12-02 00:59:03 +00:00
Brian Barrett
e338d65540 * can't dlsym for calloc, since dlsym calls calloc. So the interpose library
can only really intercept frees :(

This commit was SVN r8351.
2005-12-01 16:01:41 +00:00
Brian Barrett
13b8e166ba * documentation updates for memory hooks. Reordered some declarations, but there
were no interface changes in this commit.

This commit was SVN r8317.
2005-11-29 19:42:07 +00:00
Rainer Keller
b528a4dbcd - Add string.h for --enable-picky build.
This commit was SVN r8307.
2005-11-29 09:17:47 +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
682615dafe * make sure to distribute crc.h in dist tarballs
This commit was SVN r8298.
2005-11-29 01:07:30 +00:00
Tim Woodall
a6e91439b5 corrected copyrights
This commit was SVN r8284.
2005-11-28 20:09:21 +00:00
Tim Woodall
7667cfb104 checksum/crc routines from la-mpi
This commit was SVN r8272.
2005-11-28 17:20:21 +00:00
George Bosilca
16ca6e4c88 error seems to be a reserved keyword for some compilers ...
This commit was SVN r8262.
2005-11-26 21:18:47 +00:00
Brian Barrett
c6fb3217f8 always include ltdl.h with the full opal path, so that we always grab our
version instead of the (possible) system installed version.

This commit was SVN r8248.
2005-11-23 19:30:12 +00:00
George Bosilca
05a5fb4b05 One less dynamically alllocated array. We can just use vfprint.
This commit was SVN r8239.
2005-11-22 21:53:39 +00:00
Jeff Squyres
949fbcabc7 A pox on Linux and the convoluted configure tests that it makes me
do.  Really fix the MCA info params this time -- ensure to not use
#define's that may be #undef'ed.

This commit was SVN r8235.
2005-11-22 17:18:14 +00:00
Jeff Squyres
5b49cd81d8 HAVE_CPU_ZERO may not actually be defined.
This commit was SVN r8229.
2005-11-22 13:18:22 +00:00
Jeff Squyres
b2ad2a1619 Save some configure results in MCA read-only params for easier
debugging

This commit was SVN r8209.
2005-11-21 13:26:41 +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
Brian Barrett
1358781bd8 * remove unused condition variable files (everything is in condition.{h,c}
these days).  Always in SVN history if we want them back.

This commit was SVN r8199.
2005-11-20 00:49:37 +00:00
Brian Barrett
e5cb127830 * remove unused, unneeded header file
This commit was SVN r8198.
2005-11-20 00:28:50 +00:00
Brian Barrett
878676218e Rename opal/memory to opal/memoryhooks because XLC++ on Mac OS X is broken.
When compiling C++ code that includes something that looks for the C++
header file "memory" (stupid C++ headers not having .h extensions), it
goes through the header file search path, which includes $(topsrcdir)/opal,
so it finds the directory $(topsrcdir)/opal/memory/ and tries to load
that as the memory header file and all goes downhill.

This commit was SVN r8111.
2005-11-11 00:26:27 +00:00
Brian Barrett
d542e14120 * for some reason, some versions of linux didn't like that call to mmap. The
test isn't really needed to make sure the malloc intercept code was working,
  so just revert to not checking for now.  
  
  This should go to the 1.0 branch, as what is there now is causing issues.

This commit was SVN r8081.
2005-11-10 04:13:56 +00:00
Brian Barrett
5e6ab09424 apparently there are some platforms that do not like having munmap(NULL, 0)
called.  Instead, map and then munmap something.

This commit was SVN r8067.
2005-11-09 23:42:49 +00:00
Brian Barrett
05f8785e4f * OBJ_RELEASE is probably going to call free() in the way we're using it in
this function, and the lock will still be held, so we'd have deadlock.
  Instead, unlock, then release.  We don't need the lock for calling the
  release - we're not modifying any shared variables my that point.

  This should probbaly go onto the 1.0 branch, although it would be nearly
  impossible to trigger the deadlock with the way we use the free handlers
  at present.

This commit was SVN r8057.
2005-11-09 17:58:41 +00:00
Jeff Squyres
42ec26e640 Update the copyright notices for IU and UTK.
This commit was SVN r7999.
2005-11-05 19:57:48 +00:00
Brian Barrett
4b35a11da8 * must use local labels for jumps instead of absolute labels so that bad things
don't happen when inlining the functions.

  This should go to the 1.0 branch

This commit was SVN r7921.
2005-10-28 15:52:09 +00:00
Brian Barrett
5ad49fac1f * when using gcc inline assembly, labels must be in the local number form or there
will be complaints about duplicate labels.  Fixes the rest of the compile issues
  in Opal on IRIX

This commit was SVN r7919.
2005-10-28 15:29:12 +00:00
Brian Barrett
d90a47c529 * remove typo in label name
This commit was SVN r7918.
2005-10-28 14:07:46 +00:00
Tim Woodall
c484185f19 loop over poll event entries if the total number is larger than supported
This commit was SVN r7898.
2005-10-27 17:12:42 +00:00
George Bosilca
0d4aaf6fa6 Provide the boool value as expected by the opal_show_help function.
This commit was SVN r7832.
2005-10-21 20:04:18 +00:00
Brian Barrett
bcebd1b6b7 Fix a couple of places where headers didn't get installed correctly when
--with-devel-headers is given to configure:
  * allocator, rcache, and mpool were putting things in the wrong place
  * timer wasn't installing the inline implementations at all

This commit was SVN r7805.
2005-10-18 20:12:55 +00:00
Brian Barrett
1af9a68956 * add configure-found libs to the AIX timer component's library dependencies
* add missing return statement from aix timer component open function

This should go to the 1.0 branch.

This commit was SVN r7803.
2005-10-18 20:07:50 +00:00
Jeff Squyres
e52448c10e Change an #if to #ifdef -- HAVE_BACKTRACE is created by
AC_CHECK_FUNCS, so #ifdef is the correct preprocessor conditional here
(because it will be defined or not -- not always defined to, say, 0 or
1).

This commit was SVN r7781.
2005-10-17 12:40:04 +00:00
Brian Barrett
1302cb4072 The next in a long line of crazed build system changes from Brian. This was
originally suggested by Ralf Wildenhues, to try to speed autogen, configure,
and make (and possibly even make install).  Use automake's include directive
to drastically reduce the number of Makefile files (although the number of
Makefile.am files is the same - most are just included in a top-level
Makefile.am).  Also use an Automake SUBDIRs feature to eliminate the
dynamic-mca tree, which was no longer really needed.  This makes adding
a framework easier (since you don't have to remember the dynamic-mca
tree) and makes building faster (as make doesn't have to recurse through
the dynamic-mca tree)

This commit was SVN r7777.
2005-10-17 00:21:10 +00:00
Jeff Squyres
9a25554559 Patch from Brooks Davis for some BSD compatibility issues.
This commit was SVN r7751.
2005-10-13 15:41:25 +00:00
Jeff Squyres
43b9b2c7da Allow mca-params.conf files to not have a \n at the end of the file
This commit was SVN r7741.
2005-10-12 22:49:23 +00:00
Brian Barrett
f899c59102 * don't error in open if we can't find a timebase. Just let the caller
know what's up (by returning 0 everywhere) and succeed.

This commit was SVN r7734.
2005-10-12 19:53:20 +00:00
Brian Barrett
cd96ffa41f * back out Josh's change to linux timer. PowerPC gives you a reference base
timer, not a cpu timer, so looking at CPU frequency isn't what you want
  to do.

This commit was SVN r7733.
2005-10-12 19:10:07 +00:00
Josh Hursey
62bd7849f4 Handle the timer for YellowDog's /proc/cpuinfo format
clock           : 999MHz

This commit was SVN r7723.
2005-10-12 13:13:46 +00:00
Jeff Squyres
3652d25800 Fix for pointer math -- ensure that we're interpreting by (char *),
not (unsigned long*).  Thanks to Paul Hargrove for catching this.

This commit was SVN r7685.
2005-10-11 12:19:05 +00:00
Brian Barrett
4d0154fe3a * make sure to ship missing header file
This needs to go to the 1.0 branch

This commit was SVN r7684.
2005-10-11 04:20:24 +00:00
Brian Barrett
1df9b160a9 * greatly simply the maffinity:libnuma configure macro - use the
OMPI_CHECK_PACKAGE macro instead of doing everything ourself.
  The old code was causing problems - it wouldn't add anything to
  WRAPPER_EXTRA_{LDFLAGS, LIBS} if libnuma was installed in /usr,
  so it didn't work so well.

  This should go to the 1.0 branch

This commit was SVN r7683.
2005-10-11 01:37:45 +00:00
Jeff Squyres
670a82e651 Mark this function as deprecated.
This commit was SVN r7665.
2005-10-07 22:27:27 +00:00
Andrew Friedley
b1af69dfe7 Don't check for errors on the paffinity stuff, as per Brian's request.
This commit was SVN r7640.
2005-10-05 18:08:06 +00:00
Andrew Friedley
37123ed430 Implement an opal_show_help() (like is done in ompi_mpi_init) for error handling in opal_init and both stages of orte_init.
Some of the functions in opal_init are void or return a bool (opal_output_init, but always returns true.. eh?), so I don't check them.

This commit was SVN r7638.
2005-10-05 13:56:35 +00:00
Jeff Squyres
3a225cf01a Clarify some documentation comments
This commit was SVN r7631.
2005-10-05 03:02:11 +00:00
Brian Barrett
11932e89d5 Fix nasty bug Josh was seeing where cntl-c wasn't working when orterun hangs up
in finalize after the first cntl-c is sent.

If the signal delete function was called while the signal set was blocked (which
is really most of the time in OMPI), the signal handler would be set to default
and the event library sigset modified, but the signal would never be unblocked.
Now we unblock the signal after reseting the handler...

This commit was SVN r7623.
2005-10-04 19:01:13 +00:00
Brian Barrett
8894eabf00 * some versions of malloc.h check to see if __malloc_attribute__ is defined, and
set it to empty if it isn't.  __malloc_attribute__ is set in sys/cdef.h, and
  some versions set it unconditionally.  If sys/cdef.h is included after malloc.h,
  some compilers will complain loudly.  So include malloc.h at the end so that
  sys/cdef.h is already included if it's going to be.

This commit was SVN r7613.
2005-10-04 14:42:32 +00:00
Brian Barrett
5700854398 * must distribute timer.h. sigh.
This commit was SVN r7609.
2005-10-04 13:04:44 +00:00
Brian Barrett
2117e4efbf * one more void* to function pointer casting cleanup. Stupid dlsym!
This commit was SVN r7556.
2005-09-30 14:54:28 +00:00
Jeff Squyres
fcef1774d5 Per advice from Ralf W., change the pkgdata declarations in
Makefile.am's to be a *slightly* more correct (and, more importantly,
less error-prone) construct.

This commit was SVN r7554.
2005-09-30 13:32:39 +00:00
Brian Barrett
e98a6d32d7 * fix compiler warning about void* -> function pointer casting. Stupid
compilers and return type of dlsym()

This commit was SVN r7552.
2005-09-30 05:15:27 +00:00
Brian Barrett
b808fb82c9 * fix compiler warning about void* -> function pointer casting. Stupid
compilers and return type of munmap....

This commit was SVN r7551.
2005-09-30 04:57:08 +00:00
Jeff Squyres
fa4f7a6261 Move assignment out of inner loop -- only needs to be done once, and
fixes a compiler warning (and potential bug)

This commit was SVN r7540.
2005-09-29 10:09:20 +00:00
Brian Barrett
f36642b73b * fix compile error. i should know better
This commit was SVN r7534.
2005-09-28 18:18:12 +00:00
Brian Barrett
ad62411a15 * fix deadlock in memory code that occurs if OBJ_NEW calls realloc to
expand it's class list array by pre-allocating the callback item before
  we obtain the lock (we free it if we ended up not needing it)

This commit was SVN r7533.
2005-09-28 16:40:19 +00:00
Brian Barrett
676e34c2d4 * play the linker games that need to be played to shut Darwin up
This commit was SVN r7527.
2005-09-28 01:24:05 +00:00
Jeff Squyres
26efa2c4cd Add a default prefix to stream 0 ("[hostname:pid]") to help identify
where output is coming from.  Threw in a few minor style fixes while I
was editing these files.

This commit was SVN r7522.
2005-09-27 19:27:26 +00:00
Jeff Squyres
31b2ec198b Fix problem identified by Ferris McCormick -- we were missing some
out-of-bounds protection for output ID's in some functions.  Also,
move some logic for closing the syslog inside a conditional block --
it's only necessary to close the syslog if we actually closed a
stream.

This commit was SVN r7518.
2005-09-27 16:43:48 +00:00
Jeff Squyres
5ffd95e971 Commit of the unified component selection system. This was mostly
in-place already (turns out that I was wrong in thinking that it
didn't work for static components), but the logic for excluding
components was not there.  This commit does a few things:

- Adds "exclude" logic, so that you can do:

  mpirun --mca btl ^mvapi,openib ...

  (note the "^" character -- I tried "!" but then you have to escape
  it in the shell, and that was icky) which will exclude both the
  mvapi and openib btl components (excluding one component means that
  you are excluding all components in the list; it doesn't make sense
  to include some and exclude others -- you're entire entirely
  including or entirely excluding)

- Simplifies the "include" logic, so the same old stuff like this
  still works:

  mpirun --mca btl tcp,self ...

  will only use the tcp and self btl components.

- Added more verbosity statements to make this selection process
  clear.

This commit was SVN r7509.
2005-09-26 21:55:32 +00:00
Brian Barrett
1d9b663b62 * test for condition where we think we can intercept malloc/free/munmap but
really can't.  Test for munmap, since it's the most likely to cause problems,
  since it's always an interposed symbol.

  The condition that usually causes problems is if libmpi was brought in as
  the result of a library dependency, rather than as a -l on the link line.
  The linker in this case will find malloc/free/munmap/etc. in libc, rather
  than in libmpi.

This commit was SVN r7508.
2005-09-26 20:20:20 +00:00
Jeff Squyres
f5ded6dd04 Don't link in libopal here because this component is *always* built
statically, and therefore is part of libopal.

This commit was SVN r7494.
2005-09-23 12:39:47 +00:00
Tim Woodall
5eec949138 fix my fix
This commit was SVN r7490.
2005-09-22 17:09:04 +00:00
Tim Woodall
5556337a8b workaround for deadlock
This commit was SVN r7489.
2005-09-22 17:03:30 +00:00
George Bosilca
46a5259a3f Missing a \ protection from the LIBS list.
This commit was SVN r7480.
2005-09-22 15:38:05 +00:00
Andrew Friedley
555ae37255 Add lib{opal,orte,mpi}.la to appropriate LIBADD's, some whitespace cleanup as well.
This commit was SVN r7477.
2005-09-22 12:28:54 +00:00
Ralph Castain
5686e8119e Move the error name macro to the errmgr framework. Add a second level of tracing. Remove an obsolete file.
This commit was SVN r7445.
2005-09-20 17:09:11 +00:00
Ralph Castain
bfef5928a1 Add a second trace option to pass an argument
This commit was SVN r7433.
2005-09-19 20:22:22 +00:00
George Bosilca
9da5fc2d65 It's already defined in the .h file.
This commit was SVN r7419.
2005-09-18 12:32:33 +00:00
Jeff Squyres
c1ed60be77 Fix problem of not sending appropriate flags to the wrapper
compilers. 

This commit was SVN r7416.
2005-09-17 10:44:20 +00:00
Brian Barrett
753b9a888e * fix compiler warning
This commit was SVN r7412.
2005-09-16 19:15:36 +00:00
Brian Barrett
b3cc58b681 * use rd instead of mov because for some odd reason GAS doesn't like
moving the tick register to another register, but is fine with rd.
* properly mask out the upper 32 bits of the register containing the
  lower 32 bits so that the or with the upper 32bits actually works
  properly.  Hopefully, gcc will optimize this into code that doesn't
  suck so much (it's much easier to deal with when you get to control
  the argument registers...)

This commit was SVN r7410.
2005-09-16 17:44:18 +00:00
Brian Barrett
93e28ebe74 * hack up rml_cnos to work with last round of orte changes
* updates to the red storm configure setup
* fix missing header if no timer components are found

This commit was SVN r7402.
2005-09-16 02:25:41 +00:00
Brian Barrett
a35c2e911d * make sure to dist timer.h
* have the real assembly for 64 bit mode (doh!)
* make sure to define type (remove debugging #if 0)

This commit was SVN r7401.
2005-09-15 22:26:07 +00:00
Jeff Squyres
15d0a95202 - Remove extra whitespace from Makefile.am's from when we removed
Makefile.options
- Sample in each of the three projects of how to link againt the
  relevant libraries so that when components are loaded into a parent
  process' space, we don't rely on the libopal/liborte/libmpi symbols
  being in the parent's public symbol namespace -- instead,
  dynamically link to the relevant libraries, allowing the dynamic
  linker to pull those libraries in at run-time, if needed

This commit was SVN r7397.
2005-09-15 20:56:18 +00:00
Jeff Squyres
46bed32fc6 While double-checking the order of SUBDIRS (ensuring dynamic-mca is
after "."), remove some whitespace left over from when we removed
Makefile.options.

This commit was SVN r7393.
2005-09-15 20:46:29 +00:00
Brian Barrett
5dcec6e2fe add assembly for timer operations on SPARC, and update linux timer component to
get frequency when on SPARC

This commit was SVN r7372.
2005-09-14 21:14:39 +00:00
Jeff Squyres
ef955b2f81 Could have sworn that I removed these long ago...
This commit was SVN r7331.
2005-09-12 23:28:47 +00:00
Jeff Squyres
eb5775cb6e - Expand error messages to be a bit more helpful
- Use the new MCA param API to register the parameters

This commit was SVN r7309.
2005-09-12 16:07:05 +00:00
Jeff Squyres
c4731285ee protect state var with the same #if that the rest of the code is
protected with

This commit was SVN r7292.
2005-09-10 11:17:01 +00:00
George Bosilca
a4c70dd4c3 The trace macro take one argument even if we do not intent to use it. Otherwise some compilers complain and generate errors.
This commit was SVN r7271.
2005-09-09 19:59:33 +00:00
Ralph Castain
76ccec0cee Upgrade the new opal trace system to utilize verbosity. Begin building the trace command into the ORTE system.
This commit was SVN r7267.
2005-09-09 18:27:17 +00:00
Jeff Squyres
0b255830e0 Slight change to the defaults -- make the prefix "output-pid<pid>-" so
that multiple processes don't overwrite each other.  Change that
default in orte_init_stage1() to just "output-" (because the file will
be in a process-unique directory at that point; the pid is no longer
necessary).

This commit was SVN r7256.
2005-09-09 12:37:39 +00:00
Jeff Squyres
86cca77046 Clarification on docs
This commit was SVN r7255.
2005-09-09 12:25:55 +00:00
Jeff Squyres
7eadfc4bdc Add a new hook function into the opal_output system:
opal_output_set_output_file_info().  This allows getting and setting
the default directory where output stream files will be opened (for
all *new* streams).  Before this function is not invoked, the default
location is $TMPDIR or $HOME (if $TMPDIR is not defined).  

Added a call into orte_init_stage1() to call this function
immediately after the session directory is created and set the default
location of stream files to be the process' session directory.

This commit was SVN r7254.
2005-09-09 12:18:39 +00:00
Jeff Squyres
4aa75fa739 - Make opal_output_stream_t be a real opal_object_t so that it can use
a constructor, like the rest of the code base
- Convert usage in the tree to use the constructor to zero out an
  instance of opal_output_stream_t
- Still need to re-enable output files

This commit was SVN r7253.
2005-09-09 10:46:54 +00:00
Jeff Squyres
eeee36aa73 Style changes only (this was originally written before many of the
style guidelines existed) so that the next patch concentrates on
fixes / functionality changes

This commit was SVN r7249.
2005-09-09 09:38:43 +00:00
Jeff Squyres
eb25be25be Add missing "\"
This commit was SVN r7232.
2005-09-08 10:02:21 +00:00
Ralph Castain
5d68fa836f Change the flag name to conform to prefix rules
This commit was SVN r7223.
2005-09-07 19:43:40 +00:00
Ralph Castain
2c6e47e38c Add a trace utility that provides info on progress through functions. This is not enabled yet - need Jeff or Brian to add it to the configure/build system.
This commit was SVN r7222.
2005-09-07 18:52:28 +00:00
Brian Barrett
ed56e743b7 * update configure.ac to use the modern version of AC_INIT and
AM_INIT_AUTOMAKE, instead of the deprecated version.
* Work around dumbness in modern AC_INIT that requires the version
  number to be set at autoconf time (instead of at configure time, as
  it was before).  Set the version number, minus the subversion r number,
  at autoconf time.  Override the internal variables to include the r
  number (if needed) at configure time.  Basically, the right thing
  should always happen.  The only place it might not is the version
  reported as part of configure --help will not have an r number.
* Since AM_INIT_AUTOMAKE taks a list of options, no need to specify
  them in all the Makefile.am files.
* Addes support for subdir-objects, meaning that object files are put
  in the directory containing source files, even if the Makefile.am is
  in another directory.  This should start making it feasible to
  reduce the number of Makefile.am files we have in the tree, which
  will greatly reduce the time to run autogen and configure.

This commit was SVN r7211.
2005-09-07 05:54:53 +00:00
Rainer Keller
192625d2a1 - Once again: uninteresting cleanup to get diff smaller.
This commit was SVN r7178.
2005-09-04 20:54:19 +00:00
Brian Barrett
492aeecd11 * track the actual allocations within the ompi and opal free_lists, so that
we can free all allocated memory when the free_list is destructed.  Fixes
  a whole bunch of memory leaks...

This commit was SVN r7173.
2005-09-03 19:46:44 +00:00
Jeff Squyres
1deea5ddb9 Minor mods:
- style and error code updates
- use strdup instead of malloc/strcpy

This commit was SVN r7164.
2005-09-03 00:06:20 +00:00
Brian Barrett
a9863e5ff5 * properly construct / destruct the condition variable in the free list
structures

This commit was SVN r7153.
2005-09-02 16:00:42 +00:00
Jeff Squyres
a8f9df9951 Change the API slightly so that it is assumed that each process will
be called with a description of its memory segments to make local.  It
is a small enough API that changing to support a
one-process-does-all-assignment model is simple enough if we ever need
it.

This commit was SVN r7148.
2005-09-02 12:57:02 +00:00
Jeff Squyres
3962c53e2e - Add to AM_CPPFLAGS $(OPAL_LTDL_CPPFLAGS) where necessary in order to
add a -I to find the included ltdl.h (vs. a system-installed ltdl.h)
- Clean up kruft in a bunch of Makefile.am's to remove now-unnecessary
  AM_CPPFLAGS settings to get static-components.h for each framework
- Move the component_repository API functions out of opal/mca/base/base.h
  and into opal/mca/base/mca_base_component_repository.h in order to
  decrease unnecessary dependencies (e.g., before this, almost
  everything in the tree depended on ltdl.h, which is unnecessary --
  only a small number of files really need ltdl.h)

This commit was SVN r7127.
2005-09-01 12:16:36 +00:00
Jeff Squyres
67168466be Fix minor typo in the comment/docs
This commit was SVN r7126.
2005-09-01 12:12:32 +00:00
Jeff Squyres
b4e2c96e22 - Adjust include paths for ltdl.h
- Properly set CLEANFILES to remove F90 kruft

This commit was SVN r7106.
2005-08-31 10:56:01 +00:00
Tim Woodall
dc0f3eef63 more corrections
This commit was SVN r7100.
2005-08-30 21:26:24 +00:00
Tim Woodall
f742e4901f we always acquire/release this lock - support threaded users
of the library

This commit was SVN r7099.
2005-08-30 21:17:33 +00:00
Jeff Squyres
774549d640 Add missing header file
This commit was SVN r7090.
2005-08-30 10:41:25 +00:00
Brian Barrett
77ebdf1c6f * Add some debugging output Ralph asked for when an unknown error code is
passed to opal_error

This commit was SVN r7087.
2005-08-29 23:36:53 +00:00
Jeff Squyres
6089b02afd First cut of the libnuma implementation
This commit was SVN r7074.
2005-08-29 15:13:54 +00:00
Brian Barrett
2143ed4c81 * move error -> string converter registration from orte_init to
orte_init_stage1(), since not all ORTE processes call orte_init().
* Expad opal_error test case to make sure ORTE error codes print
  properly
* Make project error codes start at easy values (OPAL is -1 to -100,
  ORTE is -101 to -200, OMPI is less than -201) to make it easier
  to figure out what an error code as an integer means.  Also has
  the nice property of not changing the values of error codes ever
  time a new error code is added.

This commit was SVN r7061.
2005-08-26 23:36:57 +00:00
Jeff Squyres
c9cdb36b0b Finally get this right: move orte_sys_info.[ch] back into the orte
tree.
- fix up #include's throughout the tree (yay contrib/search_replace.pl!)
- remove a few extraneous #include's
- remove orte_sys_info*() from opal_init()/opal_finalize() (it's
  already in orte_init_stage1() and orte_system_finalize())
- remove dependencies in opal on orte_system_info -- util/os_path.c
  and util/os_create_dirpath.c (they only used path_sep, anyway --
  easily changed to #defines)

This commit was SVN r7059.
2005-08-26 21:03:41 +00:00
Jeff Squyres
f7638f0884 First cut of libnuma maffinity component; not yet complete
This commit was SVN r7052.
2005-08-26 19:51:02 +00:00
Jeff Squyres
a771aeb1ab Remove some kruft from copy-n-paste
This commit was SVN r7051.
2005-08-26 19:50:24 +00:00
Jeff Squyres
900631e9f9 - Add a first cut of the memory affinity (maffinity) framework. It's
API is still a bit unstable and may change.
- Add a primitive "first use" component that simply has each process
  "touch" the pages that they want to use, thereby [hopefully] locking
  them locally to a specific processor
- Add hooks in ompi_mpi_init to enable memory affinity when processor
  affinity is used.
- Added hooks in ompi_mpi_finalize to shut down memory affinity when
  it was initialized during ompi_mpi_init.
- Added right hooks in ompi_info to display maffinity components.

This commit was SVN r7044.
2005-08-26 10:56:39 +00:00
Jeff Squyres
2bd821d8dc Clarify some comments
This commit was SVN r7038.
2005-08-25 17:42:00 +00:00
Brian Barrett
71a28437bf * fix duplicate local symbol probelm in PPC64 assembly
This commit was SVN r7035.
2005-08-25 16:37:48 +00:00
Brian Barrett
7a8e646fff * add missing OBJ_RELEASE in memory manager code
* fix off-by-one error in os_path code
* Bunch of memory fixes for OPAL unit tests

This commit was SVN r7033.
2005-08-25 16:28:41 +00:00
Brian Barrett
e0d49880d7 * make sure that the sys_info structure has valid data for applications that
only call opal_init (like the new wrapper compilers in development) so that
  they don't find bad data in the structure

This commit was SVN r7024.
2005-08-25 00:59:21 +00:00
Brian Barrett
92fb84fd85 * oops - remove #if 0 that accidently slipped in
This commit was SVN r7013.
2005-08-24 20:41:52 +00:00
Brian Barrett
c37f9a6391 * give if code a chance to clean up after itself
This commit was SVN r7012.
2005-08-24 20:27:45 +00:00
Brian Barrett
2577ab4722 * a bunch of cleanups to make trivial opal programs valgrind-clean
This commit was SVN r7009.
2005-08-24 20:19:36 +00:00
Jeff Squyres
cba8c1895f - Plug a memory leak
- Be a little more direct in looking up the files

This commit was SVN r7005.
2005-08-24 16:40:12 +00:00
Brian Barrett
440a95b808 * so apparently Linux has a lame old strerror_r that has a different
prototype than everyone else.  It's only active if _GNU_SOURCE is
  definted, which of course we have to have defined for asprintf.
  So just use strerror() underneath

This commit was SVN r7002.
2005-08-24 13:44:57 +00:00
Brian Barrett
c62ce1593a * IA64 high-res timer support for compilers without GCC-style inline
assembly

This commit was SVN r6997.
2005-08-24 03:42:31 +00:00