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

{lib}[gfbf/2024a] pypmt v1.3.0 #21712

Open
wants to merge 2 commits into
base: develop
Choose a base branch
from

Conversation

benczaja
Copy link
Contributor

(created using eb --new-pr)

@smoors smoors added update 2024a issues & PRs related to 2024a common toolchains labels Nov 7, 2024
@smoors
Copy link
Contributor

smoors commented Nov 7, 2024

@benczaja what's the difference between this and #21711 apart from also including the python bindings?
do you really need the non-python version as well?

Copy link

Updated software pypmt-1.3.0-gfbf-2024a.eb

Diff against pypmt-1.2.0-foss-2022a.eb

easybuild/easyconfigs/p/pypmt/pypmt-1.2.0-foss-2022a.eb

diff --git a/easybuild/easyconfigs/p/pypmt/pypmt-1.2.0-foss-2022a.eb b/easybuild/easyconfigs/p/pypmt/pypmt-1.3.0-gfbf-2024a.eb
index c4a491c898..453ab885c4 100644
--- a/easybuild/easyconfigs/p/pypmt/pypmt-1.2.0-foss-2022a.eb
+++ b/easybuild/easyconfigs/p/pypmt/pypmt-1.3.0-gfbf-2024a.eb
@@ -1,28 +1,30 @@
 easyblock = 'CMakeMake'
 
 name = 'pypmt'
-version = '1.2.0'
+version = '1.3.0'
+versionsuffix = '-CUDA-%(cudaver)s'
 
 homepage = 'https://git.astron.nl/RD/pmt'
 description = """PMT is a high-level software library capable of 
     collecting power consumption measurements on various hardware."""
 
-toolchain = {'name': 'foss', 'version': '2022a'}
-builddependencies = [('CMake', '3.23.1')]
+toolchain = {'name': 'gfbf', 'version': '2024a'}
+builddependencies = [('CMake', '3.29.3')]
 
 dependencies = [
-    ('Python', '3.10.4'),
-    ('SciPy-bundle', '2022.05'),
+    ('Python', '3.12.3'),
+    ('SciPy-bundle', '2024.05'),
+    ('CUDA', '12.6.0', '', SYSTEM),
 ]
 
 source_urls = ['https://git.astron.nl/RD/pmt/-/archive/%(version)s']
 sources = ['pmt-%(version)s.tar.gz']
-checksums = ['98faf305c60cc4d39d3b8ada1dcb7c87c49bf6f01a3cd2800b413d21d5df1a38']
+checksums = ['90c6c114d931dc1cdc046f544dabf3b547562e18ffd503bcd3b9de2b4fd4c734']
 
-configopts = '-DBUILD_PYTHON_PMT=1'
+configopts = '-DPMT_BUILD_PYTHON=1 -DPMT_BUILD_RAPL=1 -DPMT_BUILD_NVML=1 -DPMT_BUILD_NVIDIA=1'
 
 sanity_check_paths = {
-    'files': ["bin/Rapl-test"],
+    'files': ["lib/libpmt.so", "include/pmt/NVIDIA.h", "include/pmt/Rapl.h", "include/pmt/NVML.h"],
     'dirs': [
         "lib",
         "lib/python",
Diff against pypmt-1.2.0-gfbf-2023a.eb

easybuild/easyconfigs/p/pypmt/pypmt-1.2.0-gfbf-2023a.eb

diff --git a/easybuild/easyconfigs/p/pypmt/pypmt-1.2.0-gfbf-2023a.eb b/easybuild/easyconfigs/p/pypmt/pypmt-1.3.0-gfbf-2024a.eb
index fde22430c1..453ab885c4 100644
--- a/easybuild/easyconfigs/p/pypmt/pypmt-1.2.0-gfbf-2023a.eb
+++ b/easybuild/easyconfigs/p/pypmt/pypmt-1.3.0-gfbf-2024a.eb
@@ -1,28 +1,30 @@
 easyblock = 'CMakeMake'
 
 name = 'pypmt'
-version = '1.2.0'
+version = '1.3.0'
+versionsuffix = '-CUDA-%(cudaver)s'
 
 homepage = 'https://git.astron.nl/RD/pmt'
 description = """PMT is a high-level software library capable of 
     collecting power consumption measurements on various hardware."""
 
-toolchain = {'name': 'gfbf', 'version': '2023a'}
-builddependencies = [('CMake', '3.26.3')]
+toolchain = {'name': 'gfbf', 'version': '2024a'}
+builddependencies = [('CMake', '3.29.3')]
 
 dependencies = [
-    ('Python', '3.11.3'),
-    ('SciPy-bundle', '2023.07'),
+    ('Python', '3.12.3'),
+    ('SciPy-bundle', '2024.05'),
+    ('CUDA', '12.6.0', '', SYSTEM),
 ]
 
 source_urls = ['https://git.astron.nl/RD/pmt/-/archive/%(version)s']
 sources = ['pmt-%(version)s.tar.gz']
-checksums = ['98faf305c60cc4d39d3b8ada1dcb7c87c49bf6f01a3cd2800b413d21d5df1a38']
+checksums = ['90c6c114d931dc1cdc046f544dabf3b547562e18ffd503bcd3b9de2b4fd4c734']
 
-configopts = '-DBUILD_PYTHON_PMT=1'
+configopts = '-DPMT_BUILD_PYTHON=1 -DPMT_BUILD_RAPL=1 -DPMT_BUILD_NVML=1 -DPMT_BUILD_NVIDIA=1'
 
 sanity_check_paths = {
-    'files': ["bin/Rapl-test"],
+    'files': ["lib/libpmt.so", "include/pmt/NVIDIA.h", "include/pmt/Rapl.h", "include/pmt/NVML.h"],
     'dirs': [
         "lib",
         "lib/python",
Diff against pypmt-1.1.0-gfbf-2023a.eb

easybuild/easyconfigs/p/pypmt/pypmt-1.1.0-gfbf-2023a.eb

diff --git a/easybuild/easyconfigs/p/pypmt/pypmt-1.1.0-gfbf-2023a.eb b/easybuild/easyconfigs/p/pypmt/pypmt-1.3.0-gfbf-2024a.eb
index 69a0899d6a..453ab885c4 100644
--- a/easybuild/easyconfigs/p/pypmt/pypmt-1.1.0-gfbf-2023a.eb
+++ b/easybuild/easyconfigs/p/pypmt/pypmt-1.3.0-gfbf-2024a.eb
@@ -1,28 +1,30 @@
 easyblock = 'CMakeMake'
 
 name = 'pypmt'
-version = '1.1.0'
+version = '1.3.0'
+versionsuffix = '-CUDA-%(cudaver)s'
 
 homepage = 'https://git.astron.nl/RD/pmt'
 description = """PMT is a high-level software library capable of 
     collecting power consumption measurements on various hardware."""
 
-toolchain = {'name': 'gfbf', 'version': '2023a'}
-builddependencies = [('CMake', '3.26.3')]
+toolchain = {'name': 'gfbf', 'version': '2024a'}
+builddependencies = [('CMake', '3.29.3')]
 
 dependencies = [
-    ('Python', '3.11.3'),
-    ('SciPy-bundle', '2023.07'),
+    ('Python', '3.12.3'),
+    ('SciPy-bundle', '2024.05'),
+    ('CUDA', '12.6.0', '', SYSTEM),
 ]
 
 source_urls = ['https://git.astron.nl/RD/pmt/-/archive/%(version)s']
 sources = ['pmt-%(version)s.tar.gz']
-checksums = ['ab342ec33992c1ad4c42e0e66031710fe6320f73a1ca2a6e34cb1d4739da781f']
+checksums = ['90c6c114d931dc1cdc046f544dabf3b547562e18ffd503bcd3b9de2b4fd4c734']
 
-configopts = '-DBUILD_PYTHON_PMT=1'
+configopts = '-DPMT_BUILD_PYTHON=1 -DPMT_BUILD_RAPL=1 -DPMT_BUILD_NVML=1 -DPMT_BUILD_NVIDIA=1'
 
 sanity_check_paths = {
-    'files': ["bin/Rapl-test"],
+    'files': ["lib/libpmt.so", "include/pmt/NVIDIA.h", "include/pmt/Rapl.h", "include/pmt/NVML.h"],
     'dirs': [
         "lib",
         "lib/python",

@benczaja
Copy link
Contributor Author

Hi @smoors ,
Good question, indeed there are small differences. I created a separate config, because of the naming convention of EB. This library is primarily a c++ library, and I thought that the giving it the suffix gfbf, will confuse that the library doesn't have a C++ library. I thought creating two, would give the "user" a clearer idea of what to select when loading the module. Also pypmt is eventually the name of the python library that will be imported. not pmt.

Anyways let me know what you think, and I will make the change.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
2024a issues & PRs related to 2024a common toolchains update
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants