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

Fix problems with CrayCCE processing when there are no actual external modules #3319

Merged
merged 16 commits into from
May 3, 2020

Conversation

akesandgren
Copy link
Contributor

@akesandgren akesandgren commented May 1, 2020

Make HMNS compatible with Cray toolchains

And since craympich.py doesn't have an separate MPI module,
MPI_MODULE_NAME should be None and not an empty list.

Fixes #3265

…l modules.

Set name and version for EXTERNAL_MODULES which lacks an actual module
in _parse_dependency.
And since craympich.py doesn't have an separate MPI module,
MPI_MODULE_NAME should be None and not an empty list.
@akesandgren akesandgren changed the title Fix problems with CrayCCE processing when there are no actual external modules Fix problems with CrayCCE processing when there are no actual external modules (WIP) May 1, 2020
@easybuilders easybuilders deleted a comment from boegelbot May 1, 2020
@easybuilders easybuilders deleted a comment from boegelbot May 1, 2020
@boegel boegel added this to the next release (4.2.1?) milestone May 1, 2020
Copy link
Member

@boegel boegel left a comment

Choose a reason for hiding this comment

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

@akesandgren The fixes done here should be covered by the tests too, otherwise we're doomed to reintroduce similar issues again...

easybuild/framework/easyconfig/easyconfig.py Outdated Show resolved Hide resolved
easybuild/tools/toolchain/mpi.py Outdated Show resolved Hide resolved
@akesandgren
Copy link
Contributor Author

Yeah, this was mainly a proof-of-concept, figuring out what things where causing problems.
I'll rewrite stuff...

@boegel
Copy link
Member

boegel commented May 1, 2020

I'm working on an enhanced test for --list-software and --list-installed-software that should trigger the problem reported in #3265...

@boegel
Copy link
Member

boegel commented May 1, 2020

@akesandgren The enhanced test in akesandgren#16 triggers the problem with --list-installed-software, it only occurs if the HPL easyconfig using a Cray toolchain is used.

The current changes fix the issue with eb HPL-2.3-CrayCCE-19.06.eb -D --module-naming-scheme HierarchicalMNS, but are not enough to fix the original problem with eb --list-installed-software. The problem is that tc_comps is just [None], and so you still get the TypeError: 'NoneType' object has no attribute '__getitem__' issue with the enhanced test.

We should probably get rid of all those deprecation warnings in the output of --list-installed-software btw, it's a bit ridiculous...

@easybuilders easybuilders deleted a comment from boegelbot May 2, 2020
@easybuilders easybuilders deleted a comment from boegelbot May 2, 2020
if len(name_version) > 1:
dependency['version'] = name_version[1]
else:
dependency['version'] = ''
Copy link
Member

Choose a reason for hiding this comment

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

@akesandgren This is still quite hacky, and will have unintended side effects.

We better make HierarchicalMNS compatible with Cray toolchains, where there is no info available on the toolchain compiler (since there's no dedicated toolchain component for it), see akesandgren#17

fix broken test_index_functions
@akesandgren akesandgren changed the title Fix problems with CrayCCE processing when there are no actual external modules (WIP) Fix problems with CrayCCE processing when there are no actual external modules May 3, 2020
@boegel boegel merged commit 0f78649 into easybuilders:develop May 3, 2020
@akesandgren akesandgren deleted the fix-crayce-problems branch May 3, 2020 11:32
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.

Parsing Cray easyconfigs fails when using Hierarchical Module Naming Scheme (HMNS)
2 participants