Last active
October 30, 2025 09:32
-
-
Save roman-shuhov/428cdd881dba6890ba9c010704959ba4 to your computer and use it in GitHub Desktop.
TCP vs MPTCP+0 vs MPTCP+1 with 1M window and "perf record"
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| ## TCP | |
| ``` | |
| [ 5] 0.00-30.00 sec 174 GBytes 49.7 Gbits/sec 0 sender | |
| ``` | |
| ``` | |
| 41.44% iperf3 [kernel.kallsyms] [k] _copy_from_iter | |
| 13.57% iperf3 [kernel.kallsyms] [k] tcp_sendmsg | |
| 4.16% iperf3 [kernel.kallsyms] [k] _raw_spin_lock | |
| 3.95% iperf3 [kernel.kallsyms] [k] __alloc_pages_noprof | |
| 3.25% iperf3 [kernel.kallsyms] [k] mlx5e_txwqe_complete | |
| 2.85% iperf3 [kernel.kallsyms] [k] skb_clone | |
| 2.70% iperf3 [kernel.kallsyms] [k] tcp_ack | |
| 1.78% iperf3 [kernel.kallsyms] [k] queued_spin_lock_slowpath | |
| 1.75% iperf3 [kernel.kallsyms] [k] __kfree_skb | |
| 1.60% iperf3 [kernel.kallsyms] [k] tcp_write_xmit | |
| 1.55% iperf3 [kernel.kallsyms] [k] mem_cgroup_charge_skmem | |
| 1.45% iperf3 [kernel.kallsyms] [k] sk_page_frag_refill | |
| 1.00% iperf3 [kernel.kallsyms] [k] kmem_cache_alloc_node_noprof | |
| 0.93% iperf3 [kernel.kallsyms] [k] free_unref_page | |
| 0.75% iperf3 [kernel.kallsyms] [k] __alloc_skb | |
| 0.69% iperf3 bpf_prog_... [k] bpf_prog_... | |
| 0.62% iperf3 [kernel.kallsyms] [k] ip6_xmit | |
| 0.60% iperf3 [kernel.kallsyms] [k] __htab_map_lookup_elem.llvm.5951019846955005645 | |
| 0.59% iperf3 [kernel.kallsyms] [k] __memcg_slab_free_hook | |
| 0.58% iperf3 [kernel.kallsyms] [k] rb_erase | |
| 0.57% iperf3 [kernel.kallsyms] [k] page_counter_try_charge | |
| 0.56% iperf3 [kernel.kallsyms] [k] kmem_cache_free | |
| 0.52% iperf3 [kernel.kallsyms] [k] _raw_spin_lock_irqsave | |
| 0.44% iperf3 [kernel.kallsyms] [k] skb_gso_validate_network_len | |
| 0.41% iperf3 [kernel.kallsyms] [k] __tcp_push_pending_frames | |
| 0.37% iperf3 [kernel.kallsyms] [k] _raw_spin_lock_bh | |
| 0.35% iperf3 [kernel.kallsyms] [k] mod_timer | |
| 0.34% iperf3 [kernel.kallsyms] [k] tcp_rcv_established | |
| 0.34% iperf3 [kernel.kallsyms] [k] __sk_mem_schedule | |
| 0.30% iperf3 [kernel.kallsyms] [k] __dev_queue_xmit | |
| 0.29% iperf3 bpf_prog_... [k] bpf_prog_... | |
| 0.28% iperf3 [kernel.kallsyms] [k] _raw_spin_trylock | |
| 0.26% iperf3 [kernel.kallsyms] [k] page_counter_uncharge | |
| 0.25% iperf3 [kernel.kallsyms] [k] bpf_sk_storage_get | |
| ``` | |
| ## MPTCP no subflows | |
| ``` | |
| [ 5] 0.00-30.00 sec 148 GBytes 42.3 Gbits/sec 0 sender | |
| ``` | |
| ``` | |
| 33.71% iperf3 [kernel.kallsyms] [k] _copy_from_iter | |
| 10.77% iperf3 [kernel.kallsyms] [k] queued_spin_lock_slowpath | |
| 7.06% iperf3 [kernel.kallsyms] [k] mptcp_sendmsg | |
| 3.31% iperf3 [kernel.kallsyms] [k] __alloc_pages_noprof | |
| 3.27% iperf3 [kernel.kallsyms] [k] mptcp_sendmsg_frag | |
| 2.68% iperf3 [kernel.kallsyms] [k] tcp_ack | |
| 2.29% iperf3 [kernel.kallsyms] [k] _raw_spin_lock | |
| 2.20% iperf3 [kernel.kallsyms] [k] __kfree_skb | |
| 1.91% iperf3 [kernel.kallsyms] [k] dfrag_clear | |
| 1.68% iperf3 [kernel.kallsyms] [k] free_unref_page | |
| 1.64% iperf3 [kernel.kallsyms] [k] mem_cgroup_charge_skmem | |
| 1.60% iperf3 [kernel.kallsyms] [k] kmem_cache_free | |
| 1.49% iperf3 [kernel.kallsyms] [k] __tcp_push_pending_frames | |
| 1.44% iperf3 [kernel.kallsyms] [k] mlx5e_txwqe_complete | |
| 1.11% iperf3 [kernel.kallsyms] [k] __skb_ext_put | |
| 1.09% iperf3 [kernel.kallsyms] [k] skb_page_frag_refill | |
| 1.09% iperf3 [kernel.kallsyms] [k] tcp_rcv_established | |
| 1.06% iperf3 [kernel.kallsyms] [k] skb_clone | |
| 0.99% iperf3 [kernel.kallsyms] [k] __memcg_slab_free_hook | |
| 0.84% iperf3 [kernel.kallsyms] [k] __release_sock | |
| 0.82% iperf3 [kernel.kallsyms] [k] __alloc_skb | |
| 0.76% iperf3 [kernel.kallsyms] [k] page_counter_try_charge | |
| 0.73% iperf3 [kernel.kallsyms] [k] _raw_spin_lock_bh | |
| 0.64% iperf3 [kernel.kallsyms] [k] mptcp_established_options | |
| 0.64% iperf3 [kernel.kallsyms] [k] ip6_xmit | |
| 0.59% iperf3 [kernel.kallsyms] [k] mem_cgroup_uncharge_skmem | |
| 0.59% iperf3 [kernel.kallsyms] [k] kmem_cache_alloc_node_noprof | |
| 0.58% iperf3 [kernel.kallsyms] [k] _raw_spin_lock_irqsave | |
| 0.57% iperf3 [kernel.kallsyms] [k] __sk_mem_schedule | |
| 0.51% iperf3 bpf_prog_... [k] bpf_prog_... | |
| 0.47% iperf3 [kernel.kallsyms] [k] rb_erase | |
| 0.46% iperf3 [kernel.kallsyms] [k] mptcp_subflow_get_send | |
| 0.40% iperf3 [kernel.kallsyms] [k] __folio_put | |
| 0.38% iperf3 [kernel.kallsyms] [k] __subflow_push_pending | |
| ``` | |
| ## MPTCP 1 subflow | |
| ``` | |
| [ 5] 0.00-10.00 sec 47.0 GBytes 40.4 Gbits/sec 0 sender | |
| ``` | |
| ``` | |
| 34.55% iperf3 [kernel.kallsyms] [k] _copy_from_iter | |
| 11.24% iperf3 [kernel.kallsyms] [k] queued_spin_lock_slowpath | |
| 6.60% iperf3 [kernel.kallsyms] [k] mptcp_sendmsg | |
| 4.45% iperf3 [kernel.kallsyms] [k] __alloc_pages_noprof | |
| 2.95% iperf3 [kernel.kallsyms] [k] mptcp_sendmsg_frag | |
| 1.77% iperf3 [kernel.kallsyms] [k] dfrag_clear | |
| 1.76% iperf3 [kernel.kallsyms] [k] skb_page_frag_refill | |
| 1.76% iperf3 [kernel.kallsyms] [k] mem_cgroup_charge_skmem | |
| 1.59% iperf3 [kernel.kallsyms] [k] free_unref_page | |
| 1.27% iperf3 [kernel.kallsyms] [k] __tcp_push_pending_frames | |
| 1.18% iperf3 [kernel.kallsyms] [k] __alloc_skb | |
| 1.13% iperf3 [kernel.kallsyms] [k] __dev_queue_xmit | |
| 1.13% iperf3 [kernel.kallsyms] [k] tcp_ack | |
| 1.08% iperf3 [kernel.kallsyms] [k] skb_clone | |
| 1.07% iperf3 [kernel.kallsyms] [k] mlx5e_txwqe_complete | |
| 1.04% iperf3 [kernel.kallsyms] [k] mptcp_subflow_get_send | |
| 1.02% iperf3 [kernel.kallsyms] [k] kmem_cache_free | |
| 0.97% iperf3 [kernel.kallsyms] [k] _raw_spin_lock | |
| 0.94% iperf3 [kernel.kallsyms] [k] mptcp_established_options | |
| 0.90% iperf3 [kernel.kallsyms] [k] _raw_spin_lock_bh | |
| 0.89% iperf3 [kernel.kallsyms] [k] __kfree_skb | |
| 0.89% iperf3 [kernel.kallsyms] [k] kmem_cache_alloc_node_noprof | |
| 0.86% iperf3 [kernel.kallsyms] [k] page_counter_try_charge | |
| 0.71% iperf3 [kernel.kallsyms] [k] _raw_spin_lock_irqsave | |
| 0.68% iperf3 [kernel.kallsyms] [k] __memcg_slab_free_hook | |
| 0.68% iperf3 [kernel.kallsyms] [k] ip6_xmit | |
| 0.64% iperf3 [kernel.kallsyms] [k] __subflow_push_pending | |
| 0.58% iperf3 [kernel.kallsyms] [k] __sk_mem_schedule | |
| 0.53% iperf3 [kernel.kallsyms] [k] kmem_cache_alloc_noprof | |
| 0.49% iperf3 [kernel.kallsyms] [k] __skb_ext_put | |
| 0.42% iperf3 [kernel.kallsyms] [k] mem_cgroup_uncharge_skmem | |
| 0.39% iperf3 [kernel.kallsyms] [k] _raw_spin_trylock | |
| 0.38% iperf3 [kernel.kallsyms] [k] tcp_current_mss | |
| 0.36% iperf3 [kernel.kallsyms] [k] mptcp_sched_get_send | |
| ``` |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment