-
Notifications
You must be signed in to change notification settings - Fork 710
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
add easyconfigs for Scalasca, Score-P, Cube and dependencies #505
Conversation
… OTF(2), PDT, PAPI, binutils)
@berndmohr: Your easyconfigs as pushed in https://github.com/fgeorgatos/easybuild.experimental/tree/master/users/unite can never work, because the dependency tree contains two versions of At first, I was very surprised, and wondered how this could have ever worked on your end. But then I looked into the $ grep GCC users/unite/AdaptedEBconfigs/OpenMPI-1.6.5-GCC-4.8.1-no-OFED.eb
toolchain = {'name': 'GCC', 'version': '4.7.3'}
$ grep '4\.' users/unite/AdaptedEBconfigs/gompi-1.5.12-no-OFED.eb
compver = '4.7.3' So, although the file name for I'll fix this by using |
@berndmohr: I've also included the old versions of |
@berndmohr: Ah, hold on, I think I know what happened... You started out building |
Kenneth, watch out because Bernd's GCC has |
@fgeorgatos: Hah, no, missed that, thanks for the heads up. |
I was about to make the same contrib this morning and then realized this; In any case, some kind of variation in relation to the classic 4.7.3 seems On Sat, Nov 9, 2013 at 1:33 AM, Kenneth Hoste [email protected]:
|
@fgeorgatos: I'll need to figure out easybuilders/easybuild-easyblocks#293 first, because it seems like we've been building GCC on SL5 with |
Explanation GCC 4.7.1: after the hackathon in Cyprus, I continued working on my office workstation which runs SuSe 12.3 (my laptop runs 12.2). On the workstation GCC 4.8.1 build successfully, but building other software with it, resulted in all kind of weird assembler errors - so to make quick progress I switched to GCC 4.7.3 but probably not the correct EasyBuild way ;-) I just took my exisiting EB files and changed manually every 4.8.1 to 4.7.3 -- guess I should have changed the gompi version too. When I provided the EB files via the "experimental" repository, I understood that this is provided "AS-IS" without any guarantee about suitability and correctness; I tried hard to document and mark all out-standing issues
It was my understanding that someone (Kenneth) who would want to move this into the normal EB distribution would fix the outstanding issues in the process , e.g. uploading verisons for the "standard" toolchain (goalf?) etc. |
@bernd: Sure, I'm not trying to blame you for the fact that the easyconfigs don't work as expected when used 'in production', I fully understand that you cut corners (like not rebuilding GCC again) when playing around with EB. The easyconfigs provided in easybuild.experimental should indeed be used with great care, which is perfectly OK. I'm not that surprised that things went wrong when you tried using I'll be tweaking your easyconfigs to While I do that, I'll also see whether building GCC with BTW: I am Kenneth, I was hoping my avatar speaks for itself. ;-) |
I am actually reading the comments/messages through email (I gues I get them beause I "watch" the repositories, right?) and then it says, email from Kenneth Hoste ;-) |
@berndmohr: Every time I 'tag' you using your GitHub login id, you'll get a mail (by default). If you watch the repositories, you should get mails for every opened PR/issue. |
@berndmohr: I had to correct the sanity check paths for Cube. There's no binary |
…ure options to specify path for Qt tools, tweak sanity check paths
It seems that the same sources lead to different builds inside the bin directories, see below my case. I think this is an example of build diversification due to environment/context?
|
@boegel: Something must go wrong with the QT configuration. Have you checked the configure output of Cube regarding Qt? The Cube data browser provides 2 parts: the CUBE format reader/writer libraries and format utilities (cube3_XXX) and the actual visual browser (cube3, which is actually a symlink to cube3-qt). As on the actual cluster only the first part is needed (to write CUBE files in performance measurements) and because Qt is typically not available on cluster compute nodes, Cube configure automatically builds the first part when no (suitable) Qt is found. Your Qt configure options look good to me; but without seeing the configure output I cannot say what went wrong. |
@boegel: Is there a "rule" or policy" how extensive the sanity_check should be? So far I used the "policy" to check for one important file in each of the installation directory subdirectories (bin/include/lib)? |
On Sun, Nov 10, 2013 at 11:42 AM, berndmohr [email protected]:
my crude ruleset about that is:
I think the EB devs see it in a similar way Also, to see the bigger picture, here is an almost related case (section of API missing from mkl): |
@boegel: The Cube (configure) behaviour brings up actually another question: |
about cube variations: perhaps needing a -bare and a full-fledged version? |
I see no reason for a separate Cube build for now, since EB delivers everything. Don't forget: with a separate Cube build with Qt support, you wouldn't be able to load it into a session that already has the 'bare` Cube module loaded... @berndmohr: The sanity check should be exhaustive enough to capture failures. In this case, it should check for |
@berndmohr: I just rechecked, both the |
Reworked the Score-P easyconfig to use the Score-P easyblock available in easybuilders/easybuild-easyblocks#304 |
…dency for Extrae Conflicts: easybuild/easyconfigs/b/binutils/binutils-2.22-goalf-1.1.0-no-OFED.eb easybuild/easyconfigs/b/binutils/binutils-2.22-goolf-1.4.10.eb
@boegel: I understand now better the reasons why to implement Score-P as an easyblock and it is fine with me to get this into v1.9 as this looks like the most efficient / best working version regarding the features provided by v1.9. However, this raises other issues: Scalasca 2.X and LWM2 use exactly the same GNU configure procedures |
@berndmohr: Score-P, Scalasca v2.x, OTF2, Cube 4.x (and also LWM2 in #510) are all using the Scalasca v1.x now also has it's own easyblock, also available in easybuilders/easybuild-easyblocks#304 . Everything was retested, and works like a charm, so I'm merging these in, in time for EasyBuild v1.9. Please do review, even after the merge, and let me know if you have any remarks. I'm very happy with how this turned out: a nice and clean solution that we can both agree on, and a bunch of new tools supported by EasyBuild (and more to come!). |
add easyconfigs for Scalasca, Score-P, Cube and dependencies
@boegel: Regarding the patch for Cube 4.2 configure: is this a robustness improvement or something that was required to get it build with the latest Qt? Can you give some more background so I can open a ticket in the Cube repository? |
@boegel: I am also very satisfied with the outcome with the "generic" Score-P component easyblock. It will provide a solid basis for the future enhancements and extensions in the Score-P toolset universe. Thanks for all your work (and patience)! |
just a suggestion: since |
@fgeorgatos: Kenneth and I discussed this: all the tools sharing the easyblock are components centered around the Score-P toolset (which use the the same set of GNU autoconfig modules). So we thought "Score-P component" or "Score-P" for short is appropriate. They all are build by the same group of people and are available on score-p.org. UNITE would be wrong: UNITE also includes things like TAU or Paraver and their configure is not related at all with Score-P. |
@berndmohr: ah, OK, that is a good explanation then; it is also 2 commits to avoid and comment now does not disturb the (I guess) ongoing final build checks, |
@berndmohr: I just noticed I never answered this question... The patch file I had to include for building Cube with a Qt provided by EasyBuild is required because determining the Qt version failed. The underlying problem was that Qt is installed to a path that includes version string(s), e.g. So, long story short: it's a robustness improvement that should be included upstream probably, yes, it shouldn't break things (although I haven't checked the output of |
@boegel thanks for the update. we figured it out ourselves meanwhile. already fixed in Cube-4.2.1. |
add easyconfigs for Scalasca, Score-P, Cube and dependencies (OPARI2, OTF(2), PDT, PAPI, binutils) + minor style fixes
these are contributed by @berndmohr via https://github.com/fgeorgatos/easybuild.experimental/tree/master/users/unite
this depends on easybuilders/easybuild-easyblocks#304 (and thus also on easybuilders/easybuild-framework#754)