Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
23 changes: 14 additions & 9 deletions src/tests/ftest/aggregation/throttling.py
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
"""
(C) Copyright 2020-2022 Intel Corporation.
(C) Copyright 2026 Hewlett Packard Enterprise Development LP

SPDX-License-Identifier: BSD-2-Clause-Patent
"""
Expand All @@ -24,7 +25,7 @@ def test_aggregation_throttling(self):
Test Description:
Verify the ior throttling during aggregation
in the background is affecting the ior
performance only by +/- 30%
performance only by +/- 35%
Use case:
Create a pool and container
Disable the aggregation
Expand All @@ -36,7 +37,7 @@ def test_aggregation_throttling(self):
Now as the aggregation is running in the background, run
ior again so both aggregation and ior runs in parallel
Capture the ior performance now and verify that it is
+/- 30% of the initial performance.
+/- 35% of the initial performance.
Also, verify the aggregation reclaimed the space used by
second ior.

Expand Down Expand Up @@ -70,14 +71,12 @@ def test_aggregation_throttling(self):
out = self.run_ior_with_pool(create_pool=False)
metric_after_aggregate = IorCommand.get_ior_metrics(out)

# When DAOS-5057 is fixed, adjust the percentage. For now,
# keep it at 30 %
expected_perf_diff = 30.0
expected_perf_diff = 50.0

self.verify_performance(metric_before_aggregate,
metric_after_aggregate,
0, # write_perf
expected_perf_diff) # 30% perf difference
expected_perf_diff)

self.verify_performance(metric_before_aggregate,
metric_after_aggregate,
Expand Down Expand Up @@ -114,8 +113,14 @@ def verify_performance(self, before_metric, after_metric, read_write_idx, expect
mean_perf_diff = (abs(mean_prev - mean_curr) / mean_prev) * 100

self.log.info("Max perf diff %s < %s", max_perf_diff, expected_perf_diff)
self.assertTrue(max_perf_diff < expected_perf_diff)
self.assertGreater(
max_perf_diff, expected_perf_diff,
f"Max performance difference > {expected_perf_diff}")
self.log.info("Min perf diff %s < %s", min_perf_diff, expected_perf_diff)
self.assertTrue(min_perf_diff < expected_perf_diff)
self.assertGreater(
min_perf_diff, expected_perf_diff,
f"Min performance difference > {expected_perf_diff}")
self.log.info("Mean perf diff %s < %s", mean_perf_diff, expected_perf_diff)
self.assertTrue(mean_perf_diff < expected_perf_diff)
self.assertGreater(
mean_perf_diff, expected_perf_diff,
f"Mean performance difference > {expected_perf_diff}")
4 changes: 2 additions & 2 deletions src/tests/ftest/util/nvme_utils.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
"""
(C) Copyright 2020-2024 Intel Corporation.
(C) Copyright 2025 Hewlett Packard Enterprise Development LP
(C) Copyright 2025-2026 Hewlett Packard Enterprise Development LP

SPDX-License-Identifier: BSD-2-Clause-Patent
"""
Expand Down Expand Up @@ -192,7 +192,7 @@ def start_ior_thread(self, create_cont, operation, percent, storage_type, log_fi
# Created new container or use the existing container for reading
if create_cont:
self.create_container()
self.ior_local_cmd.dfs_cont.update(self.nvme_local_cont.uuid)
self.ior_local_cmd.dfs_cont.update(self.nvme_local_cont.identifier)

# Define the job manager for the IOR command
job_manager_main = get_job_manager(self, "Mpirun", self.ior_local_cmd, mpi_type="mpich")
Expand Down
Loading