implement specific function, thereby
removing bogus requirement on valgrind/valgrind.h
dough...
- Call specific function runindebugger() before
doing expensive checks on each component of struct.
- Get rid of void* warnings..
This commit was SVN r17438.
Update properties to ignore the carto_file_lex.c file since that is also dynamically generated.
Update the build-hgignore.pl to properly disregard DS_Store files
This commit was SVN r17301.
map_to_processor_id,
map_to_socket_core,
max_processor_id,
max_socket,
max_core.
In OS other then Linux, those functions will return OPAL_ERR_NOT_SUPPORTED.
--This Line, and those below, will be ignored--
M paffinity/linux/paffinity_linux_module.c
M paffinity/paffinity.h
M paffinity/base/base.h
M paffinity/base/paffinity_base_wrappers.c
M paffinity/windows/paffinity_windows_module.c
M paffinity/solaris/paffinity_solaris_module.c
This commit was SVN r17173.
about linkers, have all OPAL, ORTE, and OMPI components '''not'' link
against the OPAL, ORTE, or OMPI libraries.
See ttp://www.open-mpi.org/community/lists/users/2007/10/4220.php for
details (or https://svn.open-mpi.org/trac/ompi/wiki/Linkers for a
better-formatted version of the same info).
This commit was SVN r16968.
requesting it. This commit adds a bit of error checking to keep us from
participating in a checkpoint that we did not initiate and therefore are
not ready for.
Thanks to Paul Hargrove and Eric Roman for their help with this.
This commit was SVN r16694.
* Fix some missing includes in a few places.
* Add the cr_request() functionality to the BLCR CRS component.
We are now dependent upon the 0.6.* series of BLCR.
* Made the CR notification mechanism a registered function.
This way we can have an OPAL-only version and it can be replaced at
runtime with the ORTE version.
* Add a 'opal_cr_allow_opal_only' parameter that will enable OPAL-only
CR functionality when the user wants it. Default: Disabled.
* Fix the placement of a checkpoint request check in MPI_Init
* Pull the OPAL notification mechanism into the SnapC framework.
* We no longer fork/exec the 'opal-checkpoint' command for local
checkpointing, the Local coordinator in the orted does this directly.
* The Local and Application coordinator talk together bypassing the OPAL
notifiation mechanism.
* Optimized the Local <-> App Coordinator communication.
* Improved the structure used to track vpid_snapshots in the local coord.
* Fix a race condition in which an application under heavy communication load
may produce an inconsistent global checkpoint.
This commit was SVN r16389.
was taken form the $CWD to the storage directory. Now we just store directly
to the storage directory which can reduce NFS traffic if working in that mode.
A slight performance boost, but at the point you are using NFS you are paying
a penalty anyway. Now you just don't have to pay it twice :)
This commit was SVN r16099.
A subset of this patch needs to be applied to v1.2
Refs trac:928
This commit was SVN r15918.
The following Trac tickets were found above:
Ticket 928 --> https://svn.open-mpi.org/trac/ompi/ticket/928
was brought in. This supercedes the GLOBL patch that we had been using
with Libtool 2.1a versions prior to the lt_dladvise code. Autogen
tries to figure out which version you're on, so either will now work with
the trunk.
This commit was SVN r15903.
This is because internally 'self' uses dlopen to look at the application
running to determine if it can/should be used or not.
This commit was SVN r15673.
Remove the matching logic out of dynamic path into an
extra function. Add the corresponing check to the static
component path.
This commit was SVN r15458.
There are several interesting things:
1. less NFS traffic [as we potentially access less files]
2. faster loading time [in case the user tune it's execution environment]
3. (1) + (2) -> faster startup time [at least everything which do not depend on the network]
4. MX bug will go away if the pml is specified.
5. No useless BTL will be opened, which will solve few others issues.
This commit was SVN r15402.
* Remove the 'opal_mca_base_param_use_amca_sets' global variable
* Harness the fact that you can (read should) call the cmd_line functions
before initializing opal_init_util(). This pushes the MCA/GMCA/AMCA
command line options into the environment before OPAL inits and starts
to use these values. By putting the cmd_line parse before opal_init_util
in orterun and orted we only parse the *MCA parameter files once, and
correctly (alleviating the need to 'recache' the files on init.)
* Small bits of cleanup.
This commit was SVN r15219.
Ensure that the AM_CONDITIONALs are ''always'' run, even if we
--enable-mca-no-build the paffinity/linux component.
This commit was SVN r15095.
The following Trac tickets were found above:
Ticket 1057 --> https://svn.open-mpi.org/trac/ompi/ticket/1057
re-enabling compilation of this component.
However, it still won't compile because this component provides a
module finalize function which apparently somehow got dropped from the
paffinity base. Support for the paffinity module finalize function
needs to be re-added.
This commit was SVN r14915.
* Enable VPATH builds to work (slight tweak of r14895 -- mainly
because I already had it done when George committed :-) )
* Enable "make dist" to work properly for PLPA included mode
* Update plpa.h.in
* Update svn:ignore
Took relevant changes back to the main PLPA SVN as well.
This commit was SVN r14896.
The following SVN revision numbers were found above:
r14895 --> open-mpi/ompi@bb7b04e875
Changes paffinity interface to use a cpu mask for available/preferred cpus
rather than the current coarse grained paffinity that lets the OS choose
which processor.
Macros for setting and clearing masks are provided.
Solaris and windows changes have not been made. Solaris subdirectory has some
suggested changes - however the relevant man pages for the Solaris 10 APIs
have some ambiguity regarding order in which one create and sets a processor
set. As we did not have access to a solaris 10 machine we could not test to
see the correct way to do the work under solaris.
This commit was SVN r14887.
symbols in them and environ is defined only in the final application
(probably in crt1.o). Apple provides a function for getting at the
environment, so use that instead if it's available.
This commit was SVN r14857.
* Require Autoconf 2.60 or higher and remove some cruft
required for AC 2.59 or the AC 2.59 / AC 2.60 mix
* Remove a bunch of now unnecessary AC_SUBST calls
* Use the libtool-provided variables for the -I and
library to use when compiling against ltdl
Fixes trac:1000
This commit was SVN r14652.
The following Trac tickets were found above:
Ticket 1000 --> https://svn.open-mpi.org/trac/ompi/ticket/1000
Protect the free and strdup values for replacing keyval pairs just as we do
below in the files for new keyval pairs.
In basic testing this seems to make everything work as it should again.
This commit was SVN r14460.
The following Trac tickets were found above:
Ticket 1002 --> https://svn.open-mpi.org/trac/ompi/ticket/1002
finally brings in functionality that is already on the 1.2 branch, and
was developed and tested in the v1.2ofed branch (and other places).
Short version of new features:
* Support for ibv_fork_init()
* Automatically fill in the openib BTL bandwidth value by
querying the HCA port
* Installdirs functionality
* Fixes to always use -I in the Fortran wrapper compilers (#924)
* Gleb's mpool updates
* Remove some kruft in btl/openib/configure.m4, therefore
fixing the harmless warnings noted in #665
* Bunches of updates to the Linux RPM spec file
I.e., effectively the same thing that r14411 brought to the v1.2
branch.
Also effectively brought in r14432 and r14433 (some fixes on top of
the original r14411 commit to v1.2). Still need to bring in the moral
equivalent of r14445 after this commit (fixes to installdirs).
This commit was SVN r14449.
The following SVN revision numbers were found above:
r14411 --> open-mpi/ompi@83b31314ae
r14432 --> open-mpi/ompi@a48f160595
r14433 --> open-mpi/ompi@68f346d2bc
r14445 --> open-mpi/ompi@13d366b827
Per discussions with Brian and Ralph, make a slight correction in
where components are installed. Use $pkglibdir, not $libdir/openmpi,
so that when compiled in the orte trunk, components are installed to
the right directory (because the component search patch is checking
$pkglibdir).
This commit was SVN r14345.
The following SVN revisions from the original message are invalid or
inconsistent and therefore were not cross-referenced:
r14289
- Add signal handler BLCR register (helps with debugging)
- ifdef out the cr_request_file section for checkpointing self.
There is a bug with the 0.4.2 version of BLCR such that this
does not handle moving checkpoint files around.
I'm following up with the BLCR folks on this one (and checking
the newest release).
This commit was SVN r14069.
This merge adds Checkpoint/Restart support to Open MPI. The initial
frameworks and components support a LAM/MPI-like implementation.
This commit follows the risk assessment presented to the Open MPI core
development group on Feb. 22, 2007.
This commit closes trac:158
More details to follow.
This commit was SVN r14051.
The following SVN revisions from the original message are invalid or
inconsistent and therefore were not cross-referenced:
r13912
The following Trac tickets were found above:
Ticket 158 --> https://svn.open-mpi.org/trac/ompi/ticket/158
builds, so disable it there
* On 10.4.8 (and possibly others), siginfo is NULL in the signal
callback on 64 bit Intel builds, so account for that in the signal
callback.
This commit was SVN r14045.
- mca_base_param_file_prefix
(Default: NULL)
This is the fullname of the "-am" mpirun option. Used to specify a ':'
separated list of AMCA parameter set files.
- mca_base_param_file_path
(Default: $SYSCONFDIR/amca-param-sets/:$CWD)
The path to search for AMCA files with relative paths. A warning will be
printed if the AMCA file cannot be found.
* Added a new function "mca_base_param_recache_files" the re-reads the file
configurations. This is used internally to help bootstrap the MCA system.
* Added a new orterun/mpirun command line option '-am' that aliases for the
mca_base_param_file_prefix MCA parameter
* Exposed the opal_path_access function as it is generally useful in other
places in the code.
* New function "opal_cmd_line_make_opt_mca" which will allow you to append a
new command line option with MCA parameter identifiers to set at the same
time. Previously this could only be done at command line declaration time.
* Added a new directory under the $pkgdatadir named "amca-param-sets" where all
the 'shipped with' Open MPI AMCA parameter sets are placed. This is the first
place to search for AMCA sets with relative paths.
* An example.conf AMCA parameter set file is located in
contrib/amca-param-sets/.
* Jeff Squyres contributed an OpenIB AMCA set for benchmarking.
Note: You will need to autogen with this commit as it adds a configure param.
Sorry :(
This commit was SVN r13867.
timers might natively return nanoseconds instead of microseconds, as is
the case on x86. Fixes an issue with really high shared memory latencies
on Intel macs
This commit was SVN r13038.
components that use configure.m4 for configuration or are always built.
The macro has not been needed since moving to configure types other than
configure.stub
Fixes trac:590
This commit was SVN r13031.
The following Trac tickets were found above:
Ticket 590 --> https://svn.open-mpi.org/trac/ompi/ticket/590
* Have darwin backtrace code return an error when buffer() is
called, since it is not imnplemented
* Print out hostname & pid when giving signal information
* If backtrace_buffer() is implemented, use that instead of
backtrace_print() and prefix stacktrace with the hostname
* Make the signal information printed be more user friendly
* If we're using the backtrace_buffer() code, don't print
the last two functions (which will be show_stackframe()
then backtrace_buffer()) so that users won't keep thinking
the error occurred inside Open MPI (sneaky, yes...)
Refs trac:538
This commit was SVN r12883.
The following Trac tickets were found above:
Ticket 538 --> https://svn.open-mpi.org/trac/ompi/ticket/538
whether they are prefixed with a double underscore or not.
__DARWIN_UNIX03 is defined on Tiger when compiling PPC 64 code, so
we can't use that.
Refs trac:575
This commit was SVN r12418.
The following Trac tickets were found above:
Ticket 575 --> https://svn.open-mpi.org/trac/ompi/ticket/575
renamed the register fields in the thread state structures. Support compiling
with either the old or new names, keying off the UNIX03 define (which is what
the 10.5 headers do).
Refs trac:450
This commit was SVN r12285.
The following Trac tickets were found above:
Ticket 450 --> https://svn.open-mpi.org/trac/ompi/ticket/450
* Make sure to AC_SUBST the backtrace CFLAGS so that the right flags
are passed to the component (especially -m64)
* Properly open / close the component. This isn't strictly necessary
to fix the bug, but was an oversight that should be fixed.
This commit was SVN r11806.
The following Trac tickets were found above:
Ticket 405 --> https://svn.open-mpi.org/trac/ompi/ticket/405
* Use $31 instead of mnemonic zero for the gcc inline
assembly test, as the GNU assembler doesn't like
zero, but both Tru64 and GNU assembler should be fine
with $31
* Disable Linux timer component on Alpha. The CPU timer
rolls over every 10 seconds or less, so it's kinda
worthless for our needs.
* Fix some escaping issues when local functions are
denoted with a $
* Remove C++ comments from the Alpha assembly.
* Add base assembly code for the non-inlined functions
on Alpha
This commit was SVN r11764.
The same treatement will happens on all sub-projects. The .h files
have to be C++ compatibles and all symbols with an external visibility
have to get the {PROJECT}_DECLSPEC in front of the prototype.
This commit was SVN r11340.
range of OS friendly path management functions, such as opal_basename
opal_dirname. They should always be used instead of basename and
dirname. There are several functions which allow us to create paths
that are compatible with the OS.
The OPAL_ENV_SEP define should be used (instead of ':') when a env
variable is splitted.
This commit was SVN r11336.
Windows version for the libevent. The one they provide is more than
innapropriate for what we need (without talking about the fact that
the code is just plain wrong).
This commit was SVN r11329.
environment variables.
- The HOME on Windows is called USERPROFILE.
- C++ compilers (at least on Windows) require explicit casts. Even going
through a void* does not help.
- Cleanup the Windows file name management.
- Always use opal_os_path to create OS friendly paths.
This commit was SVN r11311.
different macros, one for each project. Therefore, now we have OPAL_DECLSPEC,
ORTE_DECLSPEC and OMPI_DECLSPEC. Please use them based on the sub-project.
This commit was SVN r11270.
So define the constant if it isn't already defined. Something else
includes stdio.h, which has a bunch of declarations that really
confuse non-GNU compilers, so be sure to include that one before
setting __USE_GNU.
refs trac:280
This commit was SVN r11265.
The following Trac tickets were found above:
Ticket 280 --> https://svn.open-mpi.org/trac/ompi/ticket/280
already set. This can annoy compilers that aren't GNUish
* __align is technically a reserved token and IBM XL appears to be doing
something with it that causes compile badness. So use a different
variable name.
refs trac:279
This commit was SVN r11264.
The following Trac tickets were found above:
Ticket 279 --> https://svn.open-mpi.org/trac/ompi/ticket/279
compiler, automatically disable the ptmalloc component. It seems that
optimization level -O2 or higher will cause the generated code to do
Bad Things (e.g., opalcc will segv). Upgrading to the Intel 9.1
compiler seems to fix the problem.
This closes ticket #227.
This commit was SVN r11076.
components to load:
- only allow the ^ to be the first character of the value
- if we find ^ elsewhere in the value, print an error and fail
This commit was SVN r10880.
than $(LN_S). This causes problems with with Windows and probably
elsewhere (re: #200). So use a slightly different trick to get the
right header selected for the MEMCPY and TIMER components.
* Using the same trick used to solve the AC_CONFIG_LINKS problem,
stop using a separate header file for direct calling in the
PML and MTL. This lets me remove some icky code in ompi_mca.m4
that was more fragile than I really liked.
This commit was SVN r10841.
reentrant for free(), so we can't call free() from inside an sbrk() handler.
The solution is never call sbrk() with a negative number. The mmap() allocator
used for large allocations does not have this problem and continues to give
memory back to the OS as soon as possible.
This should go to both the v1.1 and v1.0 branches.
This commit was SVN r9943.
implementations. I dont want to overload the memcpy functions,
therefore people interested in using the high performance memcpy
should use directly opal_memcpy instead. Notice, that there are 2
other versions of memcpy available, which use a destination or a source
described as iovecs.
This commit was SVN r9532.
installation directories) in configure, the files that depend on this
information are not properly rebuilt. If you need this information,
don't setup a -D in the Makefile.am - instead, include
opal/install_dirs.h.
* Use the : option in AC_CONFIG_FILES to avoid needing to expose that
we are playing around with temporary files with our headers to avoid
rebuilding
* Clean up the version file information a bit, and like the install
directory stuff, make sure that there is a dependency so that
ompi_info gets rebuilt properly when a version number changes.
This commit was SVN r9256.
Still release the standard stream upon finalizing.
This commit was SVN r9204.
The following SVN revision numbers were found above:
r9182 --> open-mpi/ompi@a2a26525b3
- move files out of toplevel include/ and etc/, moving it into the
sub-projects
- rather than including config headers with <project>/include,
have them as <project>
- require all headers to be included with a project prefix, with
the exception of the config headers ({opal,orte,ompi}_config.h
mpi.h, and mpif.h)
This commit was SVN r8985.
makes illegal free() calls behave in a much more rational way. You'll still
probably die, but your stack trace will not have 3 billion pages of recusion
inside the memory allocator.
* Fix illegal free in the opal_wrapper code. basename() returns a string in a
static buffer, so it shouldn't be free()ed. It also shouldn't be left around
so long, as another call to basename() may whack the returned buffer. So
leave the free and add a strdup() around the basename() call.
* Turn off some unneeded debugging in the opal_wrapper code that would list the
comamnd to be run, regardless of the -showme option.
This commit was SVN r8758.
A small and ugly workaround the path problem on windows (the absolute
path start with [a-z]: whn : is considered as separator for most of
the environment variables.
This commit was SVN r8746.
page protection, which causes the pages to be droped, which causes problems
if we don't deregister the pages first. Since memory is cheap in this case
(it is still usable, should ptmalloc2 want it back, and is limited in size),
we just mprotect the pages instead. This solves the dropping pages problem,
and doesn't cause even more calls into the cache code.
Thanks to Gleb Natapov for both finding the problem and giving a fix.
This should go to the v1.0 branch
This commit was SVN r8732.
- fall back to compile test for windows paffinity component
when cross compiling
- fall back to platform guess when checking for threads having
different pids with pthreads (yes on linux, no elsewhere)
- pass the proper host, target, and build flags to the
ROMIO configure script
With these changes, cross-compiling should be possible with the exception
of the Fortran 77 and Fortran 90 bindings. Fortran 77 can be cross-
compiled if cache values are provided for type sizes and alignment.
This commit was SVN r8702.
r8698), with changes below:
- Split wrapper flags into those required for each of the three projects,
and cleaned up some cruft (including the LIBMPI_EXTRA_*FLAGS) through-
out the build system
- Added opal_init_util and opal_finalize_util to allow init / cleanup
of all the opal code that doesn't require the MCA system
- Create standalone key=value file parser, based on the one that used
to be in the mca param parser, so that it can be shared in multiple
places
- Add wrapper datafiles for opal, orte, and ompi wrappers, and add
wrapper compiler with support for all the old features
This commit was SVN r8699.
The following SVN revisions from the original message are invalid or
inconsistent and therefore were not cross-referenced:
r8690
r8698
* Make sure --without-BTL works for all BTLs
* Fix copy-n-paste error in aix timer configrue help string
This should go to the v1.0 branch
This commit was SVN r8554.
deallocation came from the allocator (malloc, fee, etc) or somewhere
else (the user calling mmap/munmap, etc). Going to be used by Galen
to determine if it is worth searching the allocations tree
Set flag if it is possible to intercept mmap (not always possible
due to a circular dependency between mmap, dlsym, and calloc)
This commit was SVN r8521.
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.
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.