Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Modernize GASNet configure arguments #12

Merged
merged 4 commits into from
Jan 19, 2023

Conversation

bonachea
Copy link
Contributor

@bonachea bonachea commented Jan 19, 2023

This PR applies the changes discussed in issue #10, currently assuming the GASNet version floor of 1.32/2021.3 reflected by the archived tarballs.

There should be NO change in configured behavior, this just removes obsolete options, leverages default options and rearranges existing options. See individual commit messages for details, which includes explanation of why each transformation is safe/equivalent for the selected GASNet versions.

CC: @PHHargrove

This option became the default in versions:
GASNet 1.30 (b72d89a6b28) / 2017.12.0 (db6472e7d4),
and has always been required for use of PSHM (--enable-pshm).

The aligned-segments feature is deprecated and only preserved for legacy reasons,
and is likely to eventually be removed entirely (i.e. there is no
chance it will ever be default-enabled again).
The `--with-segment-mmap-max` option was removed in:
GASNet 1.32.0 (853e522dca) / 2018.12.0 (57c3834ddb)
Since then, the option does nothing but generate a configure warning
about use of the obsolete option.

Luckily the mechanism for determining the default mmap max received a
major overhaul in the versions listed above, and is now smart enough to
work "out of the box" for nearly all systems. So although there is a new
configure option (with different spelling) to manually override that
defaulting algorithm, it is best NOT to pass that new option unless you
encounter a system-specific problem with the segment probe.
This option, present since version:
GASNet 1.14 (d08499c560) and all EX versions
disables the default automatic probing for supported conduits.
Automatic probing is designed for the common (non-Realm) use case
of installing GASNet for all supported conduits, but Realm prefers
to build GASNet for only one specific conduit.

Passing this option allows a configure line to select specific
conduits in a strictly "additive" manner via `--enable-CONDUIT`,
rather than attempting to "subtract" all other conduits via
`--disable-CONDUIT` (which is error-prone and not future-proof).

Remove all `--disable-CONDUIT` options, which are now redundant.
There are NO meaningful changes to configure options in this commit,
just sorting of existing options to follow a uniform convention for
ease of comparison and maintenance.

Add a README describing the convention.
Copy link
Contributor

@PHHargrove PHHargrove left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for this work, @bonachea
I believe this addresses all of our shared concerns about the use of removed or ill-advised options.

@elliottslaughter elliottslaughter merged commit 009e9cf into StanfordLegion:master Jan 19, 2023
@elliottslaughter
Copy link
Contributor

Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants