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

{data}[GCC/9.3.0,iccifort/2020.1.217] HDF5.Serial v1.10.6 #11155

Merged

Conversation

mboisson
Copy link
Contributor

(created using eb --new-pr)

Deleting files with wrong filenames
Deleting files with wrong filenames
@zao
Copy link
Contributor

zao commented Aug 21, 2020

Test report by @zao
SUCCESS
Build succeeded for 2 out of 2 (2 easyconfigs in this PR)
freja - Linux ubuntu 18.04, x86_64, Intel(R) Core(TM) i7-8700K CPU @ 3.70GHz, Python 2.7.17
See https://gist.github.com/60510ba13d800eb49a5e9ed2f9cc4ea1 for a full test report.

@mboisson mboisson changed the title {data}[GCC/9.3.0,iccifort/2020.1.217] HDF5 v1.10.6 {data}[GCC/9.3.0,iccifort/2020.1.217] HDF5.Serial v1.10.6 Aug 24, 2020
Copy link
Contributor

@lexming lexming left a comment

Choose a reason for hiding this comment

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

Serial builds of HDF5 should use HDF5 as package name. They can differentiate from other HDF5 builds by adding serial as versionsuffix. As an example, we have HDF5-1.8.17-GCC-5.4.0-2.26-serial.eb

@lexming lexming added the update label Aug 25, 2020
@lexming lexming added this to the 4.x milestone Aug 25, 2020
@mboisson
Copy link
Contributor Author

mboisson commented Aug 25, 2020

@lexming no. That is contrary to what was discussed in the latest EB conference call, i.e. https://github.com/easybuilders/easybuild/wiki/Conference-call-notes-20200819. paging @boegel

@lexming
Copy link
Contributor

lexming commented Aug 25, 2020

@mboisson we have always handled MPI and serial builds with versionsuffix. What is the advantage in creating multiple package names for the same software? I'll wait for the feedback from @boegel

@boegel
Copy link
Member

boegel commented Aug 25, 2020

@lexming We discussed this extensively during the last EasyBuild conf call, and @mboisson pointed out.

@mboisson raised the problem (rightfully so) that packages like Boost, HDF5, netCDF which have a small (and rarely actually used) MPI component cause other packages to be installed with an MPI toolchain, which doesn't make much sense. One example is MariaDB, which is installed with the gompi toolchain only because Boost is built with it.

After a fairly extensive discussion during the call we agreed to add easyconfigs like HDF5.Serial (although I'd go with HDF5.serial, but that's a detail) for the non-MPI version of HDF5, so we can keep things that depend on it (and don't use the MPI features) at a compiler-only toolchain.
That way, we avoid a name clash (and conflict) with HDF5, so this can be done without too causing problems in an existing easyconfigs generation (2020a in this case). That's not the case when changing HDF5 in place to not support the MPI features (and adding an HDF5.parallel), or by using variants of HDF5 that have a -serial or -parallel version suffix.

For future easyconfig versions, we can also rename the current HDF5 to HDF5.parallel to indicate it has MPI features.
That way software that depends on HDF5.serial can be used together with software that depends HDF5.parallel without trouble. A similar approach is used by hdf5 modules that come with Cray systems.

@lexming
Copy link
Contributor

lexming commented Aug 25, 2020

@boegel thanks for the explanation. If part of the goal is to be able to load both the serial and parallel builds, then I agree with the multiple package names.

@lexming
Copy link
Contributor

lexming commented Aug 26, 2020

Test report by @lexming
SUCCESS
Build succeeded for 2 out of 2 (2 easyconfigs in this PR)
node376.hydra.os - Linux centos linux 7.7.1908, x86_64, Intel(R) Xeon(R) Gold 6148 CPU @ 2.40GHz, Python 2.7.5
See https://gist.github.com/d69b4c2c77be68eb3834f78a0adec4e0 for a full test report.

@lexming
Copy link
Contributor

lexming commented Aug 26, 2020

Test report by @lexming
SUCCESS
Build succeeded for 2 out of 2 (2 easyconfigs in this PR)
node124.hydra.os - Linux centos linux 7.7.1908, x86_64, Intel(R) Xeon(R) CPU E5-2680 v2 @ 2.80GHz, Python 2.7.5
See https://gist.github.com/a461e3793ed3708a26a7a35a5399cb8b for a full test report.

Copy link
Contributor

@lexming lexming left a comment

Choose a reason for hiding this comment

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

The resulting build is identical to HDF5 v1.10.6 except for the MPI support.

LGTM

@smoors
Copy link
Contributor

smoors commented Aug 31, 2020

we agreed to add easyconfigs like HDF5.Serial (although I'd go with HDF5.serial, but that's a detail)

@mboisson @boegel what's the plan here: keep the name or change to the lowercase variant?

@zao
Copy link
Contributor

zao commented Sep 1, 2020

Test report by @zao
FAILED
Build succeeded for 1 out of 2 (2 easyconfigs in this PR)
freja - Linux Ubuntu 20.04, x86_64, Intel(R) Core(TM) i7-8700K CPU @ 3.70GHz, Python 3.8.2
See https://gist.github.com/e3c322c10ca85b2c0f2c87d9f63bcc1b for a full test report.

@zao
Copy link
Contributor

zao commented Sep 1, 2020

It appears that my failure for the Intel build of HDF5.Serial also manifests with regular HDF5 on this OS, so not particular to this PR.
PEBKAC, helps if one has the license server accessible.

@zao
Copy link
Contributor

zao commented Sep 1, 2020

Test report by @zao
SUCCESS
Build succeeded for 2 out of 2 (2 easyconfigs in this PR)
freja - Linux Ubuntu 20.04, x86_64, Intel(R) Core(TM) i7-8700K CPU @ 3.70GHz, Python 3.8.2
See https://gist.github.com/72d634f7ee3590a70d9b94b9a6372ca4 for a full test report.

@mboisson
Copy link
Contributor Author

mboisson commented Sep 1, 2020

we agreed to add easyconfigs like HDF5.Serial (although I'd go with HDF5.serial, but that's a detail)

@mboisson @boegel what's the plan here: keep the name or change to the lowercase variant?

I am personally agnostic to S or s. It makes no difference to me.

@smoors
Copy link
Contributor

smoors commented Sep 2, 2020

@mboisson I'm personally in favor of lowercase too, so let's change it?

@lexming
Copy link
Contributor

lexming commented Sep 2, 2020

@mboisson @smoors We discussed about the introduction of serial packages in today's EB conf call and we will make a specific branch to gather all these PRs and properly test them.

@lexming lexming changed the base branch from develop to dual_serial_mpi September 2, 2020 09:42
@lexming
Copy link
Contributor

lexming commented Sep 2, 2020

Changed target to easybuilders:dual_serial_mpi

@lexming
Copy link
Contributor

lexming commented Sep 2, 2020

Now that we have a specific branch, we can change package names later on.

Going in, thanks @mboisson !

@lexming lexming merged commit 01c45af into easybuilders:dual_serial_mpi Sep 2, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants