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

699 Коммитов

Автор SHA1 Сообщение Дата
Ralph Castain
a4b6fb241f Remove all remaining vestiges of the Windows integration
This commit was SVN r28137.
2013-02-28 17:31:47 +00:00
George Bosilca
ceb75eae75 Welcome in the wonderful world of MPI 3.0.
This commit was SVN r28106.
2013-02-26 10:22:12 +00:00
Ralph Castain
ebe45b4b9c Cleanup warnings that may be messing up older compilers, remove unused variables
cmr:v1.7

This commit was SVN r27542.
2012-10-31 14:42:44 +00:00
Ralph Castain
a6329ba1b6 Fix makefile
This commit was SVN r27333.
2012-09-13 03:20:05 +00:00
Jeff Squyres
3a4b92dbb7 If we get a filesystem type of "none", skip it.
This commit was SVN r27322.
2012-09-12 14:38:37 +00:00
Ralph Castain
a08c23dfdc Actually, do the right thing - leave the test alone, but just turn if "off" for now until someone, someday fixes it to work with bind mounts.
This commit was SVN r27301.
2012-09-11 19:56:58 +00:00
Ralph Castain
3c016d79db Soft mounts are okay
This commit was SVN r27300.
2012-09-11 19:48:24 +00:00
Jeff Squyres
36dc0d40a6 * Fix a few warnings in ompi_rb_tree
* Add the get_key function to the opal_tree test

This commit was SVN r27207.
2012-08-31 20:43:58 +00:00
Shiqing Fan
42dfbc7d2f Another CMake scripts update for:
correctly generate hwloc library
automatically define OMPI/OPAL/ORTE_OMPORTS for user applications
update the f77 bindings

This commit was SVN r26893.
2012-07-27 11:49:09 +00:00
Shiqing Fan
e788691fdb Include an example to show how to use Visual Studio together with Open MPI.
When building Open MPI with CMake, a VS solution will be generated automatically, this solution can be directly used.
For the installer, it's a bit tricky, need to do more in NSIS config codes, in order to make the solution file aware the installation directory of user.

This commit was SVN r26616.
2012-06-18 08:58:27 +00:00
Ralph Castain
36aab6db63 Fix test
This commit was SVN r26249.
2012-04-07 01:46:09 +00:00
Ralph Castain
bd8b4f7f1e Sorry for mid-day commit, but I had promised on the call to do this upon my return.
Roll in the ORTE state machine. Remove last traces of opal_sos. Remove UTK epoch code.

Please see the various emails about the state machine change for details. I'll send something out later with more info on the new arch.

This commit was SVN r26242.
2012-04-06 14:23:13 +00:00
Ralph Castain
3284c6ec71 Per Paul Hargrove: add another file system name
This commit was SVN r25939.
2012-02-16 03:00:07 +00:00
Rainer Keller
4e6a6fc146 - Check, whether the compiler supports __builtin_clz (count leading
zeroes);
   if so, use it for bit-operations like opal_cube_dim and opal_hibit.
   Implement two versions of power-of-two.
   In case of opal_next_poweroftwo, this reduces the average execution
   time from 83 cycles to 4 cycles (Intel Nehalem, icc, -O2, inlining,
   measured rdtsc, with loop over 2^27 values).
   Numbers for other functions are similar (but of course heavily depend
   on the usage, e.g. opal_hibit() with a start of 4 does not save
   much).  The bsr instruction on AMD Opteron is also not as fast.

 - Replace various places where the next power-of-two is computed.
   
   Tested on Intel Nehalem Cluster with openib, compilers GNU-4.6.1 and
   Intel-12.0.4 using mpi_testsuite -t "Collective" with 128 processes.

This commit was SVN r25270.
2011-10-11 22:49:01 +00:00
Wesley Bland
4e7ff0bd5e By popular demand the epoch code is now disabled by default.
To enable the epochs and the resilient orte code, use the configure flag:

--enable-resilient-orte

This will define both:

ORTE_ENABLE_EPOCH
ORTE_RESIL_ORTE

This commit was SVN r25093.
2011-08-26 22:16:14 +00:00
Wesley Bland
e1ba09ad51 Add a resilience to ORTE. Allows the runtime to continue after a process (or
ORTED) failure. Note that more work will be necessary to allow the MPI layer to
take advantage of this.

Per RFC:
http://www.open-mpi.org/community/lists/devel/2011/06/9299.php

This commit was SVN r24815.
2011-06-23 20:38:02 +00:00
Terry Dontje
266e663091 Add opal_tree class. This will be used in the future by sysinfo to store hw maps to be used by rmaps for the new affinity code.
This commit was SVN r24594.
2011-03-30 08:05:28 +00:00
Eugene Loh
2770a12beb Continue clean up of thread options started in r22841, 22842, and 22849.
No need for any CMRs to 1.5... that was already done in CMR 2728.

This commit was SVN r24545.

The following SVN revision numbers were found above:
  r22841 --> open-mpi/ompi@b400b84162
2011-03-18 21:36:35 +00:00
Ralph Castain
d5dfe05521 Remove stale code associated with OPAL_THREADS_HAVE_DIFFERENT_PIDS. In the past, we have supported the case of really, really old Linux kernels where threads have different pids. However, when we updated the event library, we didn't also update that support code. In addition, when we dropped progress thread support, we didn't remove areas of the code that could no longer be compiled (i.e., were protected by "if progress thread && if have different pids).
There was no compelling reason to support such old kernels. Accordingly, convert the test to print a nice error message indicating we no longer support old kernels (but indicate that earlier OMPI versions do) and error out. Remove all code that was protected by "if have different pids" since it can no longer be compiled.

This commit was SVN r24531.
2011-03-15 21:05:03 +00:00
Jeff Squyres
ddcbfa6af0 Fix some fairly-important typos (!)
This commit was SVN r24328.
2011-02-01 13:18:01 +00:00
Jeff Squyres
f015f885f6 Fix datatype variable names so that PGI builds stop failing in MTT.
This commit was SVN r24327.
2011-01-31 19:12:33 +00:00
George Bosilca
fc9133cc7f Correctly initialize the convertor to be used.
Don't forget to initialize the OPAL datatype module.

This commit was SVN r24279.
2011-01-20 20:05:21 +00:00
George Bosilca
29c7f2fba5 Update the tests to match the new datatype engine.
This commit was SVN r24252.
2011-01-14 07:58:50 +00:00
Shiqing Fan
f43862420c Convert the bad dos line endings to unix style for all windows related files.
This commit was SVN r24137.
2010-12-02 12:08:08 +00:00
Ralph Castain
86c7365e8e Clean up a few initialization issues - don't think these are impacting the shared memory situation as it didn't fix the problem.
Setup the event API to support multiple bases in preparation for splitting the OMPI and ORTE events. Holding here pending shared memory resolution.

This commit was SVN r23943.
2010-10-26 02:41:42 +00:00
Ralph Castain
fceabb2498 Update libevent to the 2.0 series, currently at 2.0.7rc. We will update to their final release when it becomes available. Currently known errors exist in unused portions of the libevent code. This revision passes the IBM test suite on a Linux machine and on a standalone Mac.
This is a fairly intrusive change, but outside of the moving of opal/event to opal/mca/event, the only changes involved (a) changing all calls to opal_event functions to reflect the new framework instead, and (b) ensuring that all opal_event_t objects are properly constructed since they are now true opal_objects.

Note: Shiqing has just returned from vacation and has not yet had a chance to complete the Windows integration. Thus, this commit almost certainly breaks Windows support on the trunk. However, I want this to have a chance to soak for as long as possible before I become less available a week from today (going to be at a class for 5 days, and thus will only be sparingly available) so we can find and fix any problems.

Biggest change is moving the libevent code from opal/event to a new opal/mca/event framework. This was done to make it much easier to update libevent in the future. New versions can be inserted as a new component and tested in parallel with the current version until validated, then we can remove the earlier version if we so choose. This is a statically built framework ala installdirs, so only one component will build at a time. There is no selection logic - the sole compiled component simply loads its function pointers into the opal_event struct.

I have gone thru the code base and converted all the libevent calls I could find. However, I cannot compile nor test every environment. It is therefore quite likely that errors remain in the system. Please keep an eye open for two things:

1. compile-time errors: these will be obvious as calls to the old functions (e.g., opal_evtimer_new) must be replaced by the new framework APIs (e.g., opal_event.evtimer_new)

2. run-time errors: these will likely show up as segfaults due to missing constructors on opal_event_t objects. It appears that it became a typical practice for people to "init" an opal_event_t by simply using memset to zero it out. This will no longer work - you must either OBJ_NEW or OBJ_CONSTRUCT an opal_event_t. I tried to catch these cases, but may have missed some. Believe me, you'll know when you hit it.

There is also the issue of the new libevent "no recursion" behavior. As I described on a recent email, we will have to discuss this and figure out what, if anything, we need to do.

This commit was SVN r23925.
2010-10-24 18:35:54 +00:00
Brad Benton
09c4f4d95c Added copyright notices for the files modified in r23669.
This commit was SVN r23687.

The following SVN revision numbers were found above:
  r23669 --> open-mpi/ompi@271cfa8c9a
2010-08-30 17:46:47 +00:00
Nysal Jan
271cfa8c9a Fix the the opal_path_nfs test for GPFS. Reported by Paul H. Hargrove
This commit was SVN r23669.
2010-08-26 10:10:16 +00:00
Jeff Squyres
c59743d7e3 Move the predefined gap test to ompi/debuggers (we already have the
dlopen_test there, so why not put the other debugger test there with
it?).

This commit was SVN r23527.
2010-07-28 16:22:10 +00:00
Jeff Squyres
49b8008986 Remove the peruse test from any possibility of being run during "make
check" (it's been deactivated for 2+ years now, anyway).  It needs to
be launched via "mpirun" and needs >= 2 processes, so it wasn't a good
candidate for "make check", anyway.

The test itself has moved to OMPI's internal testing suites.

This commit was SVN r23526.
2010-07-28 16:04:18 +00:00
Jeff Squyres
f5c3c2c0ac s/ompi/opal/gi in all of these files because they're really OPAL
tests, not OMPI tests.

This allows us to "make distcheck" with "./autogen.sh -no-ompi"
trees (i.e., these tests will now still work even if the OMPI layer is
not present -- because they're OPAL tests and we should treat them
that way).

This commit was SVN r23524.
2010-07-28 14:20:58 +00:00
Jeff Squyres
953e2ace35 s/ompi/opal/g throughout the file, because this is really an OPAL
test, not an OMPI test.

Also fix a case where if you haven't run "make install", then
opal_show_help_string() will (rightfully) return NULL.  So be sure to
handle that case and not segv.

This commit was SVN r23522.
2010-07-28 14:18:16 +00:00
Jeff Squyres
ce186723a7 * Only link in the top-most library that is necessary; it is no
longer necessary to link in libopen-rte if you link in libmpi (for
   example) because of the fact that libmpi now completely slurps in
   libopen-rte (ditto with libopen-rte and libopen-pal).
 * Only build ompi_rb_tree if we have the OMPI layer.

This commit was SVN r23521.
2010-07-28 14:17:08 +00:00
Jeff Squyres
a6915364e9 Only build this test if we've enabled the OMPI layer.
This commit was SVN r23520.
2010-07-28 14:14:22 +00:00
Jeff Squyres
a25d5ffbfc Er... make sure to close the comment.
This commit was SVN r23486.
2010-07-23 13:24:15 +00:00
Jeff Squyres
3241a6f414 This test currently only works on linux. Simply returning 77 from
everywhere and compiling the rest of the test out helps reduce some
MTT stderr chatter.

This commit was SVN r23485.
2010-07-23 13:15:24 +00:00
Jeff Squyres
7fa92d0f22 Fix a missed _count -> ucount update.
This commit was SVN r23479.
2010-07-23 01:06:16 +00:00
Jeff Squyres
c8bb7537e7 Remove include/opal/sys/cache.h -- its only purpose in life was to
#define CACHE_LINE_SIZE to 128.  This name has a conflict on NetBSD,
and it seems kinda odd to have a header file that ''only'' defines a
single value.  Also, we'll soon be raising hwloc to be a first-class
item, so having this file around seemed kinda weird.

Therefore, I replaced CACHE_LINE_SIZE with opal_cache_line_size, an
int (in opal/runtime/opal_init.c and opal/runtime/opal.h) on the
rationale that we can fill this in at runtime with hwloc info (trunk
and v1.5/beyond, only).  The only place we ''needed'' a compile-time
CACHE_LINE_SIZE was in the BTL SM (for struct padding), so I made a
new BTL_SM_ preprocessor macro with the old CACHE_LINE_SIZE value
(128).  That use isn't suitable for run-time hwloc information,
anyway.

This commit was SVN r23349.
2010-07-06 14:33:36 +00:00
Josh Hursey
77532c9f44 minor test fix, found my MTT
This commit was SVN r23176.
2010-05-19 17:02:13 +00:00
Abhishek Kulkarni
afbe3e99c6 * Wrap all the direct error-code checks of the form (OMPI_ERR_* == ret) with
(OMPI_ERR_* = OPAL_SOS_GET_ERR_CODE(ret)), since the return value could be a
 SOS-encoded error. The OPAL_SOS_GET_ERR_CODE() takes in a SOS error and returns
 back the native error code.

* Since OPAL_SUCCESS is preserved by SOS, also change all calls of the form
  (OPAL_ERROR == ret) to (OPAL_SUCCESS != ret). We thus avoid having to
  decode 'ret' to get the native error code.

This commit was SVN r23162.
2010-05-17 23:08:56 +00:00
Abhishek Kulkarni
4e33e6aeaa Merge OPAL SOS into the trunk.
The OPAL SOS framework tries to meet the following objectives:

 * reduce the cascading error messages and the amount of code needed to print an error message.
 * build and aggregate stacks of encountered errors and associate related individual errors with each other.
 * allow registration of custom callbacks to intercept error events.

For more information, refer to
https://svn.open-mpi.org/trac/ompi/wiki/ErrorMessages

This commit was SVN r23158.
2010-05-17 22:51:52 +00:00
Rainer Keller
8dd87def77 - Keep only the _LAST_ entry when reading in output from mount:
On Jaguar / is NFS-mounted over the initially mounted ROOTFS...

This commit was SVN r22662.
2010-02-18 18:05:55 +00:00
Rainer Keller
ecbd530a77 - Well well, that's what one gets when turning on all kinds of old
tests ;-)) Turn them off again, didn't have time to look into them
   Also, the test-program on eddie.osl.iu.edu, detects the rpc_pipefs
   mounted on /var/lib/nfs/rpc_pipefs, required for NFS.

This commit was SVN r22607.
2010-02-11 22:07:07 +00:00
Rainer Keller
ea4de16561 - Check whether file is opened on network file-system.
If file does not exist, check the directory it lives in...
   Maybe used by caller, trying to open mmap() on NFS, Lustre or
   Panasas (thanks Sam).
   For now, this is used to warn about the usage of mmap on such FS.

   Please note, that Ralph mentioned the orte_no_session_dir parameter.
   The help message includes a reference to this.

   Tested on NFS and Lustre on Linux on
     smoky: mpirun --mca orte_tmpdir_base $HOME/tmp -np 2 ./mpi_stub
     jaguar: mpirun ... --mca orte_tmpdir_base /tmp/work/$USER ...

   Fixes trac:1354

   This should   cmr:v1.5   once it has soaked and is shown to work on
   Solaris

This commit was SVN r22604.

The following Trac tickets were found above:
  Ticket 1354 --> https://svn.open-mpi.org/trac/ompi/ticket/1354
2010-02-10 23:18:29 +00:00
Rainer Keller
583bb42739 - Adapt for changed opal_init() arguments -- takes argc&argv
It's orte/constants.h not orte/orte_constants.h

This commit was SVN r22594.
2010-02-10 18:29:01 +00:00
Rainer Keller
c161cf5fa4 - These orte tests refer to include files not available anymore, call
functions not in the orte-tree, so disable for now.

This commit was SVN r22593.
2010-02-10 18:21:04 +00:00
Ralph Castain
30056c77cf Grrr...remove debug
This commit was SVN r22546.
2010-02-03 21:02:30 +00:00
Ralph Castain
1b5e4b4ac9 Update the opal_bitmap test
This commit was SVN r22545.
2010-02-03 20:56:48 +00:00
Shiqing Fan
872a4047ba Fix the bug that caused by ADD_DEPENDENCIES() from different version of CMake.
In CMake 2.6 and earlier, this function add dependencies for targets and also link the target libraries automatically, but in CMake 2.8,this behavior has been changed, i.e. it will only add the dependencies but no link, which will cause linking errors at compilation time.

This commit was SVN r22405.
2010-01-14 18:10:20 +00:00
Josh Hursey
0ba58cfcce One more argv/argc fix in tests
This commit was SVN r22270.
2009-12-07 14:40:38 +00:00
Jeff Squyres
a7ca4050b5 Doh! Missed these when adding &argc,&argv.
This commit was SVN r22261.
2009-12-04 02:30:34 +00:00
Brian Barrett
fd39f466ce Remove elements previously removed from the real structures...
This commit was SVN r22241.
2009-11-30 00:36:26 +00:00
Rainer Keller
63e540366b - Include the datatype tests again
make distcheck works
   contrib/dist/make_tarball succeeds too
   make checks shows all 5 tests passing.

This commit was SVN r22163.
2009-10-28 23:19:04 +00:00
Ralph Castain
214e26b539 Per Jeff (this work was done on a branch of mine, so I will do the commit):
Re-enable "./autogen.sh -no-ompi" again. If you -no-ompi, the entire OMPI
configury is skipped and the entire ompi/ subtree is not built. There's
some simple m4-isms that prune out the relevant parts.

I added ompi/config/, orte/config/, and opal/config/ directories. I moved a
bunch of m4 files from the top-level config/ dir into ompi/config/, and a few
into orte/config/.

Note that all 3 <project>/config directories have a config_files.m4 file. This
file contains the AC_CONFIG_FILES list for that project. The AC_CONFIG_FILES
call cannot be in an AC_DEFUN macro and conditionally called -- if it is
included at all, Autoconf will process it. Hence, these config_files.m4 files
don't AC_DEFUN -- they just have AC_CONFIG_FILES. m4_ifdef() is used to
conditionally include the files or not.

I moved a bunch of obvious OMPI-only m4 files from config/ to ompi/config/,
but I'm sure that there's more that could go. A ticket will be filed with
thoughts on future work in this area.

This commit was SVN r22113.
2009-10-20 23:44:20 +00:00
Ralph Castain
9b47a46ed9 Eliminate the datatype test until someone can fix it so that make_tarball can work
This commit was SVN r21933.
2009-09-03 16:40:05 +00:00
Rainer Keller
8e1b23779f - Replace combinations of
#if defined (c_plusplus)
          defined (__cplusplus)
   followed by
      extern "C" {
   and the closing counterpart by BEGIN_C_DECLS and END_C_DECLS.

   Notable exceptions are:
    - opal/include/opal_config_bottom.h:
      This is our generated code, that itself defines BEGIN_C_DECL and
      END_C_DECL
    - ompi/mpi/cxx/mpicxx.h:
      Here we do not include opal_config_bottom.h:                                 
    - Belongs to external code:                                                    
      opal/mca/backtrace/darwin/MoreBacktrace/MoreDebugging/MoreBacktrace.c        
      opal/mca/backtrace/darwin/MoreBacktrace/MoreDebugging/MoreBacktrace.h        
    - opal/include/opal/prefetch.h:
      Has C++ specific macros that are protected:                                  

    - Had #if ... } #endif  _and_ END_C_DECLS (aka end up with 2x
      END_C_DECLS)
      ompi/mca/btl/openib/btl_openib.h
    - opal/event/event.h has #ifdef __cplusplus as BEGIN_C_DECLS...
    - opal/win32/ompi_process.h: had extern "C"\n {...
      opal/win32/ompi_process.h: dito
    - ompi/mca/btl/pcie/btl_pcie_lex.l: needed to add *_C_DECLS
      ompi/mpi/f90/test/align_c.c: dito
    - ompi/debuggers/msgq_interface.h: used #ifdef __cplusplus
    - ompi/mpi/f90/xml/common-C.xsl: Amend

   Tested on linux using --with-openib and --with-mx

   The following do not contain either opal_config.h, orte_config.h or
   ompi_config.h
   (but possibly other header files, that include one of the above):
      ompi/mca/bml/r2/bml_r2_ft.h
      ompi/mca/btl/gm/btl_gm_endpoint.h
      ompi/mca/btl/gm/btl_gm_proc.h
      ompi/mca/btl/mx/btl_mx_endpoint.h
      ompi/mca/btl/ofud/btl_ofud_endpoint.h
      ompi/mca/btl/ofud/btl_ofud_frag.h
      ompi/mca/btl/ofud/btl_ofud_proc.h
      ompi/mca/btl/openib/btl_openib_mca.h
      ompi/mca/btl/portals/btl_portals_endpoint.h
      ompi/mca/btl/portals/btl_portals_frag.h
      ompi/mca/btl/sctp/btl_sctp_endpoint.h
      ompi/mca/btl/sctp/btl_sctp_proc.h
      ompi/mca/btl/tcp/btl_tcp_endpoint.h
      ompi/mca/btl/tcp/btl_tcp_ft.h
      ompi/mca/btl/tcp/btl_tcp_proc.h
      ompi/mca/btl/template/btl_template_endpoint.h
      ompi/mca/btl/template/btl_template_proc.h
      ompi/mca/btl/udapl/btl_udapl_eager_rdma.h
      ompi/mca/btl/udapl/btl_udapl_endpoint.h
      ompi/mca/btl/udapl/btl_udapl_mca.h
      ompi/mca/btl/udapl/btl_udapl_proc.h
      ompi/mca/mtl/mx/mtl_mx_endpoint.h
      ompi/mca/mtl/mx/mtl_mx.h
      ompi/mca/mtl/psm/mtl_psm_endpoint.h
      ompi/mca/mtl/psm/mtl_psm.h
      ompi/mca/pml/cm/pml_cm_component.h
      ompi/mca/pml/csum/pml_csum_comm.h
      ompi/mca/pml/dr/pml_dr_comm.h
      ompi/mca/pml/dr/pml_dr_component.h
      ompi/mca/pml/dr/pml_dr_endpoint.h
      ompi/mca/pml/dr/pml_dr_recvfrag.h
      ompi/mca/pml/example/pml_example.h
      ompi/mca/pml/ob1/pml_ob1_comm.h
      ompi/mca/pml/ob1/pml_ob1_component.h
      ompi/mca/pml/ob1/pml_ob1_endpoint.h
      ompi/mca/pml/ob1/pml_ob1_rdmafrag.h
      ompi/mca/pml/ob1/pml_ob1_recvfrag.h
      ompi/mca/pml/v/pml_v_output.h
      opal/include/opal/prefetch.h
      opal/mca/timer/aix/timer_aix.h
      opal/util/qsort.h
      test/support/components.h

This commit was SVN r21855.

The following SVN revision numbers were found above:
  r2 --> open-mpi/ompi@58fdc18855
2009-08-20 11:42:18 +00:00
Rainer Keller
ddaee48680 - Hmm, make check ran, but make distcheck did not know about opal_ddt_lib.c.
This commit was SVN r21665.
2009-07-14 14:45:55 +00:00
Rainer Keller
6c5532072a - Split the datatype engine into two parts: an MPI specific part in
OMPI
   and a language agnostic part in OPAL. The convertor is completely
   moved into OPAL.  This offers several benefits as described in RFC
   http://www.open-mpi.org/community/lists/devel/2009/07/6387.php
   namely:
    - Fewer basic types (int* and float* types, boolean and wchar
    - Fixing naming scheme to ompi-nomenclature.
    - Usability outside of the ompi-layer.
 - Due to the fixed nature of simple opal types, their information is
   completely
   known at compile time and therefore constified
 - With fewer datatypes (22), the actual sizes of bit-field types may be
   reduced
   from 64 to 32 bits, allowing reorganizing the opal_datatype
   structure, eliminating holes and keeping data required in convertor
   (upon send/recv) in one cacheline...
   This has implications to the convertor-datastructure and other parts
   of the code.
 - Several performance tests have been run, the netpipe latency does not
   change with
   this patch on Linux/x86-64 on the smoky cluster.
 - Extensive tests have been done to verify correctness (no new
   regressions) using:
   1. mpi_test_suite on linux/x86-64 using clean ompi-trunk and
    ompi-ddt:
    a. running both trunk and ompi-ddt resulted in no differences
       (except for MPI_SHORT_INT and MPI_TYPE_MIX_LB_UB do now run
       correctly).
    b. with --enable-memchecker and running under valgrind (one buglet
       when run with static found in test-suite, commited)
   2. ibm testsuite on linux/x86-64 using clean ompi-trunk and ompi-ddt:
      all passed (except for the dynamic/ tests failed!! as trunk/MTT)
   3. compilation and usage of HDF5 tests on Jaguar using PGI and
      PathScale compilers.
   4. compilation and usage on Scicortex.
 - Please note, that for the heterogeneous case, (-m32 compiled
   binaries/ompi), neither
   ompi-trunk, nor ompi-ddt branch would successfully launch.

This commit was SVN r21641.
2009-07-13 04:56:31 +00:00
Ralph Castain
f966d9f972 Fix visibility issues with opal_graph functions.
Fix the carto test so it can compile - need to update input file so it can run

This commit was SVN r21403.
2009-06-09 15:02:57 +00:00
Rainer Keller
fc65875542 - As in r21238, do not use printf %z for size_t...
This commit was SVN r21239.

The following SVN revision numbers were found above:
  r21238 --> open-mpi/ompi@b2f8095ba7
2009-05-14 14:11:31 +00:00
Greg Koenig
60485ff95f This is a very large change to rename several #define values from
OMPI_* to OPAL_*.  This allows opal layer to be used more independent
from the whole of ompi.

NOTE: 9 "svn mv" operations immediately follow this commit.

This commit was SVN r21180.
2009-05-06 20:11:28 +00:00
Rainer Keller
7663fb47f0 - In the included headers, the string.h is missing.
- For size_t, Posix offers %z length modifier, get rid
   of warning (or need to cast...)

This commit was SVN r21165.
2009-05-05 15:42:31 +00:00
Ralph Castain
e1673778be Replace missing headers
This commit was SVN r21136.
2009-05-01 15:09:10 +00:00
Jeff Squyres
80a1ae45ba Add missing header
This commit was SVN r21122.
2009-04-30 11:36:35 +00:00
Rainer Keller
221fb9dbca ... Delayed due to notifier commits earlier this day ...
- Delete unnecessary header files using
   contrib/check_unnecessary_headers.sh after applying
   patches, that include headers, being "lost" due to
   inclusion in one of the now deleted headers...

   In total 817 files are touched.
   In ompi/mpi/c/ header files are moved up into the actual c-file,
   where necessary (these are the only additional #include),
   otherwise it is only deletions of #include (apart from the above
   additions required due to notifier...)

 - To get different MCAs (OpenIB, TM, ALPS), an earlier version was
   successfully compiled (yesterday) on:
   Linux locally using intel-11, gcc-4.3.2 and gcc-SVN + warnings enabled
   Smoky cluster (x86-64 running Linux) using PGI-8.0.2 + warnings enabled
   Lens cluster (x86-64 running Linux) using Pathscale-3.2 + warnings enabled

This commit was SVN r21096.
2009-04-29 01:32:14 +00:00
Shiqing Fan
3d4e0472d6 Add windows support files into the tarball, including .windows, CMakeLists.txt files, and CMake modules. Thanks to Jeff for testing it on Linux.
This commit was SVN r21069.
2009-04-24 16:39:33 +00:00
Rainer Keller
ec0ed48718 - Revert r20739
This commit was SVN r20742.

The following SVN revision numbers were found above:
  r20739 --> open-mpi/ompi@781caee0b6
2009-03-05 21:56:03 +00:00
Rainer Keller
781caee0b6 - First of two or three patches, in orte/util/proc_info.h:
Adapt orte_process_info to orte_proc_info, and
   change orte_proc_info() to orte_proc_info_init().
 - Compiled on linux-x86-64
 - Discussed with Ralph

This commit was SVN r20739.
2009-03-05 20:36:44 +00:00
Jeff Squyres
8fe40fb4a1 r20701 was a lie; we ''do'' need the libraries when compiling in debug
mode, because some functions are not inlined.

This commit was SVN r20736.

The following SVN revision numbers were found above:
  r20701 --> open-mpi/ompi@b440c92455
2009-03-05 15:30:50 +00:00
Ralph Castain
1d4bbee096 Fix bitmap test so make tarball can succeed
This commit was SVN r20713.
2009-03-04 12:26:45 +00:00
Rainer Keller
811f2bd9b4 - As discussed on RFC, move the ompi_bitmap to the
opal layer.
   Add a check against a maximum (actually get rid of ifs internally to
   opal_bitmap.c) -- the functionality to set the current maximum size
   opal_bitmap_set_max_size() is currently only used in attribute.c
   to set the maximum OMPI_FORTRAN_HANDLE_MAX...

   Tested on linux/x86-64 with intel-tests with all_tests_no_perf_f
   run with 6 procs.
   Let's look into MTT as well...

This commit was SVN r20708.
2009-03-03 22:25:13 +00:00
Jeff Squyres
b440c92455 We don't need to link against any of the OMPI libraries; this test
just slurps in .h files.

This commit was SVN r20701.
2009-03-03 17:06:46 +00:00
Shiqing Fan
2326f14be5 Remove the unnecessary PROJECT command, I somehow misunderstood how it should be used on Windows....
This commit was SVN r20634.
2009-02-25 16:07:43 +00:00
Terry Dontje
0178b6c45f Added padding to predefined handle structures to maintain library version to
version compatibility.

This commit was SVN r20627.
2009-02-24 17:17:33 +00:00
Eugene Loh
463f11f993 Improve shared-memory allocation:
* compute mmap-file size more wisely and pass requested size to allocator
* change MCA parameters:
  - get rid of mpool_sm_per_peer_size
  - get rid of mpool_sm_max_size
  - set default mpool_sm_min_size to 0
* no longer pad sm allocations to page boundaries
* have sm_btl_first_time_init check return codes on free-list creations

Have mca_btl_sm_prepare_src() check to see if it can allocate an EAGER fragment
rather than a MAX fragment if the smaller size works.

Remove ompi/class/ompi_[circular_buffer_]fifo.h and references thereto.

Remove opal/util/pow2.[c|h] and references thereto.

This commit was SVN r20614.
2009-02-20 19:51:57 +00:00
George Bosilca
e0638c84c8 Update the test to check that all data is exposed via the
convertor_raw interface.

This commit was SVN r20383.
2009-01-28 23:07:02 +00:00
George Bosilca
ecdcda9268 Move the datatpye creation functions outside the test itself.
Add a test for the newly added raw functionality.

This commit was SVN r20374.
2009-01-28 15:42:30 +00:00
Shiqing Fan
a5281f0434 - 1/4 commit for Windows Visual Studio and CCP support:
CMakeLists and .windows files.
  In contribs preconfigured and precompiled parts.

This commit was SVN r20108.
2008-12-10 20:59:20 +00:00
Kenneth Matney
94f8189532 Under gcc 4.2.4, make check was failing without the <stdio.h>.
Moreover, I could not figure out why <time.h> would need to be
included twice.  So, I substituted the former for the latter,
in the superfluous instantiation.

This commit was SVN r19859.
2008-10-31 12:18:57 +00:00
Kenneth Matney
68248a32ef Add #include for stdio.h to allow make check to run with gcc 4.2.4 (on
Cray XT platform).

This commit was SVN r19605.
2008-09-22 18:00:30 +00:00
George Bosilca
2bd9ddfc28 The datatype dump function is always visible so we don't need a
fake one.

This commit was SVN r19158.
2008-08-05 14:45:42 +00:00
George Bosilca
e6f700bf04 Reenable the ddt_test as #1242 is now closed.
This commit was SVN r19145.
2008-08-04 15:57:02 +00:00
Brian Barrett
8cff3131d6 Remove memory tests, as they're out of date
This commit was SVN r18656.
2008-06-14 14:01:05 +00:00
Jeff Squyres
1f226b5898 Adjust the comment to be correct, per
http://www.open-mpi.org/community/lists/devel/2008/06/4095.php.

This commit was SVN r18604.
2008-06-06 01:23:58 +00:00
Ralph Castain
7c7b9b0486 Do a little cleanup on the opal graph class and opal carto framework to conform to OMPI naming conventions and avoid potential conflict with user applications - no change in functionality, passes carto test program
This commit was SVN r18407.
2008-05-07 19:33:49 +00:00
Ralph Castain
dc7f45dafd Remove the obsolete and largely unused orte_system_info structure. The only fields that were used in that struct were nodeid and nodename - these have been transferred to the orte_process_info structure.
Only one place used the user name field - session_dir, when formulating the name of the top-level directory. Accordingly, the code for getting the user's id has been moved to the session_dir code.

This commit was SVN r17926.
2008-03-23 23:10:15 +00:00
Jeff Squyres
0fbb399f13 Remove ddt_test from "make check" per #1242.
This commit was SVN r17818.
2008-03-14 14:21:47 +00:00
Jeff Squyres
4133b46ec5 Re-enable "make dist", at least until #1232 is fixed.
This commit was SVN r17796.
2008-03-09 21:36:10 +00:00
Jeff Squyres
498190e326 Add checks to ensure that opal_init() completes successfully so that
we fail gracefully (and don't segv) if opal_init() fails.

This commit was SVN r17760.
2008-03-06 14:55:32 +00:00
Tim Prins
2e1bda6d23 Remove the now-unused arithmatic interface to the dss
This commit was SVN r17654.
2008-02-28 21:36:51 +00:00
Ralph Castain
d70e2e8c2b Merge the ORTE devel branch into the main trunk. Details of what this means will be circulated separately.
Remains to be tested to ensure everything came over cleanly, so please continue to withhold commits a little longer

This commit was SVN r17632.
2008-02-28 01:57:57 +00:00
Jeff Squyres
04e026fa98 Fix "make check"; manually include <string.h> since the datatype
header files were re-orged to have fewer dependencies

This commit was SVN r17427.
2008-02-12 13:02:53 +00:00
Shiqing Fan
f5792bbda5 merging the memchecker into trunk.
This commit was SVN r17424.
2008-02-12 08:46:27 +00:00
Sharon Melamed
98e8de264d Wraped the carto API in carto_base_wrapers.c
This commit was SVN r17380.
2008-02-05 19:29:16 +00:00
Sharon Melamed
025b68becf Move the carto framework to the trunk.
This commit was SVN r17177.
2008-01-23 09:20:34 +00:00
George Bosilca
7eca186568 Fix a typo related to the conversion from ompi_pointer_array
to opal_pointer_array.

This commit was SVN r17023.
2007-12-22 05:32:40 +00:00
George Bosilca
906e8bf1d1 Replace the ompi_pointer_array with opal_pointer_array. The next step
(sometimes after the merge with the ORTE branch), the opal_pointer_array
will became the only pointer_array implementation (the orte_pointer_array
will be removed).

This commit was SVN r17007.
2007-12-21 06:02:00 +00:00
Rich Graham
27a748e7eb change all instances of ompi_free_list_init to ompi_free_list_init_new. Header
and payload data are specified separately at this stage.

This commit was SVN r16633.
2007-11-01 23:38:50 +00:00
Ralph Castain
54b2cf747e These changes were mostly captured in a prior RFC (except for #2 below) and are aimed specifically at improving startup performance and setting up the remaining modifications described in that RFC.
The commit has been tested for C/R and Cray operations, and on Odin (SLURM, rsh) and RoadRunner (TM). I tried to update all environments, but obviously could not test them. I know that Windows needs some work, and have highlighted what is know to be needed in the odls process component.

This represents a lot of work by Brian, Tim P, Josh, and myself, with much advice from Jeff and others. For posterity, I have appended a copy of the email describing the work that was done:

As we have repeatedly noted, the modex operation in MPI_Init is the single greatest consumer of time during startup. To-date, we have executed that operation as an ORTE stage gate that held the process until a startup message containing all required modex (and OOB contact info - see #3 below) info could be sent to it. Each process would send its data to the HNP's registry, which assembled and sent the message when all processes had reported in.

In addition, ORTE had taken responsibility for monitoring process status as it progressed through a series of "stage gates". The process reported its status at each gate, and ORTE would then send a "release" message once all procs had reported in.

The incoming changes revamp these procedures in three ways:

1. eliminating the ORTE stage gate system and cleanly delineating responsibility between the OMPI and ORTE layers for MPI init/finalize. The modex stage gate (STG1) has been replaced by a collective operation in the modex itself that performs an allgather on the required modex info. The allgather is implemented using the orte_grpcomm framework since the BTL's are not active at that point. At the moment, the grpcomm framework only has a "basic" component analogous to OMPI's "basic" coll framework - I would recommend that the MPI team create additional, more advanced components to improve performance of this step.

The other stage gates have been replaced by orte_grpcomm barrier functions. We tried to use MPI barriers instead (since the BTL's are active at that point), but - as we discussed on the telecon - these are not currently true barriers so the job would hang when we fell through while messages were still in process. Note that the grpcomm barrier doesn't actually resolve that problem, but Brian has pointed out that we are unlikely to ever see it violated. Again, you might want to spend a little time on an advanced barrier algorithm as the one in "basic" is very simplistic.

Summarizing this change: ORTE no longer tracks process state nor has direct responsibility for synchronizing jobs. This is now done via collective operations within the MPI layer, albeit using ORTE collective communication services. I -strongly- urge the MPI team to implement advanced collective algorithms to improve the performance of this critical procedure.


2. reducing the volume of data exchanged during modex. Data in the modex consisted of the process name, the name of the node where that process is located (expressed as a string), plus a string representation of all contact info. The nodename was required in order for the modex to determine if the process was local or not - in addition, some people like to have it to print pretty error messages when a connection failed.

The size of this data has been reduced in three ways:

(a) reducing the size of the process name itself. The process name consisted of two 32-bit fields for the jobid and vpid. This is far larger than any current system, or system likely to exist in the near future, can support. Accordingly, the default size of these fields has been reduced to 16-bits, which means you can have 32k procs in each of 32k jobs. Since the daemons must have a vpid, and we require one daemon/node, this also restricts the default configuration to 32k nodes.

To support any future "mega-clusters", a configuration option --enable-jumbo-apps has been added. This option increases the jobid and vpid field sizes to 32-bits. Someday, if necessary, someone can add yet another option to increase them to 64-bits, I suppose.

(b) replacing the string nodename with an integer nodeid. Since we have one daemon/node, the nodeid corresponds to the local daemon's vpid. This replaces an often lengthy string with only 2 (or at most 4) bytes, a substantial reduction.

(c) when the mca param requesting that nodenames be sent to support pretty error messages, a second mca param is now used to request FQDN - otherwise, the domain name is stripped (by default) from the message to save space. If someone wants to combine those into a single param somehow (perhaps with an argument?), they are welcome to do so - I didn't want to alter what people are already using.

While these may seem like small savings, they actually amount to a significant impact when aggregated across the entire modex operation. Since every proc must receive the modex data regardless of the collective used to send it, just reducing the size of the process name removes nearly 400MBytes of communication from a 32k proc job (admittedly, much of this comm may occur in parallel). So it does add up pretty quickly.


3. routing RML messages to reduce connections. The default messaging system remains point-to-point - i.e., each proc opens a socket to every proc it communicates with and sends its messages directly. A new option uses the orteds as routers - i.e., each proc only opens a single socket to its local orted. All messages are sent from the proc to the orted, which forwards the message to the orted on the node where the intended recipient proc is located - that orted then forwards the message to its local proc (the recipient). This greatly reduces the connection storm we have encountered during startup.

It also has the benefit of removing the sharing of every proc's OOB contact with every other proc. The orted routing tables are populated during launch since every orted gets a map of where every proc is being placed. Each proc, therefore, only needs to know the contact info for its local daemon, which is passed in via the environment when the proc is fork/exec'd by the daemon. This alone removes ~50 bytes/process of communication that was in the current STG1 startup message - so for our 32k proc job, this saves us roughly 32k*50 = 1.6MBytes sent to 32k procs = 51GBytes of messaging.

Note that you can use the new routing method by specifying -mca routed tree - if you so desire. This mode will become the default at some point in the future.


There are a few minor additional changes in the commit that I'll just note in passing:

* propagation of command line mca params to the orteds - fixes ticket #1073. See note there for details.

* requiring of "finalize" prior to "exit" for MPI procs - fixes ticket #1144. See note there for details.

* cleanup of some stale header files

This commit was SVN r16364.
2007-10-05 19:48:23 +00:00
Shiqing Fan
0f468f3668 - Remove the solution and project files, will commit them later.
This commit was SVN r15705.
2007-07-31 17:07:02 +00:00
Shiqing Fan
4d7b349cdb - Add VC8 solution and project files.
- If one wants to use this solution, remember to unload the project 'orte-restart' which is currently not working for Windows.

This commit was SVN r15680.
2007-07-30 11:05:34 +00:00
Tim Prins
7445a11f61 Remove duplicate tests. The current version of the dss tests are in orte/test/unit/dss
Remove defunct testing matrix

This commit was SVN r15535.
2007-07-20 13:37:44 +00:00
Ralph Castain
511457feb5 Remove stale test code. At least we were wise enough to have eliminated this code from the "make check" tree, but almost none of it compiles and of what does compile, nothing seems to really work.
This commit was SVN r15446.
2007-07-16 16:34:14 +00:00
Jeff Squyres
f72b52bb1d s/ifdef/if/ fro OMPI_C_HAVE_VISIBILITY to enable static builds.
This commit was SVN r14985.
2007-06-11 13:20:56 +00:00
George Bosilca
29dd535c01 Remove all references to the orte_bitmap as well as the files.
This commit was SVN r14928.
2007-06-06 20:24:07 +00:00
Brian Barrett
42c74b2cf7 fix test case so that condition variables work right, at least on PTHREADS.
I'm pretty sure condition variables are wrong for Solaris threads.

This commit was SVN r14877.
2007-06-05 19:24:17 +00:00
Brian Barrett
60571567a4 Better fix than r14831 -- ddt_pack was removed from TESTS because it
calls MPI_INIT and that causes problems during make distcheck.  Instead
put it in check_PROGRAMS which lets it get built, but doesn't run it.

This commit was SVN r14832.

The following SVN revision numbers were found above:
  r14831 --> open-mpi/ompi@9258c5200a
2007-06-01 14:34:06 +00:00
Rainer Keller
9258c5200a - As we need to reconfigure anyhow, get rid of autogen warning.
This commit was SVN r14831.
2007-06-01 08:20:38 +00:00
Brian Barrett
c7937ec02e until I figure out why MPI_INIT failed during make distcheck
This commit was SVN r14816.
2007-05-31 02:31:12 +00:00
George Bosilca
07f51ae5dc Make the test a little bit more difficult.
This commit was SVN r14814.
2007-05-30 22:40:16 +00:00
Brian Barrett
f02a9525dc add pack / unpack test
This commit was SVN r14801.
2007-05-30 17:41:15 +00:00
Sven Stork
fc932f1fb4 - changes to get the tests running with visibility enabled
This commit was SVN r14730.
2007-05-23 15:02:36 +00:00
Brian Barrett
21e00f6f0c Clean up a couple of configure things:
* 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
2007-05-15 04:23:48 +00:00
George Bosilca
f2a6b9394f Deal with the include spree. Protect "environ" on Windows.
Some others minors modifications in order to make it
compile [again] on Windows.

This commit was SVN r14188.
2007-04-01 16:16:54 +00:00
Jeff Squyres
4d8ee3d1e1 Add missing #include; fix the build for some picky compilers.
This commit was SVN r13696.
2007-02-17 11:54:40 +00:00
George Bosilca
beb9be3fe4 Don't import the datatype debug output if we're not in debug mode.
This commit was SVN r13650.
2007-02-14 16:47:12 +00:00
George Bosilca
06044db69a Add another test for the data-type engine. This test pack and unpack
the data in a way similar to the multi-network OB1 PML.

This commit was SVN r13632.
2007-02-13 09:30:19 +00:00
Jeff Squyres
9fb004ab8e remove the legal_numbits tests
This commit was SVN r13575.
2007-02-09 03:18:33 +00:00
Brian Barrett
6f8b366acb Rename liborte to libopen-rte and libopal to libopen-pal per telecon today
and bug #632.

Refs trac:632

This commit was SVN r12762.

The following Trac tickets were found above:
  Ticket 632 --> https://svn.open-mpi.org/trac/ompi/ticket/632
2006-12-05 18:27:24 +00:00
George Bosilca
56748d5f57 Correctly initialize the unpack buffer.
This commit was SVN r12529.
2006-11-10 05:11:02 +00:00
Sven Stork
9cf5b3709c - Add comment for volatile.
This commit was SVN r12436.
2006-11-06 14:00:43 +00:00
Sven Stork
27420fbda3 - Make counter volatile to prohibit compiler to perform optimisations.
Without this a compiler could assume that the counter is not updated
  my the malloc call and remove the test in the assert and always trigger
  the assertion.

This commit was SVN r12419.
2006-11-03 10:46:18 +00:00
George Bosilca
14c49b226a The data-type tests have to be updated too.
This commit was SVN r12334.
2006-10-27 05:34:26 +00:00
George Bosilca
a1c9a374eb Remove all the warnings from the data-type engine testing.
This commit was SVN r12167.
2006-10-18 17:00:43 +00:00
Jeff Squyres
5662122885 Fix "make dist". Temporarily snip some tests from the tarball until
they can be repaired (more changes coming in from the mad branch that
will break them).

This commit was SVN r11560.
2006-09-08 00:09:37 +00:00
Ralph Castain
7088c1a8a1 Remove stale tests from the "make check" routine
This commit was SVN r11525.
2006-09-05 13:05:03 +00:00
Jeff Squyres
d4a2a51921 Remove a bunch of compiler warnings and make the test a litle more
correct.

This commit was SVN r11521.
2006-09-03 14:23:02 +00:00
George Bosilca
76d2a0bb74 Remove the reference to the path_sep field from the test.
This commit was SVN r11396.
2006-08-24 16:17:33 +00:00
Ralph Castain
8c7f0ed9ae Change the SOH to the new State Monitoring and Reporting (SMR) framework. New API's will be appearing in the new framework shortly - this just gets the name change into the system.
Other changes:

1. Remove the old xcpu components as they are not functional.

2. Fix a "bug" in orterun whereby we called dump_aborted_procs even when we normally terminated. There is still some kind of bug in this procedure, however, as we appear to be calling the orterun job_state_callback function every time a process terminates (instead of only once when they have all terminated). I'll continue digging into that one.

This will require an autogen/configure, I'm afraid.

This commit was SVN r11228.
2006-08-16 16:35:09 +00:00
Terry Dontje
67980d7f97 Removed include of stdbool.h since it was not being used and was causing the
Sun compilers to abort when make check was done.

This commit was SVN r11145.
2006-08-10 14:25:45 +00:00
Josh Hursey
d082a63734 Add some new OPAL functionality.
After seeing the uglyness that is removing directories in the
codebase I decided to push down this to the OPAL by extending the
opal/os_create_dirpath.(c|h) to contain some more functionality.

In this process I renamed 'os_create_dirpath' to 'os_dirpath' since it
is a bit more general now.

Added a few functions to:
 - check if an directory is empty
 - check to see if the access permissions are set correctly
 - destroy the directory at the end of the dirpath
   - By using a caller callback function (a la Perl, I believe)
     for every file, the caller can have fine grained control over
     whether a specific file is deleted or not.

This simplifies things a bit for orte_session_dir_(finalize|cleanup)
as it should no longer contain any of this functionality, but uses
these functions to do the work.

From the external perspective nothing has changed, from the 
developer point of view we have some cleaner, more generic code.

This commit was SVN r10640.
2006-07-03 22:23:07 +00:00
Brian Barrett
0482bbd94b * add event into dist_subdirs so that the Makefile.in gets created
This commit was SVN r10559.
2006-06-28 22:53:21 +00:00
Brian Barrett
b34768962c * put event library tests into the testing infrastructure so that they can
be built without heroic effort

This commit was SVN r10517.
2006-06-26 22:28:59 +00:00
George Bosilca
379b170a29 Update the datatype tests.
This commit was SVN r10511.
2006-06-26 20:10:27 +00:00
George Bosilca
1ab7dcc632 Cleanups.
This commit was SVN r10509.
2006-06-26 20:09:04 +00:00
Jeff Squyres
f08e54029c - Update svn:ignore
- Built to_self, but don't run it during "make check" (because it
  calls MPI_INIT, which requires a functional install)

This commit was SVN r10491.
2006-06-23 02:14:27 +00:00
Jeff Squyres
67b07ba4fc AM complains if we define names with specific suffixes and the
executable name is not listed anywhere -- so just comment them out for
now.

This commit was SVN r10472.
2006-06-22 11:56:18 +00:00
Jeff Squyres
fa6b6c6098 This test calls MPI_INIT -- can't do that in the unit tests because
that assumes that OMPI has been fully installed (e.g., that may not be
valid during "make distcheck")

This commit was SVN r10470.
2006-06-22 11:47:31 +00:00
George Bosilca
efb987f156 Output the right message.
This commit was SVN r10457.
2006-06-21 16:25:02 +00:00
George Bosilca
9436729bee Impoving the checksum test.
This commit was SVN r10435.
2006-06-20 15:55:54 +00:00
George Bosilca
1e4199ee61 Add more datatype tests. One to check all communications to self, it is used
to compute the overhead of the convertor (and all convertor related operations).
The second will check the position setting on the convertor. Not yet completed ...

This commit was SVN r10432.
2006-06-20 14:19:44 +00:00
George Bosilca
338ef1dc96 The convertor should be prepared before calling personalize. Otherwise, no
datatype is attached to it.

This commit was SVN r10419.
2006-06-19 15:57:33 +00:00
George Bosilca
ba914bfb52 Don't use srandomdev (it's BSD specific). Instead use srandom with the time ...
This commit was SVN r10391.
2006-06-16 06:47:35 +00:00
George Bosilca
ad1065d572 Even moe complex. Now we do the unpacking using 2 iovecs. And still working ...
This commit was SVN r10374.
2006-06-15 06:21:16 +00:00
George Bosilca
d55783643d An updated version with a behavior closer to the buffered send.
This commit was SVN r10373.
2006-06-15 06:07:11 +00:00
George Bosilca
cb2f35b875 Add a checksum test. It allow to check if the same operation (pack/unpack)
done with the same values on 2 different types return the same value. The 2
types belong to 2 differents classes: contiguous and sparse. With this test
I simulate the behavior of the buffered send, where the sender send the
data from the user attached buffer (which is contiguous) and the receiver
receive it in a sparse type.

This commit was SVN r10372.
2006-06-15 05:28:17 +00:00
Brian Barrett
2e864470d4 * add include now needed with rearranging of includes in ompi class code
This commit was SVN r10361.
2006-06-14 21:30:17 +00:00
Galen Shipman
18dda70fd0 make ompi_free_list_item_t a class..
This will go to the 1.1 branch but will probably require a few changes as
ompi_free_list_t is different in the branch.. 

This commit was SVN r10306.
2006-06-12 16:44:00 +00:00
George Bosilca
9da7af4c96 Remove all warnings except the missing prototypes.
This commit was SVN r10108.
2006-05-26 20:53:35 +00:00
George Bosilca
6df7bf1a0f Remove one useless test.
This commit was SVN r10004.
2006-05-22 06:13:49 +00:00
George Bosilca
eb149cb9c8 Move the datatype tests in its own directory.
This commit was SVN r10003.
2006-05-22 06:12:43 +00:00
Rainer Keller
0f9b10ff8e - Update test dup MPI_COMM_WORLD -- so that we may
have additional Barriers for output.

This commit was SVN r9831.
2006-05-05 07:42:33 +00:00
George Bosilca
4f465967c7 Don't run if there are not at least 2 processes.
This commit was SVN r9668.
2006-04-20 19:12:09 +00:00
Brian Barrett
29c70291a9 * properly distribute the peruse test directory so that nightly builds
happen

This commit was SVN r9412.
2006-03-24 13:42:01 +00:00
George Bosilca
1439fb6e33 Look like finally we manage to do it correctly. Thanks Jeff.
This commit was SVN r9376.
2006-03-23 06:58:49 +00:00
George Bosilca
51df8175d7 Allow conditional compilation of the PERUSE test while still adding PERUSE to
the make dist target.

This commit was SVN r9375.
2006-03-23 05:53:38 +00:00
George Bosilca
57f0eeccff Activate the PERUSE test if we compile with PERUSE support.
This commit was SVN r9374.
2006-03-23 05:10:08 +00:00
George Bosilca
aef1358808 First import or peruse. As it look like SVN doesn't like to import simultaneously
2 directories having the same name I have to split the import in 2. I start with
the test and the configure.

This commit was SVN r9372.
2006-03-23 04:54:10 +00:00
Brian Barrett
89a22615ce * the .c files created by symlinking get shipped in the tarball as
actual files, so we should not have a clean rule for them - instead,
  make it maintainer-clean.  Neither clean nor distclean should
  remove files that were in the tarball...

This commit was SVN r9351.
2006-03-21 03:14:49 +00:00
Brian Barrett
1398169700 * forgot to fix up includes in the test directory with yesterday's commit.
This commit was SVN r8996.
2006-02-12 19:51:24 +00:00
Brian Barrett
566a050c23 Next step in the project split, mainly source code re-arranging
- 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.
2006-02-12 01:33:29 +00:00
Brian Barrett
39aadc3d9c * fix makefile so that make dist works again
This commit was SVN r8919.
2006-02-07 13:20:07 +00:00
Ralph Castain
4b9f015c0b Merge in the new data support subsystem for ORTE. MPI folks should not notice a difference. Longer explanation will be sent to developers mailing list.
This commit was SVN r8912.
2006-02-07 03:32:36 +00:00
Brian Barrett
f23356aa02 * if we don't have mmap hook support, don't expect to get a callback from
mmap().

This commit was SVN r8609.
2005-12-24 05:34:51 +00:00
Brian Barrett
a5af07cd6b fixes suggested by Ralf for supporting both Libtool 1 and 2 in Open MPI...
This commit was SVN r8538.
2005-12-19 03:10:23 +00:00
Brian Barrett
902122e248 * update tests to match memory api changes
This commit was SVN r8531.
2005-12-16 21:26:13 +00:00
George Bosilca
e77f60abfe Use __WINDOWS__ instead of _WIN32.
This commit was SVN r8479.
2005-12-13 06:05:37 +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
f301d06fd4 * clean up the memory check test a little bit - still needs some work
This commit was SVN r8343.
2005-11-30 22:32:18 +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
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
Jeff Squyres
4a208939f3 Don't run ompi_fifo and ompi_circular_buffer tests; the interfaces
have changed and the tests have not changed with them.

This commit was SVN r8137.
2005-11-13 11:33:23 +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
586a9be557 * make it easier to compare free timings with / without memory hooks enabled
This commit was SVN r8059.
2005-11-09 18:20:08 +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
Ralph Castain
eebda71a0b Add a new API to the registry for conditional data retrievals. The new API allows you to retrieve data from registry containers that have key-value pairs where the value matches the specified one. The requested keys are then retrived from that container.
This commit was SVN r7907.
2005-10-28 00:30:58 +00:00
Jeff Squyres
94d38b1812 Add header file for non-g++ compilers
This commit was SVN r7875.
2005-10-25 21:59:01 +00:00
Brian Barrett
7c924dc221 * don't try to fire up orte - nothing good comes from trying to open all those
components...

This commit was SVN r7517.
2005-09-27 14:48:41 +00:00
Galen Shipman
51f1c7a8e4 bring ompi_fifo up to new mpool interface,, looks like this has been stale for
some time. Comment out an incorrect test in ompi_rb_tree.c 

This commit was SVN r7516.
2005-09-27 14:36:53 +00:00
Galen Shipman
c728c0acc5 more changes to test..
seems to have errors inserting some items, these are apparently duplicates.. 

This commit was SVN r7505.
2005-09-24 17:07:08 +00:00
Galen Shipman
ac935f3a51 a very basic test for using the tree with base and bound segments..
- FAILS..

This commit was SVN r7502.
2005-09-24 16:19:44 +00:00
Brian Barrett
4efd0405c3 * fixes to make tests compile again - dunno when these broke :/
This commit was SVN r7500.
2005-09-24 01:17:32 +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
Jeff Squyres
dc7326a5e5 Minor fix to find header files.
This commit was SVN r7191.
2005-09-06 10:35:17 +00:00
Brian Barrett
827122fc62 * order libraries in the correct order so that opal_error test works
properly

This commit was SVN r7141.
2005-09-02 03:28:38 +00:00
Ralph Castain
66a215eae1 More memory cleanup...
1. Valgrind is good for something - chasing down memory leaks in registry led me to re-visit the dictionary functions and discover that I wasn't keeping track of the number of dictionary entries on each segment! Resulted in wasted time searching blank entries as well as leaked memory. This has now been fixed.

2. Fixed the orte_bitmap test. The init function for that class has been eliminated and the constructor adjusted to provide that functionality.

This commit was SVN r7136.
2005-09-02 00:26:58 +00:00
Ralph Castain
76e622a552 Clean up a few memory leaks - more to go...
This commit was SVN r7134.
2005-09-01 17:38:04 +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
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
Brian Barrett
07b589100e * add test for init_finalize of orte (useful for memory leak checks)
* update ORTE tests to cope with change in prototype for orte_init()

This commit was SVN r7081.
2005-08-29 19:32:46 +00:00
Brian Barrett
660ce0a486 * update tests to reflect moving path_sep out of orte_sys_info and moving
orte_sys_info out of OPAL and into ORTE

This commit was SVN r7080.
2005-08-29 19:23:25 +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
Brian Barrett
17c1bb355e * more memory leak fixes - mainly string params not being freed at end of
time
* Added code to free dps structures at shutdown

This commit was SVN r7043.
2005-08-26 02:08:23 +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
e2e18d49a3 * add trivial opal init/finalize app
This commit was SVN r7011.
2005-08-24 20:20:21 +00:00
Brian Barrett
1454e40f0e * for some reason, was having issues with C bool vs C++ bool on odin.
cast the return to an int in the C++ test case, just in case.
* C++ sucks.  If compiling with C++ on some GNU compiler/linker
  combos, the initialize hook isn't automagically fired for the
  malloc code.  Add a backup setting during opal_init, which is
  early enough not to cause any damage. 

This commit was SVN r6983.
2005-08-23 16:03:16 +00:00
Brian Barrett
f48968d8f4 clean up the error code situation - ensure that OMPI_ERROR == ORTE_ERROR ==
OPAL_ERROR, same for all the other error codes.  Also, make sure that there
are never conflicts between OPAL anr ORTE error codes (for example).
Finally, provide opal_perror(), opal_strerror(), and opal_strerror_r() to
give stringified error messages for the different error codes

This commit was SVN r6969.
2005-08-22 03:05:39 +00:00
Brian Barrett
8d15ee8b2f * remove pml direct call header file as part of make distclean
* remove output files for tests as part of make clean

This commit was SVN r6966.
2005-08-21 23:48:12 +00:00
Brian Barrett
948d8963e2 * must add SUBDIRS to DIST_SUBDIRS explicitly. duh.
This commit was SVN r6965.
2005-08-21 23:37:20 +00:00