easybuilders / easybuild-easyblocks

Collection of easyblocks that implement support for building and installing software with EasyBuild.
https://easybuild.io
GNU General Public License v2.0
106 stars 285 forks source link

update Kokkos CPU mapping for LAMMPS >= 2Aug2023 to use `icx` on Intel Icelake systems #3321

Closed steenlysgaard closed 4 weeks ago

steenlysgaard commented 6 months ago

I noticed this when installing LAMMPS on our icelake servers and felt it was a typo.

ocaisa commented 6 months ago

Whether this is supported or not is dependent on the LAMMPS version. The correct place to make the update is within

https://github.com/easybuilders/easybuild-easyblocks/blob/develop/easybuild/easyblocks/l/lammps.py#L228

boegel commented 2 months ago

@steenlysgaard Are you planning to follow up on this?

steenlysgaard commented 1 month ago

@boegel I have done the change as @ocaisa suggested.

steenlysgaard commented 1 month ago

I found the relevant LAMMPS version by looking at this file https://github.com/lammps/lammps/blob/stable_2Aug2023/lib/kokkos/generate_makefile.bash#L182 for different LAMMPS releases

boegel commented 1 month ago

@casparvl Can you submit a test report for this using LAMMPS-29Aug2024-foss-2023b-kokkos.eb on your Icelake system?

boegel commented 1 month ago

@boegelbot please test @ jsc-zen3 EB_ARGS="LAMMPS-29Aug2024-foss-2023b-kokkos.eb"

boegelbot commented 1 month ago

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

PR test command 'if [[ develop != 'develop' ]]; then EB_BRANCH=develop ./easybuild_develop.sh 2> /dev/null 1>&2; EB_PREFIX=/home/boegelbot/easybuild/develop source init_env_easybuild_develop.sh; fi; EB_PR=3321 EB_ARGS="LAMMPS-29Aug2024-foss-2023b-kokkos.eb" EB_REPO=easybuild-easyblocks EB_BRANCH=develop /opt/software/slurm/bin/sbatch --job-name test_PR_3321 --ntasks=8 ~/boegelbot/eb_from_pr_upload_jsc-zen3.sh' executed!

Test results coming soon (I hope)...

*- notification for comment with ID 2400686279 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 commented 1 month ago

Test report by @boegelbot

Overview of tested easyconfigs (in order)

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

laraPPr commented 4 weeks ago

Succesfull build on IceLake See https://github.com/easybuilders/easybuild-easyconfigs/pull/21436#issuecomment-2420302152 And used the correct Kokkos package:

== Determined cpu arch: ICX
== Using Kokkos package with arch: CPU - ICX, GPU - None