flecsi: fixed reported issues in package#24398
Conversation
alalazo
commented
Jun 18, 2021
| depends_on('mpi', when='backend=legion @:1.9') | ||
| depends_on('mpi', when='backend=hpx @:1.9') | ||
| depends_on('legion+shared+mpi', when='backend=legion @:1.9') | ||
| depends_on('legion+shared network=mpi', when='backend=legion @:1.9') |
There was a problem hiding this comment.
Note ever since 24c87e0 the Legion config that used to be spelled legion+mpi is now spelled legion network=gasnet conduit=mpi.
What you've asked for here is Legion's beta direct-to-MPI backend, which the Legion devs label as: "still experimental and we discourge its use for general (not legion development) use cases."
Are you really sure this is what you want?
You may get more stable behavior from the GASNet backend, and would almost certainly get better performance by enabling a native GASNet conduit (eg legion network=gasnet conduit=ibv for an InfiniBand system or legion network=gasnet conduit=aries on a Cray XC)
For more details, see the Legion package readme: https://github.com/spack/spack/tree/develop/var/spack/repos/builtin/packages/legion
There was a problem hiding this comment.
Are you really sure this is what you want?
Thanks for the insight. I am just trying out a command:
$ spack audit packages flecsithat has been merged recently and that pointed to the 2 errors in the description. Translating +mpi to network=mpi was just a guess waiting to be validated by maintainers. By the way, I'm open to add new maintainers for the package if you or other people you think may be appropriate would like to volunteer 🙂
There was a problem hiding this comment.
@bonachea Given what you say above I wonder if:
depends_on('legion+shared', when='backend=legion @:1.9')
conflicts('legion network=none', when='backend=legion @:1.9')is a more appropriate fix since it permits to concretize both with network=gasnet and network=mpi.
There was a problem hiding this comment.
Thanks for the clarification.
Based on your response I'd suggest legion network=gasnet conduit=mpi as a more accurate equivalent to past behavior, although probably not the optimal choice for any distributed-memory system.
I'm definitely the wrong person to be marked as a maintainer for flecsi.
@rspavel @ktsai7 are marked as the current maintainers and hopefully have some thoughts?
There was a problem hiding this comment.
network=none is the already the Legion package default, which seems like a safe choice that the end user can override as appropriate for their system.
There was a problem hiding this comment.
Good catch.
I'll poke some of the flecsi/llegion folk when I get a chance, but I think the
depends_on('legion+shared', when='backend=legion @:1.9')
conflicts('legion network=none', when='backend=legion @:1.9')
Is probably the way to go for now as network and conduit are likely things that would need to be set on a per build basis.
|
Thanks for working on this. I ran into this today. |
efeeb25 to
a5fc710
Compare
645d9fe to
a5fc710
Compare
|
CI is failing due to unrelated issues, see #23212. Once that is fixed this PR will be ready for another review. |
This only prevents to use "legion network=none" when flecsi has "backend=legion"
a5fc710 to
fa632cc
Compare
Prevent the use of "legion network=none" when flecsi has "backend=legion"