Open MPI logo

Open MPI Development Mailing List Archives

  |   Home   |   Support   |   FAQ   |   all Development mailing list

Subject: Re: [OMPI devel] RFC: Rename several OMPI_* names to OPAL_*
From: Ralph Castain (rhc_at_[hidden])
Date: 2009-02-11 08:42:02


Sounds reasonable to me - but again, let's commit it when we do the
1.4 branch so maintaining 1.3 doesn't become impossible.

On Feb 10, 2009, at 2:38 PM, George Bosilca wrote:

> These changes look fine to me. However, I would like to amend this
> proposal to include the splitting of the config directory. Over the
> last months, I know several project that use OPAL, and they like to
> use it as an independent part and not as a subset of ompi.
> Therefore, I had to extract everything related to OPAL from the ompi
> tree. While the source code is pretty well divided in sub-projects,
> this is not the case for the m4 scripts in the config directory.
>
> I would like to propose to split the config directory in several
> parts: opal/config, orte/config and ompi/config and to modify the
> autogen script to take them into account.
>
> Thanks,
> george.
>
> On Feb 10, 2009, at 12:54 , Greg Koenig wrote:
>
>> RFC: Rename several OMPI_* names to OPAL_*
>>
>> WHAT: Rename several #define values that encode the prefix "OMPI_" to
>> instead encode the prefix "OPAL_" throughout the entire Open MPI
>> source code
>> tree. Also, eliminate unnecessary #include lines from source code
>> files
>> under the ".../ompi/mca/btl" subtree.
>>
>> WHY: (1) These are general source code improvements that update
>> #define
>> values to more accurately describe which layer the values belong
>> and remove
>> unnecessary dependencies within the source code; (2) These changes
>> will help
>> with the effort to move the BTL code into an independent layer.
>>
>> WHERE: 1.4 trunk
>>
>> WHEN: Negotiable -- see below, but probably near split for 1.4
>> (No earlier than February 19, 2009)
>>
>> Timeout: February 19, 2009
>>
>> ====================================
>>
>> The proposed change involves renaming several #define values that
>> encode the
>> prefix "OMPI_" to instead encode the prefix "OPAL_" throughout the
>> entire
>> Open MPI source code tree. These names are holdovers from when the
>> three
>> existing layers of Open MPI were developed together prior to being
>> split
>> apart. Additionally, the proposed change eliminates a few
>> unnecessary
>> #include lines in BTL source code files under the .../ompi/mca/btl
>> subtree.
>>
>> Specific modifications are detailed following this message text. A
>> script
>> to carry out these modifications is also attached to this message
>> (gzipped
>> to pass unmolested through the ORNL e-mail server).
>>
>> We believe these modifications improve the Open MPI source code by
>> renaming
>> values such that they correspond to the Open MPI layer to which
>> they most
>> closely belong, and that this improvement is itself of benefit to
>> Open MPI.
>> These modifications will also aid our ongoing efforts to extract
>> the BTL
>> code into a new layer ("ONET") that can be built with just direct
>> dependence
>> on the OPAL layer.
>>
>> Although these changes are simple string substitutions, they touch
>> a fair
>> amount of code in the Open MPI tree. Three people have tested
>> these changes
>> at our site on various platforms and have not discovered any
>> problems.
>> However, we recognize that some members of the community may have
>> input/feedback regarding testing and we remain open to suggestions
>> related
>> to testing.
>>
>> One challenge that has been brought up regarding this RFC is that
>> applying
>> patches and/or CMRs to the source code tree after the proposed
>> changes are
>> performed will be more difficult. To that end, the best
>> opportunity to
>> apply the modifications proposed in this RFC seems to be in
>> conjunction with
>> 1.4. (My understanding from the developer conference call this
>> morning is
>> that there are a few other changes waiting for this switch as
>> well.) We are
>> open to suggestions about the best time to apply this RFC to avoid
>> major
>> disruptions.
>>
>>
>> Specific changes follow:
>>
>> * From .../configure.ac.
>> * OMPI_NEED_C_BOOL
>> * OMPI_HAVE_WEAK_SYMBOLS
>> * OMPI_C_HAVE_WEAK_SYMBOLS
>> * OMPI_USE_STDBOOL_H
>> * OMPI_HAVE_SA_RESTART
>> * OMPI_HAVE_VA_COPY
>> * OMPI_HAVE_UNDERSCORE_VA_COPY
>> * OMPI_PTRDIFF_TYPE
>> * (also, ompi_ptrdiff_t)
>> * OMPI_ALIGN_WORD_SIZE_INTEGERS
>> * OMPI_WANT_LIBLTDL
>> * (also, OMPI_ENABLE_DLOPEN_SUPPORT)
>> * OMPI_STDC_HEADERS
>> * OMPI_HAVE_SYS_TIME_H
>> * OMPI_HAVE_LONG_LONG
>> * OMPI_HAVE_SYS_SYNCH_H
>> * OMPI_SIZEOF_BOOL
>> * OMPI_SIZEOF_INT
>>
>> * From .../config/ompi_check_attributes.m4.
>> * OMPI_HAVE_ATTRIBUTE
>> * (also, ompi_cv___attribute__)
>> * OMPI_HAVE_ATTRIBUTE_ALIGNED
>> * (also, ompi_cv___attribute__aligned)
>> * OMPI_HAVE_ATTRIBUTE_ALWAYS_INLINE
>> * (also, ompi_cv___attribute__always_inline)
>> * OMPI_HAVE_ATTRIBUTE_COLD
>> * (also, ompi_cv___attribute__cold)
>> * OMPI_HAVE_ATTRIBUTE_CONST
>> * (also, ompi_cv___attribute__const)
>> * OMPI_HAVE_ATTRIBUTE_DEPRECATED
>> * (also, ompi_cv___attribute__deprecated)
>> * OMPI_HAVE_ATTRIBUTE_FORMAT
>> * (also, ompi_cv___attribute__format)
>> * OMPI_HAVE_ATTRIBUTE_HOT
>> * (also, ompi_cv___attribute__hot)
>> * OMPI_HAVE_ATTRIBUTE_MALLOC
>> * (also, ompi_cv___attribute__malloc)
>> * OMPI_HAVE_ATTRIBUTE_MAY_ALIAS
>> * (also, ompi_cv___attribute__may_alias)
>> * OMPI_HAVE_ATTRIBUTE_NO_INSTRUMENT_FUNCTION
>> * (also, ompi_cv___attribute__no_instrument_function)
>> * OMPI_HAVE_ATTRIBUTE_NONNULL
>> * (also, ompi_cv___attribute__nonnull)
>> * OMPI_HAVE_ATTRIBUTE_NORETURN
>> * (also, ompi_cv___attribute__noreturn)
>> * OMPI_HAVE_ATTRIBUTE_PACKED
>> * (also, ompi_cv___attribute__packed)
>> * OMPI_HAVE_ATTRIBUTE_PURE
>> * (also, ompi_cv___attribute__pure)
>> * OMPI_HAVE_ATTRIBUTE_SENTINEL
>> * (also, ompi_cv___attribute__sentinel)
>> * OMPI_HAVE_ATTRIBUTE_UNUSED
>> * (also, ompi_cv___attribute__unused)
>> * OMPI_HAVE_ATTRIBUTE_VISIBILITY
>> * (also, ompi_cv___attribute__visibility)
>> * OMPI_HAVE_ATTRIBUTE_WARN_UNUSED_RESULT
>> * (also, ompi_cv___attribute__warn_unused_result)
>> * OMPI_HAVE_ATTRIBUTE_WEAK_ALIAS
>> * (also, ompi_cv___attribute__weak_alias)
>>
>> * From .../config/ompi_check_ident.m4.
>> * OMPI_$1_USE_PRAGMA_IDENT
>> * (also, ompi_pragma_ident_happy)
>> * OMPI_$1_USE_IDENT
>> * (also, ompi_ident_happy)
>> * OMPI_$1_USE_PRAGMA_COMMENT
>> * (also, ompi_pragma_comment_happy)
>> * OMPI_$1_USE_CONST_CHAR_IDENT
>> * (also, ompi_static_const_char_happy)
>>
>> * From .../config/ompi_check_pthreads_pids.m4.
>> * OMPI_THREADS_HAVE_DIFFERENT_PIDS
>>
>> * From .../config/ompi_check_visibility.m4.
>> * OMPI_C_HAVE_VISIBILITY
>>
>> * From .../config/ompi_config_asm.m4.
>> * OMPI_ASM_TEXT
>> * (also, ompi_cv_asm_text)
>> * OMPI_ASM_GLOBAL
>> * (also, ompi_cv_asm_global)
>> * OMPI_ASM_LSYM
>> * (also, ompi_cv_asm_lsym)
>> * OMPI_ASM_GSYM
>> * (also, ompi_cv_asm_gsym)
>> * OMPI_ASM_LABEL_SUFFIX
>> * (also, ompi_cv_asm_latel_suffix)
>> * OMPI_ASM_ALIGN_LOG
>> * OMPI_ASM_TYPE
>> * (also, ompi_cv_asm_type)
>> * OMPI_ASM_SIZE
>> * (also, ompi_asm_size)
>> * OMPI_POWERPC_R_REGISTERS
>> * (also, ompi_cv_asm_powerpc_r_reg)
>> * OMPI_C_GCC_INLINE_ASSEMBLY
>> * OMPI_C_DEC_INLINE_ASSEMBLY
>> * OMPI_C_XLC_INLINE_ASSEMBLY
>> * OMPI_WANT_SMP_LOCKS
>> * OMPI_ASM_SUPPORT_64BIT
>> * OMPI_ASSEMBLY_FORMAT
>> * OMPI_ASSEMBLY_ARCH
>> * OMPI_HAVE_ASM_FILE
>>
>> * From .../config/ompi_config_threads.m4.
>> * OMPI_HAVE_POSIX_THREADS
>> * OMPI_HAVE_SOLARIS_THREADS
>> * OMPI_THREADS_HAVE_DIFFERENT_PIDS
>> * OMPI_ENABLE_MPI_THREADS
>> * OMPI_ENABLE_PROGRESS_THREADS
>>
>> * From .../config/ompi_functions.m4.
>> * OMPI_ARCH
>>
>> * From .../config/ompi_setup_cc.m4.
>> * OMPI_C_HAVE_BUILTIN_EXPECT
>> * OMPI_C_HAVE_BUILTIN_PREFETCH
>> * OMPI_CC
>>
>> * From .../config/ompi_configure_options.m4.
>> * OMPI_ENABLE_MEM_DEBUG
>> * OMPI_ENABLE_MEM_PROFILE
>> * OMPI_ENABLE_DEBUG
>> * OMPI_WANT_PRETTY_PRINT_STACKTRACE
>> * OMPI_ENABLE_PTY_SUPPORT
>> * OMPI_ENABLE_HETEROGENEOUS_SUPPORT
>> * OMPI_WANT_HOME_CONFIG_FILES
>>
>> * From .../opal/include/opal_config_bottom.h.
>> * OMPI_HAVE_THREADS
>> * OMPI_HAVE_THREAD_SUPPORT
>> * OMPI_ALIGNMENT_CHAR
>> * OMPI_ALIGNMENT_SHORT
>> * OMPI_ALIGNMENT_INT
>> * OMPI_ALIGNMENT_LONG
>> * OMPI_PATH_MAX
>> * OMPI_DISABLE_ENABLE_MEM_DEBUG
>> * OMPI_DEBUG_ZERO
>> * OMPI_HAVE_BROKEN_QSORT
>>
>> * Due to changing the values set in the above steps, the .m4
>> configure macro
>> files are now named inappropriately. Therefore, update the following
>> filenames and change the configure scripts to point to the correct
>> new
>> names.
>> * .../config/ompi_check_attributes.m4 to
>> .../config/opal_check_attributes.m4
>> * .../config/ompi_check_ident.m4 to
>> .../config/opal_check_ident.m4
>> * .../config/ompi_check_pthread_pids.m4 to
>> .../config/opal_check_pthread_pids.m4
>> * .../config/ompi_check_visibility.m4 to
>> .../config/opal_check_visibility.m4
>> * .../config/ompi_config_asm.m4 to
>> .../config/opal_config_asm.m4
>> * .../config/ompi_config_threads.m4 to
>> .../config/opal_config_threads.m4
>> * .../config/ompi_functions.m4 to
>> .../config/opal_functions.m4
>> * .../config/ompi_setup_cc.m4 to
>> .../config/opal_setup_cc.m4
>> * .../config/ompi_configure_options.m4 to
>> .../config/opal_configure_options.m4
>>
>> * Remove unnecessary #include lines from source code files under the
>> .../ompi/mca/btl subtree that are not needed.
>> * #include "ompi/mca/pml/oml.h"
>>
>> <koenig-fix1.sh.gz>_______________________________________________
>> devel mailing list
>> devel_at_[hidden]
>> http://www.open-mpi.org/mailman/listinfo.cgi/devel
>
> _______________________________________________
> devel mailing list
> devel_at_[hidden]
> http://www.open-mpi.org/mailman/listinfo.cgi/devel