Skip to content

Commit 7495bcf

Browse files
authored
[UR][Benchmarks] Fix of #17934 - Gromacs benchmark (#18509)
In PR #17934, CI run of Gromacs benchmark was unable to find libraries - fixed. Additionaly, minor fixes from comments --------- Signed-off-by: Mateusz P. Nowak <[email protected]>
1 parent ff0a7ac commit 7495bcf

File tree

1 file changed

+11
-5
lines changed

1 file changed

+11
-5
lines changed

devops/scripts/benchmarks/benches/gromacs.py

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
from options import options
1111
from utils.utils import git_clone, download, run, create_build_path
1212
from utils.result import Result
13+
from utils.oneapi import get_oneapi
1314
import re
1415

1516

@@ -19,7 +20,7 @@ def git_url(self):
1920
return "https://gitlab.com/gromacs/gromacs.git"
2021

2122
def git_tag(self):
22-
return "v2025.1"
23+
return "v2025.2"
2324

2425
def grappa_url(self):
2526
return "https://zenodo.org/record/11234002/files/grappa-1.5k-6.1M_rc0.9.tar.gz"
@@ -60,6 +61,9 @@ def setup(self):
6061
# TODO: Detect the GPU architecture and set the appropriate flags
6162

6263
# Build GROMACS
64+
65+
self.oneapi = get_oneapi()
66+
6367
run(
6468
[
6569
"cmake",
@@ -73,6 +77,7 @@ def setup(self):
7377
f"-DGMX_SYCL_ENABLE_EXPERIMENTAL_SUBMIT_API=ON",
7478
f"-DGMX_FFT_LIBRARY=MKL",
7579
f"-DGMX_GPU_FFT_LIBRARY=MKL",
80+
f"-DMKL_DIR={self.oneapi.mkl_cmake()}",
7681
f"-DGMX_GPU_NB_CLUSTER_SIZE=8",
7782
f"-DGMX_GPU_NB_NUM_CLUSTER_PER_CELL_X=1",
7883
f"-DGMX_OPENMP=OFF",
@@ -82,6 +87,7 @@ def setup(self):
8287
run(
8388
f"cmake --build {self.gromacs_build_path} -j {options.build_jobs}",
8489
add_sycl=True,
90+
ld_library=self.oneapi.ld_libraries(),
8591
)
8692
download(
8793
self.directory,
@@ -152,6 +158,7 @@ def setup(self):
152158
self.conf_result = run(
153159
cmd_list,
154160
add_sycl=True,
161+
ld_library=self.suite.oneapi.ld_libraries(),
155162
)
156163

157164
def run(self, env_vars):
@@ -192,11 +199,10 @@ def run(self, env_vars):
192199
env_vars,
193200
add_sycl=True,
194201
use_stdout=False,
202+
ld_library=self.suite.oneapi.ld_libraries(),
195203
)
196204

197-
if self.type == "pme" and not self._validate_correctness(
198-
options.benchmark_cwd + "/md.log"
199-
):
205+
if not self._validate_correctness(options.benchmark_cwd + "/md.log"):
200206
raise ValueError(
201207
f"Validation failed: Conserved energy drift exceeds threshold in {model_dir / 'md.log'}"
202208
)
@@ -237,7 +243,7 @@ def _extract_execution_time(self, log_content):
237243
raise ValueError(f"No numeric value found in the 'Time:' line.")
238244

239245
def _validate_correctness(self, log_file):
240-
threshold = 1e-3 # Define an acceptable energy drift threshold
246+
threshold = 1e-2 # Define an acceptable energy drift threshold
241247

242248
log_file = Path(log_file)
243249
if not log_file.exists():

0 commit comments

Comments
 (0)