New easyblock for building QuantumESPRESSO with CMake#3257
New easyblock for building QuantumESPRESSO with CMake#3257ocaisa merged 19 commits intoeasybuilders:developfrom
Conversation
|
One thing to note is that compilation of some QE components and plugins has been moved to an implementantion with While it is possible to emulate what the script is doing, i would prefer to keep it as a source of truth, in case paths/implementation are changed in future versions. |
…f d3q without mpi)
Co-authored-by: ocaisa <alan.ocais@cecam.org>
Co-authored-by: ocaisa <alan.ocais@cecam.org>
|
@boegelbot please test @ jsc-zen3 |
|
@ocaisa: Request for testing this PR well received on jsczen3l1.int.jsc-zen3.fz-juelich.de PR test command '
Test results coming soon (I hope)... Details- notification for comment with ID 2039827575 processed Message to humans: this is just bookkeeping information for me, |
|
Test report by @boegelbot Overview of tested easyconfigs (in order)
Build succeeded for 0 out of 1 (1 easyconfigs in total) |
|
This flakiness with the thresholds on the test-suite... |
|
There is a PR open that addresses the single failing test issue that we have seen for QE in EESSI for the original easyblock. The reason for running that build here was just a sanity check, and that was ok. In easybuilders/easybuild-easyconfigs#20138 we have the checks for the new easyblock. |
| from easybuild.easyblocks.generic.cmakemake import CMakeMake | ||
|
|
||
|
|
||
| class EB_QuantumESPRESSOcmake(CMakeMake): |
There was a problem hiding this comment.
This approach has a bunch of downsides: one is duplicate code, another is that you have to explicitly opt-in by using easyblock = 'EB_QuantumESPRESSOcmake' in the easyconfig files...
How much effort would it be to integrate this into the existing "standard" custom easyblock for QuantumESPRESSO?
There was a problem hiding this comment.
I had a different plan, I was going to do a follow-up PR when the open QE easyconfigs are merged, where we use an explicit easyblock for the configuremake-based easyconfigs and then switch this to the standard
There was a problem hiding this comment.
It would be a lot of (pointless?) effort to merge them
Since Quantum Espresso 7.x, the configure/make build has been less supported in favor of CMake/Make.
Right now bot methods of building QE coexist, but some features, like the installation of the
pw2qmcpackare only supported in the CMake version.Further more, the CMake implementation should be able to much more easily recognize the present external libraries and pickup environment variables set by easy build, and also properly implement parallelization in Make, allowing to build and test QE much faster (the old Config/Make would need
maketo be run multiple times to reach the end if ran with more than 1 parallel process)