- 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.
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.
from:
svn merge -r5440:5448 https://svn.open-mpi.org/svn/ompi/tmp/hetero .
This commit was SVN r5549.
The following SVN revisions from the original message are invalid or
inconsistent and therefore were not cross-referenced:
r5440
r5448
in the ompi_progress() function. Not yet fully operational, as there
is something going on with the subscription not getting called. E-mail
coming to those interested.
This commit was SVN r5343.
linked into libmpi
* add --enable-mca-direct to specify components that should be directly
called (instead of going through component structs and the like). The
components and component frameworks must explicitly support this.
Currently, only the TEG PML does so.
* Updated all the calls to the PML to use a macro so that they can either
be direct called or called through function pointer interfaces (aka
the component infrastructure)
This commit was SVN r5291.
* add MCA parameter (OMPI_MCA_mpi_yield_when_idle) to cause sched_yield()
to be called when the progress engine is called and nothing happens.
Default is to call sched_yield().
* add MCA parameter (OMPI_MCA_mpi_event_tick_rate) to adjust the rate
at which the event library is called from ompi_progress. When set
to 0, the event library will never be ticked. When set to 1, the
event library will be progressed every time. 2 every other, etc.
The MCA parameters are only in effect from end of MPI_Init to start of
MPI_Finalize.
This commit was SVN r5099.
Update the unit-test-status matrix to include priority.
Add several new registry diagnostics that helped track down the above bug.
M test/mca/gpr/gpr_triggers.c
M test/Unit-Test-Status.xls
M test/Unit-Test-Status.pdf
M src/mpi/runtime/ompi_mpi_init.c
M src/mca/oob/base/oob_base_xcast.c
M src/mca/ns/base/ns_base_nds_env.c
M src/mca/gpr/replica/api_layer/gpr_replica_dump_api.c
M src/mca/gpr/replica/api_layer/gpr_replica_api.h
M src/mca/gpr/replica/communications/gpr_replica_comm.h
M src/mca/gpr/replica/communications/gpr_replica_remote_msg.c
M src/mca/gpr/replica/communications/gpr_replica_cmd_processor.c
M src/mca/gpr/replica/communications/gpr_replica_dump_cm.c
M src/mca/gpr/replica/gpr_replica_component.c
M src/mca/gpr/replica/gpr_replica.h
M src/mca/gpr/replica/functional_layer/gpr_replica_dump_fn.c
M src/mca/gpr/replica/functional_layer/gpr_replica_fn.h
M src/mca/gpr/replica/functional_layer/gpr_replica_trig_ops_fn.c
M src/mca/gpr/replica/functional_layer/gpr_replica_messaging_fn.c
M src/mca/gpr/replica/functional_layer/gpr_replica_segment_fn.c
M src/mca/gpr/proxy/gpr_proxy_dump.c
M src/mca/gpr/proxy/gpr_proxy.h
M src/mca/gpr/proxy/gpr_proxy_component.c
M src/mca/gpr/gpr_types.h
M src/mca/gpr/base/base.h
M src/mca/gpr/base/unpack_api_response/gpr_base_dump_notify.c
M src/mca/gpr/base/pack_api_cmd/gpr_base_pack_dump.c
M src/mca/gpr/gpr.h
This commit was SVN r5080.
ompi_mpi_init(): we no longer *query* the components to see what they
can support -- instead, we *tell* the components what they need to
support (if they can't support it, they should disqualify themselves
from selection).
This involved a bunch of things:
- pass the configure-time-decided OMPI_ENABLE_PROGRESS_THREADS and
OMPI_ENABLE_MPI_THREADS constants to each framework selection
function
- eliminate mca_base_init_select_components()
- eliminate all "allow_multi_user_threads" and "have_hidden_threads"
kinds of arguments and aggregation from various framework selection
and component/module functions
- correctly determine the max MPI thread level that we can support and
limit the final MPI thread level as appropriate during
ompi_mpi_init()
As a side effect, while editing nearly every MPI component I also did
the following:
- found 2 places (gm and ib ptls) where ompi_set_using_threads() was
erroneously being called (I think this is left over kruft from
misunderstandings by the original authors). I removed these.
This commit was SVN r5055.
* mpi_show_mca_params
If set to true, this turns on the dumping of all MCA parameters when MPI_INIT is called.
Only the 'rank 0' processes will print the parameters.
* mpi_show_mca_params_file
(This value is only used if the first argument is set to true) If this value is non-NULL
it specifies the file to put the dump into. This file can then be used as input to mpirun
for debugging purposes. If this value is not set (and mpi_show_mca_params is set) then
the parameters are dumped to stdout.
I also changed the following parameters to internal=true:
gpr_base_replica
ns_base_replica
pcmclient_env_cellid
This commit was SVN r4475.
threads (defaults to use MPI threads, disable progress threads). This
allows us to have MPI threaded support, but without progress threads
and all that fun stuff.
This commit was SVN r4443.
after MPI-startup.
For this a new mpirun-parameter "mpi_signal" is added, one may specify a
comma-separated list of signals to grab, e.g. mpirun --mca mpi_signal 8,11
will check for SIGFPE and SIGSEGV.
It only finds the first fault (SA_ONESHOT), as after the return the same
fault will occur again.
As printout, the data provided by siginfo_t is printed to STDOUT (yes,
it calls printf ,-]).
Additionally, with glibc, it uses backtrace and backtrace_symbols to
print the calling stack up to the function in which the signal was raised:
(Rank:0) Going to write to RD_ONLY mmaped shared mem
Signal:11 info.si_errno:0(Success) si_code:2(SEGV_ACCERR)
Failing at addr:0x4020c000
[0] func:/home/rusraink/ompi-gcc/lib/libmpi.so.0 [0x40121afe]
[1] func:./t0 [0x42029180]
[2] func:./t0(__libc_start_main+0x95) [0x42017589]
[3] func:./t0(__libc_start_main+0x49) [0x8048691]
This commit was SVN r4170.
first invocation of MPI_File_open or MPI_File_delete (whichever is
first). The io framework is then only closed down if it was
successfully opened.
This is the first [atomic] step to having a progress thread in the
ROMIO component; it wasn't strictly *necessary*, but it's logically
the same direction and provided a good test case.
This commit was SVN r3895.
PLEASE NOTE: there are some diagnostic messages in oob_xcast that will print out. Please don't have a cow about them - they won't hurt nor injure anyone, and it's just there for a little while to help Tim and I debug a problem. Just didn't want to create yet another MCA parameter to debug 10 lines of code. :-)
This commit was SVN r3756.
- change mca_ptl_base_header_t definition to decrease the
header size for small messages. note that this requires
all ptls to be updated. tcp/self/sm/mx have been changed,
gm/ib/quadrics will be broken by this commit. george and
mitch have volunteered to make the required changes to gm/ib
- revised matching logic to reduce function call overhead
- changes to tcp/self/sm/mx ptls to support the revised headers
This commit was SVN r3602.
This may trigger a complete rebuild :(. Short overview of changes:
- reduce number of network slams at startup
- prevent gpr from hanging when doing process death code
- general gpr cleanups
This commit was SVN r3584.
- Add new thread function to compare current thread to an
ompi_thread_t*
- Save current thread ID in MPI_INIT*
- Add first cut of solaris thread functions
- Add stubs for missing Windows thread functions
This commit was SVN r3569.
c2f MPI_Status translation along the way. This should enable Fortran
MPI apps that use non-blocking communication to start working.
This commit was SVN r2996.