Skip to content

Increase cool_down_time_seconds, warm_up_time_seconds and ntttcp execution time If ncpu > 64.#4528

Merged
LiliDeng merged 3 commits into
mainfrom
smyakam/26_05_05/ntttcp_duration_increase
Jun 25, 2026
Merged

Increase cool_down_time_seconds, warm_up_time_seconds and ntttcp execution time If ncpu > 64.#4528
LiliDeng merged 3 commits into
mainfrom
smyakam/26_05_05/ntttcp_duration_increase

Conversation

@SRIKKANTH

Copy link
Copy Markdown
Collaborator

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.

Description

Related Issue

Type of Change

  • Bug fix
  • New feature
  • Breaking change
  • Refactoring
  • Documentation update

Checklist

  • Description is filled in above
  • No credentials, secrets, or internal details are included
  • Peer review requested (if not, add required peer reviewers after raising PR)
  • Tests executed and results posted below

Test Validation

Key Test Cases:

Impacted LISA Features:

Tested Azure Marketplace Images:

  • Canonical 0001-com-ubuntu-server-jammy 22_04-lts-gen2 latest

Test Results

Image VM Size Result
Canonical 0001-com-ubuntu-server-jammy 22_04-lts-gen2 latest Standard_L160ias_v5 PASSED / FAILED / SKIPPED

…s 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.
@SRIKKANTH SRIKKANTH requested a review from lubaihua33 as a code owner June 12, 2026 17:50
Copilot AI review requested due to automatic review settings June 12, 2026 17:50
@SRIKKANTH SRIKKANTH requested a review from umfranci June 12, 2026 17:53

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the ntttcp performance helper to use longer warm-up/cool-down periods and a longer ntttcp duration on large VMs, aiming to reduce throughput noise on high core-count SKUs.

Changes:

  • Detect “large VM” based on CPU count and increase ntttcp duration from 10s to 120s when above the threshold.
  • Increase ntttcp warm-up and cool-down times from 1s to 5s on those larger VMs.
  • Plumb the warm-up/cool-down/run-time parameters into the ntttcp client/server invocations.

Comment on lines +480 to +483
client_core_count = client.tools[Lscpu].get_core_count()
run_time_seconds = 120 if client_core_count > 64 else 10
warm_up_time_seconds = 5 if client_core_count > 64 else 1
cool_down_time_seconds = 5 if client_core_count > 64 else 1
Comment on lines 545 to 559
server_result = server_ntttcp.run_as_server_async(
server_nic_name,
server_ip=(
server.internal_address
if isinstance(server.os, BSD)
else ""
),
ports_count=num_threads_p,
buffer_size=buffer_size,
dev_differentiator=dev_differentiator,
udp_mode=udp_mode,
no_debug_log=True,
cool_down_time_seconds=cool_down_time_seconds,
warm_up_time_seconds=warm_up_time_seconds,
)

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed

@github-actions

Copy link
Copy Markdown

⚠️ AI Test Selection — cancelled

65 test case(s) selected (view run)

Marketplace image: canonical 0001-com-ubuntu-server-jammy 22_04-lts-gen2 latest

Count
✅ Passed 12
❌ Failed 0
⏭️ Skipped 15
Total 27
Test case details
Test Case Status Time (s) Message
perf_tcp_iperf_passthrough_host_guest (lisa_0_35) ⏭️ SKIPPED 0.000 requires [azure] but VM supports [cloud-hypervisor, hyperv]
perf_udp_iperf_passthrough_host_guest (lisa_0_36) ⏭️ SKIPPED 0.000 requires [azure] but VM supports [cloud-hypervisor, hyperv]
perf_tcp_single_pps_passthrough_host_guest (lisa_0_37) ⏭️ SKIPPED 0.000 requires [azure] but VM supports [cloud-hypervisor, hyperv]
perf_tcp_max_pps_passthrough_host_guest (lisa_0_38) ⏭️ SKIPPED 0.000 requires [azure] but VM supports [cloud-hypervisor, hyperv]
perf_tcp_ntttcp_passthrough_host_guest (lisa_0_39) ⏭️ SKIPPED 0.000 requires [azure] but VM supports [cloud-hypervisor, hyperv]
perf_udp_1k_ntttcp_passthrough_host_guest (lisa_0_40) ⏭️ SKIPPED 0.000 requires [azure] but VM supports [cloud-hypervisor, hyperv]
perf_tcp_iperf_passthrough_two_guest (lisa_0_41) ⏭️ SKIPPED 0.000 requires [azure] but VM supports [cloud-hypervisor, hyperv]
perf_udp_iperf_passthrough_two_guest (lisa_0_42) ⏭️ SKIPPED 0.000 requires [azure] but VM supports [cloud-hypervisor, hyperv]
perf_tcp_single_pps_passthrough_two_guest (lisa_0_43) ⏭️ SKIPPED 0.000 requires [azure] but VM supports [cloud-hypervisor, hyperv]
perf_tcp_max_pps_passthrough_two_guest (lisa_0_44) ⏭️ SKIPPED 0.000 requires [azure] but VM supports [cloud-hypervisor, hyperv]
perf_tcp_ntttcp_passthrough_two_guest (lisa_0_45) ⏭️ SKIPPED 0.000 requires [azure] but VM supports [cloud-hypervisor, hyperv]
perf_udp_1k_ntttcp_passthrough_two_guest (lisa_0_46) ⏭️ SKIPPED 0.000 requires [azure] but VM supports [cloud-hypervisor, hyperv]
perf_nvme_io_uring (lisa_0_1) ✅ PASSED 5344.889
perf_epoll (lisa_0_11) ✅ PASSED 187.676
perf_messaging (lisa_0_10) ✅ PASSED 2111.893
perf_nested_hyperv_storage_singledisk (lisa_0_4) ⏭️ SKIPPED 0.000 check skipped: OS type mismatch: ["requires [<class 'lisa.operating_system.Windows'>] but VM supports [<class 'lisa.oper
perf_nested_kvm_storage_singledisk (lisa_0_2) ✅ PASSED 5642.951
perf_nested_hyperv_storage_multidisk (lisa_0_5) ⏭️ SKIPPED 0.000 check skipped: OS type mismatch: ["requires [<class 'lisa.operating_system.Windows'>] but VM supports [<class 'lisa.oper
perf_nested_hyperv_ntttcp_different_l1_nat (lisa_0_8) ⏭️ SKIPPED 0.000 check skipped: OS type mismatch: ["requires [<class 'lisa.operating_system.Windows'>] but VM supports [<class 'lisa.oper
perf_resource_disk_1024k (lisa_0_55) ✅ PASSED 1622.366
perf_resource_disk_4k (lisa_0_56) ✅ PASSED 4417.976
perf_ultra_datadisks_1024k (lisa_0_48) ✅ PASSED 1059.565
perf_storage_generic_fio_test (lisa_0_64) ✅ PASSED 4485.996
perf_ultra_datadisks_4k (lisa_0_47) ✅ PASSED 4376.831
perf_tcp_latency_sriov (lisa_0_13) ✅ PASSED 193.401
perf_tcp_single_pps_sriov (lisa_0_15) ✅ PASSED 179.962
perf_tcp_max_pps_sriov (lisa_0_17) ✅ PASSED 147.524

@github-actions

Copy link
Copy Markdown

⚠️ AI Test Selection — cancelled

65 test case(s) selected (view run)

Marketplace image: canonical 0001-com-ubuntu-server-jammy 22_04-lts-gen2 latest

Count
✅ Passed 12
❌ Failed 0
⏭️ Skipped 15
Total 27
Test case details
Test Case Status Time (s) Message
perf_tcp_iperf_passthrough_host_guest (lisa_0_35) ⏭️ SKIPPED 0.000 requires [azure] but VM supports [hyperv, cloud-hypervisor]
perf_udp_iperf_passthrough_host_guest (lisa_0_36) ⏭️ SKIPPED 0.000 requires [azure] but VM supports [hyperv, cloud-hypervisor]
perf_tcp_single_pps_passthrough_host_guest (lisa_0_37) ⏭️ SKIPPED 0.000 requires [azure] but VM supports [hyperv, cloud-hypervisor]
perf_tcp_max_pps_passthrough_host_guest (lisa_0_38) ⏭️ SKIPPED 0.000 requires [azure] but VM supports [hyperv, cloud-hypervisor]
perf_tcp_ntttcp_passthrough_host_guest (lisa_0_39) ⏭️ SKIPPED 0.000 requires [azure] but VM supports [hyperv, cloud-hypervisor]
perf_udp_1k_ntttcp_passthrough_host_guest (lisa_0_40) ⏭️ SKIPPED 0.000 requires [azure] but VM supports [hyperv, cloud-hypervisor]
perf_tcp_iperf_passthrough_two_guest (lisa_0_41) ⏭️ SKIPPED 0.000 requires [azure] but VM supports [hyperv, cloud-hypervisor]
perf_udp_iperf_passthrough_two_guest (lisa_0_42) ⏭️ SKIPPED 0.000 requires [azure] but VM supports [hyperv, cloud-hypervisor]
perf_tcp_single_pps_passthrough_two_guest (lisa_0_43) ⏭️ SKIPPED 0.000 requires [azure] but VM supports [hyperv, cloud-hypervisor]
perf_tcp_max_pps_passthrough_two_guest (lisa_0_44) ⏭️ SKIPPED 0.000 requires [azure] but VM supports [hyperv, cloud-hypervisor]
perf_tcp_ntttcp_passthrough_two_guest (lisa_0_45) ⏭️ SKIPPED 0.000 requires [azure] but VM supports [hyperv, cloud-hypervisor]
perf_udp_1k_ntttcp_passthrough_two_guest (lisa_0_46) ⏭️ SKIPPED 0.000 requires [azure] but VM supports [hyperv, cloud-hypervisor]
perf_nested_hyperv_storage_singledisk (lisa_0_4) ⏭️ SKIPPED 0.000 check skipped: OS type mismatch: ["requires [<class 'lisa.operating_system.Windows'>] but VM supports [<class 'lisa.oper
perf_nested_kvm_storage_singledisk (lisa_0_2) ✅ PASSED 5472.640
perf_nested_hyperv_storage_multidisk (lisa_0_5) ⏭️ SKIPPED 0.000 check skipped: OS type mismatch: ["requires [<class 'lisa.operating_system.Windows'>] but VM supports [<class 'lisa.oper
perf_nested_hyperv_ntttcp_different_l1_nat (lisa_0_8) ⏭️ SKIPPED 0.000 check skipped: OS type mismatch: ["requires [<class 'lisa.operating_system.Windows'>] but VM supports [<class 'lisa.oper
perf_nvme_io_uring (lisa_0_1) ✅ PASSED 5338.601
perf_epoll (lisa_0_11) ✅ PASSED 194.906
perf_messaging (lisa_0_10) ✅ PASSED 2038.656
perf_resource_disk_1024k (lisa_0_55) ✅ PASSED 1613.694
perf_resource_disk_4k (lisa_0_56) ✅ PASSED 4421.172
perf_ultra_datadisks_1024k (lisa_0_48) ✅ PASSED 1066.630
perf_storage_generic_fio_test (lisa_0_64) ✅ PASSED 4424.029
perf_ultra_datadisks_4k (lisa_0_47) ✅ PASSED 4378.893
perf_tcp_latency_sriov (lisa_0_13) ✅ PASSED 195.285
perf_tcp_single_pps_sriov (lisa_0_15) ✅ PASSED 178.924
perf_tcp_max_pps_sriov (lisa_0_17) ✅ PASSED 147.048

run_time_seconds = 120 if client_core_count > 64 else 10
warm_up_time_seconds = 5 if client_core_count > 64 else 1
cool_down_time_seconds = 5 if client_core_count > 64 else 1
perf_ntttcp_message_list: List[

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please also change the for

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed

Copilot AI review requested due to automatic review settings June 18, 2026 12:43

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Copilot reviewed 1 out of 1 changed files in this pull request and generated 2 comments.

Comment on lines +480 to +483
client_core_count = client.tools[Lscpu].get_thread_count()
run_time_seconds = 120 if client_core_count > 64 else 10
warm_up_time_seconds = 5 if client_core_count > 64 else 1
cool_down_time_seconds = 5 if client_core_count > 64 else 1
Comment on lines 564 to +571
client_lagscope_process = client_lagscope.run_as_client_async(
server_ip=server.internal_address,
ping_count=0,
run_time_seconds=10,
run_time_seconds=(
run_time_seconds
+ cool_down_time_seconds
+ warm_up_time_seconds
),
@github-actions

Copy link
Copy Markdown

⚠️ AI Test Selection — cancelled

65 test case(s) selected (view run)

Marketplace image: canonical 0001-com-ubuntu-server-jammy 22_04-lts-gen2 latest

Count
✅ Passed 14
❌ Failed 1
⏭️ Skipped 15
Total 30
Test case details
Test Case Status Time (s) Message
perf_tcp_iperf_passthrough_host_guest (lisa_0_35) ⏭️ SKIPPED 0.000 requires [azure] but VM supports [cloud-hypervisor, hyperv]
perf_udp_iperf_passthrough_host_guest (lisa_0_36) ⏭️ SKIPPED 0.000 requires [azure] but VM supports [cloud-hypervisor, hyperv]
perf_tcp_single_pps_passthrough_host_guest (lisa_0_37) ⏭️ SKIPPED 0.000 requires [azure] but VM supports [cloud-hypervisor, hyperv]
perf_tcp_max_pps_passthrough_host_guest (lisa_0_38) ⏭️ SKIPPED 0.000 requires [azure] but VM supports [cloud-hypervisor, hyperv]
perf_tcp_ntttcp_passthrough_host_guest (lisa_0_39) ⏭️ SKIPPED 0.000 requires [azure] but VM supports [cloud-hypervisor, hyperv]
perf_udp_1k_ntttcp_passthrough_host_guest (lisa_0_40) ⏭️ SKIPPED 0.000 requires [azure] but VM supports [cloud-hypervisor, hyperv]
perf_tcp_iperf_passthrough_two_guest (lisa_0_41) ⏭️ SKIPPED 0.000 requires [azure] but VM supports [cloud-hypervisor, hyperv]
perf_udp_iperf_passthrough_two_guest (lisa_0_42) ⏭️ SKIPPED 0.000 requires [azure] but VM supports [cloud-hypervisor, hyperv]
perf_tcp_single_pps_passthrough_two_guest (lisa_0_43) ⏭️ SKIPPED 0.000 requires [azure] but VM supports [cloud-hypervisor, hyperv]
perf_tcp_max_pps_passthrough_two_guest (lisa_0_44) ⏭️ SKIPPED 0.000 requires [azure] but VM supports [cloud-hypervisor, hyperv]
perf_tcp_ntttcp_passthrough_two_guest (lisa_0_45) ⏭️ SKIPPED 0.000 requires [azure] but VM supports [cloud-hypervisor, hyperv]
perf_udp_1k_ntttcp_passthrough_two_guest (lisa_0_46) ⏭️ SKIPPED 0.000 requires [azure] but VM supports [cloud-hypervisor, hyperv]
perf_epoll (lisa_0_11) ✅ PASSED 195.315
perf_messaging (lisa_0_10) ✅ PASSED 2094.082
perf_nvme_io_uring (lisa_0_1) ✅ PASSED 5346.331
perf_nested_hyperv_storage_singledisk (lisa_0_4) ⏭️ SKIPPED 0.000 check skipped: OS type mismatch: ["requires [<class 'lisa.operating_system.Windows'>] but VM supports [<class 'lisa.oper
perf_nested_kvm_storage_singledisk (lisa_0_2) ✅ PASSED 5480.947
perf_nested_hyperv_storage_multidisk (lisa_0_5) ⏭️ SKIPPED 0.000 check skipped: OS type mismatch: ["requires [<class 'lisa.operating_system.Windows'>] but VM supports [<class 'lisa.oper
perf_nested_hyperv_ntttcp_different_l1_nat (lisa_0_8) ⏭️ SKIPPED 0.000 check skipped: OS type mismatch: ["requires [<class 'lisa.operating_system.Windows'>] but VM supports [<class 'lisa.oper
perf_resource_disk_1024k (lisa_0_55) ✅ PASSED 1623.212
perf_resource_disk_4k (lisa_0_56) ✅ PASSED 4420.231
perf_ultra_datadisks_1024k (lisa_0_48) ✅ PASSED 1069.842
perf_premiumv2_datadisks_1024k (lisa_0_50) ❌ FAILED 0.000 deployment cannot connect to TCP port: [20.171.8.241:22], error code: 110
perf_storage_generic_fio_test (lisa_0_64) ✅ PASSED 4473.677
perf_ultra_datadisks_4k (lisa_0_47) ✅ PASSED 4381.924
perf_tcp_latency_sriov (lisa_0_13) ✅ PASSED 212.386
perf_tcp_single_pps_sriov (lisa_0_15) ✅ PASSED 179.826
perf_tcp_max_pps_sriov (lisa_0_17) ✅ PASSED 149.758
perf_tcp_latency_synthetic (lisa_0_12) ✅ PASSED 321.915
perf_tcp_ntttcp_128_connections_synthetic (lisa_0_18) ✅ PASSED 58.529

@LiliDeng LiliDeng merged commit 0b805fd into main Jun 25, 2026
61 of 62 checks passed
@LiliDeng LiliDeng deleted the smyakam/26_05_05/ntttcp_duration_increase branch June 25, 2026 15:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants