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

Let mpi_family return None if MPI is not supported by a toolchain #1164

Merged
merged 3 commits into from Feb 15, 2015

Conversation

geimer
Copy link
Contributor

@geimer geimer commented Feb 10, 2015

Some easyblocks (e.g., Score-P) are used by multiple packages, some of which use MPI and others don't. Now, when building a package which doesn't use MPI with a subtoolchain (e.g., plain GCC), the easyblock will currently fail hard with an exception raised by the generic mpi_family implementation. This change allows the easyblock to check whether MPI is supported by the toolchain and then "do the right thing" (in case of Score-P, optionally pass the --with-mpi= configure option).

@hpcugentbot
Copy link
Contributor

Automatic reply from Jenkins: Can I test this?

@boegel
Copy link
Member

boegel commented Feb 11, 2015

This makes perfect sense, thanks for looking into this @geimer!

@boegel
Copy link
Member

boegel commented Feb 11, 2015

Jenkins: test this please

@hpcugentbot
Copy link
Contributor

Refer to this link for build results (access rights to CI server needed):
https://jenkins1.ugent.be/job/easybuild-framework-pr-builder/1290/
Test PASSed.

@boegel boegel mentioned this pull request Feb 11, 2015
@boegel
Copy link
Member

boegel commented Feb 11, 2015

Looks great, but I'd love to see a dedicated unit test for this, i.e. a new test_ function in test/framework/toolchain.py

@boegel
Copy link
Member

boegel commented Feb 11, 2015

Jenkins: test this please

@hpcugentbot
Copy link
Contributor

Refer to this link for build results (access rights to CI server needed):
https://jenkins1.ugent.be/job/easybuild-framework-pr-builder/1303/
Test PASSed.


# cleanup
shutil.rmtree(tmpdir)
open(imkl_module_path, 'w').write(imkl_module_txt)
Copy link
Member

Choose a reason for hiding this comment

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

use write_file here, and please also include this in the other places where the imkl module is being fiddled with...

the problem is: if the test fails, the imkl module will not be restored (this issue was already there, it's not something you're causing)

@boegel
Copy link
Member

boegel commented Feb 15, 2015

Jenkins: ok to test

@boegel
Copy link
Member

boegel commented Feb 15, 2015

Looks perfect, I'll merge it as soon as Jenkins gives it a green light (last commit was untested).

@hpcugentbot
Copy link
Contributor

Refer to this link for build results (access rights to CI server needed):
https://jenkins1.ugent.be/job/easybuild-framework-pr-builder/1356/
Test PASSed.

@boegel
Copy link
Member

boegel commented Feb 15, 2015

Looking good, so merging this in, thanks @geimer!

boegel added a commit that referenced this pull request Feb 15, 2015
Let mpi_family return None if MPI is not supported by a toolchain
@boegel boegel merged commit 24e9553 into easybuilders:develop Feb 15, 2015
@geimer geimer deleted the fix_mpi_family branch February 15, 2015 16:03
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.

None yet

3 participants