Skip to content

Commit 0b805fd

Browse files
authored
Increase cool_down_time_seconds, warm_up_time_seconds and ntttcp execution time If ncpu > 64. (#4528)
* If ncpu > 64, increase cool_down_time_seconds and warm_up_time_seconds to 5, and set ntttcp execution time to 120s. On large VMs (>64 CPUs) the default 10s ntttcp run is too short for throughput to stabilize across all queues, leading to noisy results. Use a 120s run time on these SKUs and keep the default 10s elsewhere to avoid lengthening every test. * copilot comment fixes * Update common.py --------- Co-authored-by: Srikanth Myakam <374767+SRIKKANTH@users.noreply.github.com>
1 parent 2bd7540 commit 0b805fd

1 file changed

Lines changed: 19 additions & 1 deletion

File tree

  • lisa/microsoft/testsuites/performance

lisa/microsoft/testsuites/performance/common.py

Lines changed: 19 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -473,6 +473,14 @@ def perf_ntttcp( # noqa: C901
473473
)
474474
dev_differentiator = "Hypervisor callback interrupts"
475475
max_server_threads = 64
476+
# On large VMs (>64 CPUs) the default 10s ntttcp run is too short for
477+
# throughput to stabilize across all queues, leading to noisy results.
478+
# Use a 120s run time on these SKUs and keep the default 10s elsewhere
479+
# to avoid lengthening every test.
480+
client_core_count = client.tools[Lscpu].get_thread_count()
481+
run_time_seconds = 120 if client_core_count > 64 else 10
482+
warm_up_time_seconds = 5 if client_core_count > 64 else 1
483+
cool_down_time_seconds = 5 if client_core_count > 64 else 1
476484
perf_ntttcp_message_list: List[
477485
Union[NetworkTCPPerformanceMessage, NetworkUDPPerformanceMessage]
478486
] = []
@@ -546,14 +554,21 @@ def perf_ntttcp( # noqa: C901
546554
dev_differentiator=dev_differentiator,
547555
udp_mode=udp_mode,
548556
no_debug_log=True,
557+
run_time_seconds=run_time_seconds,
558+
cool_down_time_seconds=cool_down_time_seconds,
559+
warm_up_time_seconds=warm_up_time_seconds,
549560
)
550561

551562
# Start lagscope client to measure latency during the
552563
# ntttcp test
553564
client_lagscope_process = client_lagscope.run_as_client_async(
554565
server_ip=server.internal_address,
555566
ping_count=0,
556-
run_time_seconds=10,
567+
run_time_seconds=(
568+
run_time_seconds
569+
+ cool_down_time_seconds
570+
+ warm_up_time_seconds
571+
),
557572
print_histogram=False,
558573
print_percentile=False,
559574
histogram_1st_interval_start_value=0,
@@ -571,6 +586,9 @@ def perf_ntttcp( # noqa: C901
571586
buffer_size=buffer_size,
572587
threads_count=num_threads_n,
573588
ports_count=num_threads_p,
589+
run_time_seconds=run_time_seconds,
590+
cool_down_time_seconds=cool_down_time_seconds,
591+
warm_up_time_seconds=warm_up_time_seconds,
574592
dev_differentiator=dev_differentiator,
575593
udp_mode=udp_mode,
576594
tolerance_seconds=client_ntttcp_timeout_tolerance_seconds,

0 commit comments

Comments
 (0)