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

Enhance Score-P EasyBlock for future releases and better oneAPI support. #3548

Open
wants to merge 1 commit into
base: 5.0.x
Choose a base branch
from

Conversation

Thyre
Copy link
Contributor

@Thyre Thyre commented Jan 10, 2025

The following changes are implemented:

  • Properly handle Qt5 & Qt6 dependencies for CubeGUI, not only Qt4
  • Remove --with-cube option, as this is not supported by Score-P 6.0+ & recent Scalasca versions
  • Add dependency handling for GOTCHA, as this will likely be added with Score-P 9.0+
  • Switch to --with-nocross-compiler-suite=oneapi if Intel toolchain uses oneAPI compilers (checked via 'oneapi' toolchain option). This allows building Score-P with oneAPI 2024.0.0 and newer.

Targeting 5.0.x, as develop still contains the EasyConfigs Cube-4.3.4-foss-2016a.eb and Scalasca-2.3-foss-2016a.eb, still using --with-cube= as the option.

The following changes are implemented:
- Properly handle Qt5 & Qt6 dependencies for CubeGUI, not only Qt4
- Remove `--with-cube` option, as this is not supported by Score-P 6.0+
- Add dependency handling for GOTCHA, as this option will likely be added
  with Score-P 9.0+
- Switch to `--with-nocross-compiler-suite=oneapi` if Intel toolchain
  uses oneAPI compilers (checked via 'oneapi' toolchain option).
  This allows building Score-P with oneAPI 2024.0.0 and newer.

Signed-off-by: Jan André Reuter <[email protected]>
@Thyre
Copy link
Contributor Author

Thyre commented Jan 10, 2025

I can split this PR into two, removing the --with-cube option in a separate one. With this, the remaining changes could also be used in EasyBuild 4.9.x.
However, I'm not sure if this is worth the effort, given that 5.0 is likely the next release.

@Thyre
Copy link
Contributor Author

Thyre commented Jan 10, 2025

See easybuilders/easybuild-easyconfigs#22143 (comment) for a local test with Intel oneAPI EasyConfigs.

@Thyre
Copy link
Contributor Author

Thyre commented Jan 10, 2025

@boegelbot please test @ jsc-zen3
EB_BRANCH=5.0.x
EB_ARGS="Score-P-8.4-gompi-2024a-CUDA-12.6.0.eb Score-P-8.4-gompi-2024a.eb CubeGUI-4.8-GCCcore-11.3.0.eb Scalasca-2.6.1-gompi-2022a.eb --installpath /tmp/$USER"

@boegelbot
Copy link

@Thyre: Request for testing this PR well received on jsczen3l1.int.jsc-zen3.fz-juelich.de

PR test command 'if [[ "5.0.x" != 'develop' ]]; then EB_BRANCH="5.0.x" ./easybuild_develop.sh 2> /dev/null 1>&2; EB_PREFIX=/home/boegelbot/easybuild/"5.0.x" source init_env_easybuild_develop.sh; fi; EB_PR=3548 EB_ARGS="Score-P-8.4-gompi-2024a-CUDA-12.6.0.eb Score-P-8.4-gompi-2024a.eb CubeGUI-4.8-GCCcore-11.3.0.eb Scalasca-2.6.1-gompi-2022a.eb --installpath /tmp/$USER" EB_REPO=easybuild-easyblocks EB_BRANCH="5.0.x" /opt/software/slurm/bin/sbatch --job-name test_PR_3548 --ntasks=8 ~/boegelbot/eb_from_pr_upload_jsc-zen3.sh' executed!

  • exit code: 0
  • output:
Submitted batch job 5523

Test results coming soon (I hope)...

- notification for comment with ID 2582401628 processed

Message to humans: this is just bookkeeping information for me,
it is of no use to you (unless you think I have a bug, which I don't).

@boegelbot
Copy link

Test report by @boegelbot

Overview of tested easyconfigs (in order)

  • SUCCESS Score-P-8.4-gompi-2024a-CUDA-12.6.0.eb
  • SUCCESS Score-P-8.4-gompi-2024a.eb
  • SUCCESS CubeGUI-4.8-GCCcore-11.3.0.eb
  • SUCCESS Scalasca-2.6.1-gompi-2022a.eb

Build succeeded for 4 out of 4 (4 easyconfigs in total)
jsczen3c1.int.jsc-zen3.fz-juelich.de - Linux Rocky Linux 9.5, x86_64, AMD EPYC-Milan Processor (zen3), Python 3.9.21
See https://gist.github.com/boegelbot/d8f13a6693596d504c4d691b43821525 for a full test report.

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.

2 participants