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

44 Коммитов

Автор SHA1 Сообщение Дата
Nathan Hjelm
df75d0382f ompi: use C99 subobject naming for component initialization
This commit helps future-proof ompi components by initializing each
component member by name.

Signed-off-by: Nathan Hjelm <hjelmn@lanl.gov>
2015-04-18 10:29:58 -06:00
Nathan Hjelm
b68d66bb9b MCA: Add the project/project version to the MCA base component
This commit adds support for project_framework_component_* parameter
matching. This is the first step in allowing the same framework name
in multiple projects. This change also bumps the MCA component version
to 2.1.0.

All master frameworks have been updated to use the new component
versioning macro. An mca.h has been added to each project to add a
project specific versioning macro of the form
PROJECT_MCA_VERSION_2_1_0.

Signed-off-by: Nathan Hjelm <hjelmn@me.com>
2015-03-27 10:59:04 -06:00
Gilles Gouaillardet
59f298a534 fs/base: securily use readlink
as reported by Coverity with CIDs 1287031 and 1287032
2015-03-09 11:20:51 +09:00
Gilles Gouaillardet
e75b1e6435 fs/base: fix misc memory leak
as reported by Coverity with CID 72202
2015-03-05 14:20:08 +09:00
Howard Pritchard
bf89131f9e add owner files to opa/ompi/orte mca directories
This commit adds an owner file in each of the component directories
for each framework.  This allows for a simple script to parse
the contents of the files and generate, among other things, tables
to be used on the project's wiki page.  Currently there are two
"fields" in the file, an owner and a status.  A tool to parse
the files and generate tables for the wiki page will be added
in a subsequent commit.
2015-02-22 15:10:23 -07:00
Edgar Gabriel
03c2adf3b1 part 2 of the cleaning up of info handling in ompio. The set_info interface
in the fs modules does not make sense and was not used. Remove them.
2015-01-30 16:48:41 -06:00
Edgar Gabriel
0219c87039 set the fs_ptr to NULL in case of an error, to avoid a malicious free on file_close. 2014-10-14 13:09:06 -05:00
Ralph Castain
552c9ca5a0 George did the work and deserves all the credit for it. Ralph did the merge, and deserves whatever blame results from errors in it :-)
WHAT:    Open our low-level communication infrastructure by moving all necessary components (btl/rcache/allocator/mpool) down in OPAL

All the components required for inter-process communications are currently deeply integrated in the OMPI layer. Several groups/institutions have express interest in having a more generic communication infrastructure, without all the OMPI layer dependencies.  This communication layer should be made available at a different software level, available to all layers in the Open MPI software stack. As an example, our ORTE layer could replace the current OOB and instead use the BTL directly, gaining access to more reactive network interfaces than TCP.  Similarly, external software libraries could take advantage of our highly optimized AM (active message) communication layer for their own purpose.  UTK with support from Sandia, developped a version of Open MPI where the entire communication infrastucture has been moved down to OPAL (btl/rcache/allocator/mpool). Most of the moved components have been updated to match the new schema, with few exceptions (mainly BTLs where I have no way of compiling/testing them). Thus, the completion of this RFC is tied to being able to completing this move for all BTLs. For this we need help from the rest of the Open MPI community, especially those supporting some of the BTLs.  A non-exhaustive list of BTLs that qualify here is: mx, portals4, scif, udapl, ugni, usnic.

This commit was SVN r32317.
2014-07-26 00:47:28 +00:00
Ralph Castain
a8e2d6c3a6 The bulk of the remaining renaming changes, in one final glorious "blob". Thanks to Jeff for some help chasing down a few spots. Per chat with Jeff, we decided to cleanup a few things that were historical in nature:
top_ompi_srcdir  ->  OMPI_TOP_SRCDIR
top_ompi_builddir -> OMPI_TOP_BUILDDIR

We also split the srcdir/builddir flags according to their local tree (e.g., OPAL_TOP_SRCDIR), and tied them all together in configure.ac. Renamed ompi_ignore and ompi_unignore to be opal_<foo> as these are agnostic markers.

Only thing left is ompilibdir being treated similar to what we dif for srcdir/builddir. Coming soon.

This commit was SVN r31678.
2014-05-07 21:48:53 +00:00
Hadi Montakhabi
7bf4c425ff Fix: making sure the file type is not overwritten by the last queried component
This commit was SVN r30478.
2014-01-29 19:21:03 +00:00
Hadi Montakhabi
8af6b8b4e4 add support for PLFS filesystem
This commit was SVN r30370.
2014-01-22 21:16:15 +00:00
Edgar Gabriel
be5d5834c5 fix the problem identified by a user on the mailing list with MPI_MODE_EXCL
cmr=v1.7.4:reviewer=vvenkatesan:subject=fix a problem when opening a file with MODE_EXCL

This commit was SVN r30324.
2014-01-18 16:06:27 +00:00
Hadi Montakhabi
8c14411289 f_cc_size is contiguous chunk size, not the stripe width. There is no stripe_width in the file handle structure.
This commit was SVN r30314.
2014-01-17 18:35:55 +00:00
Brian Barrett
8b778903d8 Fix longstanding issue with our multi-project support. Rather than using
pkg{data,lib,includedir}, use our own ompi{data,lib,includedir}, which is
always set to {datadir,libdir,includedir}/openmpi.  This will keep us from
having help files in prefix/share/open-rte when building without Open MPI,
but in prefix/share/openmpi when building with Open MPI.

This commit was SVN r30140.
2014-01-07 22:11:15 +00:00
Edgar Gabriel
8ffc1aac89 update the _component.c files in ompio to use the explicit assignment of the
mca_register_component_params element of the structure.

This commit was SVN r28914.
2013-07-22 21:11:05 +00:00
Edgar Gabriel
d5cae9aced - fix the mca stripe size and stripe depth parameter logic in the pvfs2
component
- correctly recognize and handle the corresponding info objects.

This commit was SVN r28497.
2013-05-14 16:11:39 +00:00
Ralph Castain
5d7a93c032 Add the ability to use an external version of libevent. Clearly not recommended at this time. I've verified that it works in limited scenarios, but more thorough testing and performance impacts need to be assessed.
Interesting how many includes had to be fixed here and there to fill in missing dependencies :-)

This commit was SVN r28411.
2013-04-29 17:02:37 +00:00
Nathan Hjelm
9d4a26f47d Update OMPI frameworks to use the MCA framework system.
Notes:
  - This commit also eliminates the need for an available components list in use
    in several frameworks. None of the code in question was making use of the
    priority field of the priority component list item so these extra lists were
    removed.
  - Cleaned up selection code in several frameworks to sort lists using opal_list_sort.
  - Cleans up the ompi/orte-info functions. Expose the functions that construct the
    list of params so they can be used elsewhere.

patches for mtl/portals4 from brian

missed a few output variables in openib

This commit was SVN r28241.
2013-03-27 21:17:31 +00:00
Nathan Hjelm
cf377db823 MCA/base: Add new MCA variable system
Features:
 - Support for an override parameter file (openmpi-mca-param-override.conf).
   Variable values in this file can not be overridden by any file or environment
   value.
 - Support for boolean, unsigned, and unsigned long long variables.
 - Support for true/false values.
 - Support for enumerations on integer variables.
 - Support for MPIT scope, verbosity, and binding.
 - Support for command line source.
 - Support for setting variable source via the environment using
   OMPI_MCA_SOURCE_<var name>=source (either command or file:filename)
 - Cleaner API.
 - Support for variable groups (equivalent to MPIT categories).

Notes:
 - Variables must be created with a backing store (char **, int *, or bool *)
   that must live at least as long as the variable.
 - Creating a variable with the MCA_BASE_VAR_FLAG_SETTABLE enables the use of
   mca_base_var_set_value() to change the value.
 - String values are duplicated when the variable is registered. It is up to
   the caller to free the original value if necessary. The new value will be
   freed by the mca_base_var system and must not be freed by the user.
 - Variables with constant scope may not be settable.
 - Variable groups (and all associated variables) are deregistered when the
   component is closed or the component repository item is freed. This
   prevents a segmentation fault from accessing a variable after its component
   is unloaded.
 - After some discussion we decided we should remove the automatic registration
   of component priority variables. Few component actually made use of this
   feature.
 - The enumerator interface was updated to be general enough to handle
   future uses of the interface.
 - The code to generate ompi_info output has been moved into the MCA variable
   system. See mca_base_var_dump().

opal: update core and components to mca_base_var system
orte: update core and components to mca_base_var system
ompi: update core and components to mca_base_var system

This commit also modifies the rmaps framework. The following variables were
moved from ppr and lama: rmaps_base_pernode, rmaps_base_n_pernode,
rmaps_base_n_persocket. Both lama and ppr create synonyms for these variables.

This commit was SVN r28236.
2013-03-27 21:09:41 +00:00
Ralph Castain
a4b6fb241f Remove all remaining vestiges of the Windows integration
This commit was SVN r28137.
2013-02-28 17:31:47 +00:00
Brian Barrett
b8442ba505 Revamp the handling of wrapper compiler flags. The user flags, main configure
flags, and mca flags are kept seperate until the very end.  The main configure
wrapper flags should now be modified by using the OPAL_WRAPPER_FLAGS_ADD
macro.  MCA components should either let <framework>_<component>_{LIBS,LDFLAGS}
be copied over OR set <framework>_<component>_WRAPPER_EXTRA_{LIBS,LDFLAGS}.
The situations in which WRAPPER CPPFLAGS can be set by MCA components was
made very small to match the one use case where it makes sense.

This commit was SVN r27950.
2013-01-29 00:00:43 +00:00
Vishwanath Venkatesan
5be992f445 The pointer to the structure was also never allocated before retrieving
the stripe size. Fixing that too.

This commit was SVN r27941.
2013-01-28 07:21:22 +00:00
Vishwanath Venkatesan
817f6cd868 To remove the warning due to uninitialized variable.
This commit was SVN r27940.
2013-01-28 06:55:46 +00:00
Nathan Hjelm
bdedd8b0d3 Per RFC modify the behavior of mca_base_components_close to NOT close the output. Modify frameworks to always close their output and set to -1.
Reasoning: The old behavior was a little confusing. mca_base_components_open does not open an output stream so it is a little unexpected that mca_base_components_close does. To add to this several frameworks (that don't use mca_base_components_close) failed to close their output in the framework close function and others closed their output a second time. This change is an improvement to the symantics of mca_base_components_open/close as they are now symetric in their functionality.

This commit was SVN r27570.
2012-11-06 19:09:26 +00:00
Vishwanath Venkatesan
12363d50bd Setting the default stripe size to 1MB as 64KB is too small for a generic scenario.
This commit was SVN r27405.
2012-10-04 21:26:29 +00:00
Vishwanath Venkatesan
2ddbfbeb26 Setting the default stripe size for lustre to 64KB. This is an MCA parameter, can be overridden at runtime if needed.
This commit was SVN r27404.
2012-10-04 20:56:26 +00:00
Vishwanath Venkatesan
b75d877a3f Removing .ompi_ignore for the lustre component.
This commit was SVN r27247.
2012-09-05 22:20:18 +00:00
Vishwanath Venkatesan
6ee377c4f5 Modifying the file-open to use the amode argument instead of file structure values for lustre component
This commit was SVN r27154.
2012-08-27 21:13:23 +00:00
Vishwanath Venkatesan
91104cbdca Modifying the file-open to use the amode argument instead of file structure values.
This commit was SVN r27153.
2012-08-27 21:12:56 +00:00
Edgar Gabriel
b7a72feb1d minor code cleanup and make the MPI_MODE_DELETE_ON_CLOSE work
This commit was SVN r26685.
2012-06-27 20:54:58 +00:00
Edgar Gabriel
6a2dd16ee3 cleaning up the usage of CFLAGS vs. CPPFLAGS. Thanks Jeff for helping with
that!

This commit was SVN r26655.
2012-06-25 20:32:58 +00:00
Edgar Gabriel
d1e91e9372 make the file compile properly.
This commit was SVN r26497.
2012-05-26 01:06:36 +00:00
Edgar Gabriel
e0139a2d7e provide descriptions about the functionality of these frameworks.
This commit was SVN r25682.
2011-12-22 19:42:00 +00:00
Jeff Squyres
c10f41c87e Do not build these frameworks when --disable-mpi-io is specified.
Fixes some Cisco MTT MPI install errors.

This commit was SVN r25566.
2011-12-02 22:11:23 +00:00
Vishwanath Venkatesan
8dd07bdceb Removing .ompi_ignore and .ompi_unignore from fs/pvfs2 and fbtl/pvfs2
This commit was SVN r25283.
2011-10-14 00:40:11 +00:00
George Bosilca
ce7935c8fa Obviously these were not needed.
This commit was SVN r25231.
2011-10-04 14:56:34 +00:00
Shiqing Fan
8bf5a61265 Fix another compile error for Windows.
This commit was SVN r25129.
2011-09-12 14:19:42 +00:00
Edgar Gabriel
4bc2e9b023 fix a typo and add an actual pvfs function in the configure link-test.
This commit was SVN r25120.
2011-09-07 15:46:41 +00:00
Edgar Gabriel
196c3819e2 - revamp the configure logic to detect pvfs2 and lustre
- slight change in the selection logic of the fs module, which makes
   the ompio independent of the file system type (otherwise ompio 
   would also have required a configure script).

This commit was SVN r25118.
2011-09-07 10:39:47 +00:00
Shiqing Fan
16193771ba Add one missing header file. Fix the MTT build for Windows.
This commit was SVN r25112.
2011-08-31 13:15:05 +00:00
Edgar Gabriel
9b6cf80074 - update the svn:ignore properties for some generated files
- add ompi_unignore files for the pvfs2 and lustre components to debug the
  configure problem

This commit was SVN r25090.
2011-08-26 13:23:29 +00:00
Edgar Gabriel
f46ef05c6e ompi_ignore some components that depend on the configure logic, since some
libs don't seem to propagate correctly under certain circumstances. This makes
hopefully the nightly tests pass.

also, remove the files that should not have been committed in the first place
:-)

This commit was SVN r25085.
2011-08-26 00:49:32 +00:00
Edgar Gabriel
4d23ea19cb add a missing header file.
This commit was SVN r25081.
2011-08-25 21:28:28 +00:00
Edgar Gabriel
52063267df commit of the OMPIO modules and frameworks.
This commit was SVN r25079.
2011-08-25 20:08:17 +00:00