Greeting, FYI, we noticed a 4.7% improvement of will-it-scale.per_thread_ops due to commit: commit: 0587211dff7d736ba1836ee2382c0d14a18eee8b ("[PATCH v2] fs: Do not check if there is a fsnotify watcher on pseudo inodes") url: https://github.com/0day-ci/linux/commits/Mel-Gorman/fs-Do-not-check-if-there-is-a-fsnotify-watcher-on-pseudo-inodes/20200615-201557 base: https://git.kernel.org/cgit/linux/kernel/git/jack/linux-fs.git for_next in testcase: will-it-scale on test machine: 104 threads Skylake with 192G memory with following parameters: nr_task: 100% mode: thread test: unix1 cpufreq_governor: performance ucode: 0x2000065 test-description: Will It Scale takes a testcase and runs it from 1 through to n parallel copies to see if the testcase will scale. It builds both a process and threads based test in order to see any differences between the two. test-url: https://github.com/antonblanchard/will-it-scale Details are as below: --------------------------------------------------------------------------------------------------> To reproduce: git clone https://github.com/intel/lkp-tests.git cd lkp-tests bin/lkp install job.yaml # job file is attached in this email bin/lkp run job.yaml ========================================================================================= compiler/cpufreq_governor/kconfig/mode/nr_task/rootfs/tbox_group/test/testcase/ucode: gcc-9/performance/x86_64-rhel-7.6/thread/100%/debian-x86_64-20191114.cgz/lkp-skl-fpga01/unix1/will-it-scale/0x2000065 commit: a68f93d90f ("Pull writeback fixes from me.") 0587211dff ("fs: Do not check if there is a fsnotify watcher on pseudo inodes") a68f93d90fbb3eac 0587211dff7d736ba1836ee2382 ---------------- --------------------------- %stddev %change %stddev \ | \ 353336 +4.7% 370075 will-it-scale.per_thread_ops 36747013 +4.7% 38487901 will-it-scale.workload 18609905 ± 18% +391.6% 91493452 ± 49% cpuidle.C6.time 287.33 ± 19% +237.4% 969.50 ± 88% interrupts.39:PCI-MSI.67633154-edge.eth0-TxRx-1 287.33 ± 19% +237.4% 969.50 ± 88% interrupts.CPU31.39:PCI-MSI.67633154-edge.eth0-TxRx-1 317.00 +18.6% 376.00 ± 17% interrupts.CPU32.RES:Rescheduling_interrupts 315.33 +27.9% 403.25 ± 8% interrupts.CPU93.RES:Rescheduling_interrupts 44802 ± 4% +9.3% 48949 ± 6% interrupts.RES:Rescheduling_interrupts 19852 ± 3% +12.7% 22383 ± 9% softirqs.CPU26.RCU 19479 ± 2% +14.7% 22352 ± 11% softirqs.CPU28.RCU 19358 ± 4% +20.2% 23260 ± 17% softirqs.CPU29.RCU 21107 ± 3% +20.1% 25345 ± 12% softirqs.CPU30.RCU 19896 ± 2% +14.2% 22727 ± 10% softirqs.CPU45.RCU 20389 ± 2% +13.5% 23141 ± 9% softirqs.CPU46.RCU 20482 ± 3% +12.9% 23120 ± 8% softirqs.CPU48.RCU 20236 ± 2% +14.4% 23145 ± 8% softirqs.CPU49.RCU 20639 ± 4% +11.9% 23090 ± 9% softirqs.CPU50.RCU 23600 ± 5% +14.4% 27000 ± 17% softirqs.CPU53.RCU 21597 ± 9% +11.4% 24065 ± 9% softirqs.CPU58.RCU 20526 ± 4% +20.5% 24730 ± 21% softirqs.CPU84.RCU 1705 ± 36% +2544.4% 45086 ±158% softirqs.NET_RX 209573 ± 2% +11.0% 232702 ± 3% sched_debug.cfs_rq:/.min_vruntime.stddev 1.04 ± 69% -80.6% 0.20 ±118% sched_debug.cfs_rq:/.removed.util_avg.avg 54.78 ± 43% -74.1% 14.21 ±126% sched_debug.cfs_rq:/.removed.util_avg.max 7.02 ± 51% -76.1% 1.68 ±122% sched_debug.cfs_rq:/.removed.util_avg.stddev -268439 +45.6% -390861 sched_debug.cfs_rq:/.spread0.min 209456 ± 2% +11.0% 232570 ± 3% sched_debug.cfs_rq:/.spread0.stddev 568.94 ± 15% -43.3% 322.54 ± 46% sched_debug.cfs_rq:/.util_est_enqueued.min 60.15 ± 23% +99.1% 119.73 ± 26% sched_debug.cfs_rq:/.util_est_enqueued.stddev 1248676 ± 9% -16.1% 1047508 ± 4% sched_debug.cpu.avg_idle.max 367.73 ± 12% +13.5% 417.33 ± 7% sched_debug.cpu.curr->pid.stddev 0.00 ± 8% +14.3% 0.00 sched_debug.cpu.next_balance.stddev 57.06 ± 30% +114.5% 122.38 ± 52% sched_debug.cpu.nr_uninterruptible.max 11.05 ± 10% +45.1% 16.03 ± 28% sched_debug.cpu.nr_uninterruptible.stddev 507.76 ± 5% -10.6% 453.86 ± 8% sched_debug.cpu.ttwu_local.stddev 0.04 ± 2% +31.1% 0.05 ± 15% perf-stat.i.MPKI 1.73 +0.1 1.83 perf-stat.i.branch-miss-rate% 5.616e+08 +4.9% 5.892e+08 perf-stat.i.branch-misses 1.70 +3.0% 1.75 perf-stat.i.cpi 0.15 +0.0 0.17 perf-stat.i.dTLB-load-miss-rate% 73298848 +4.7% 76755803 perf-stat.i.dTLB-load-misses 4.755e+10 -3.1% 4.607e+10 perf-stat.i.dTLB-loads 3.059e+10 -5.3% 2.897e+10 perf-stat.i.dTLB-stores 73905481 +6.6% 78759329 perf-stat.i.iTLB-load-misses 1.638e+11 -2.9% 1.591e+11 perf-stat.i.instructions 2363 -11.5% 2091 perf-stat.i.instructions-per-iTLB-miss 0.59 -2.9% 0.57 perf-stat.i.ipc 1065 -3.0% 1033 perf-stat.i.metric.M/sec 84983 +3.7% 88116 perf-stat.i.node-load-misses 16159 +6.2% 17155 ± 2% perf-stat.i.node-store-misses 1.72 +0.1 1.81 perf-stat.overall.branch-miss-rate% 1.70 +3.0% 1.76 perf-stat.overall.cpi 0.15 +0.0 0.17 perf-stat.overall.dTLB-load-miss-rate% 0.00 +0.0 0.00 ± 2% perf-stat.overall.dTLB-store-miss-rate% 2216 -8.9% 2019 perf-stat.overall.instructions-per-iTLB-miss 0.59 -2.9% 0.57 perf-stat.overall.ipc 80.27 +0.8 81.05 perf-stat.overall.node-store-miss-rate% 1342269 -7.3% 1243635 perf-stat.overall.path-length 5.597e+08 +4.9% 5.872e+08 perf-stat.ps.branch-misses 73052936 +4.7% 76497456 perf-stat.ps.dTLB-load-misses 4.739e+10 -3.1% 4.591e+10 perf-stat.ps.dTLB-loads 3.048e+10 -5.3% 2.887e+10 perf-stat.ps.dTLB-stores 73695142 +6.6% 78525673 perf-stat.ps.iTLB-load-misses 1.633e+11 -2.9% 1.586e+11 perf-stat.ps.instructions 84674 +3.7% 87833 perf-stat.ps.node-load-misses 16096 +6.2% 17091 ± 2% perf-stat.ps.node-store-misses 4.932e+13 -3.0% 4.786e+13 perf-stat.total.instructions 29.95 -1.4 28.54 perf-profile.calltrace.cycles-pp.ksys_read.do_syscall_64.entry_SYSCALL_64_after_hwframe.__GI___libc_read 27.96 -1.3 26.65 perf-profile.calltrace.cycles-pp.vfs_read.ksys_read.do_syscall_64.entry_SYSCALL_64_after_hwframe.__GI___libc_read 37.88 -1.2 36.68 perf-profile.calltrace.cycles-pp.do_syscall_64.entry_SYSCALL_64_after_hwframe.__GI___libc_read 38.30 -1.2 37.11 perf-profile.calltrace.cycles-pp.entry_SYSCALL_64_after_hwframe.__GI___libc_read 49.26 -1.0 48.26 perf-profile.calltrace.cycles-pp.__GI___libc_read 5.97 -0.4 5.55 perf-profile.calltrace.cycles-pp.unix_stream_read_actor.unix_stream_read_generic.unix_stream_recvmsg.sock_read_iter.new_sync_read 1.30 -0.4 0.89 perf-profile.calltrace.cycles-pp.sock_def_readable.unix_stream_sendmsg.sock_sendmsg.sock_write_iter.new_sync_write 5.56 -0.4 5.17 perf-profile.calltrace.cycles-pp.skb_copy_datagram_iter.unix_stream_read_actor.unix_stream_read_generic.unix_stream_recvmsg.sock_read_iter 2.26 -0.4 1.88 perf-profile.calltrace.cycles-pp._copy_to_iter.__skb_datagram_iter.skb_copy_datagram_iter.unix_stream_read_actor.unix_stream_read_generic 5.29 -0.4 4.94 perf-profile.calltrace.cycles-pp.__skb_datagram_iter.skb_copy_datagram_iter.unix_stream_read_actor.unix_stream_read_generic.unix_stream_recvmsg 16.71 -0.3 16.38 perf-profile.calltrace.cycles-pp.unix_stream_read_generic.unix_stream_recvmsg.sock_read_iter.new_sync_read.vfs_read 1.17 ± 2% -0.3 0.84 perf-profile.calltrace.cycles-pp.kfree.consume_skb.unix_stream_read_generic.unix_stream_recvmsg.sock_read_iter 17.62 -0.3 17.36 perf-profile.calltrace.cycles-pp.unix_stream_recvmsg.sock_read_iter.new_sync_read.vfs_read.ksys_read 1.59 ± 3% -0.2 1.37 perf-profile.calltrace.cycles-pp.mutex_lock.unix_stream_read_generic.unix_stream_recvmsg.sock_read_iter.new_sync_read 1.18 ± 3% -0.2 1.01 ± 7% perf-profile.calltrace.cycles-pp.__fget_light.__fdget_pos.ksys_write.do_syscall_64.entry_SYSCALL_64_after_hwframe 1.22 ± 3% -0.2 1.05 ± 7% perf-profile.calltrace.cycles-pp.__fdget_pos.ksys_write.do_syscall_64.entry_SYSCALL_64_after_hwframe.__GI___libc_write 0.66 ± 3% -0.1 0.52 ± 2% perf-profile.calltrace.cycles-pp.__x64_sys_read.do_syscall_64.entry_SYSCALL_64_after_hwframe.__GI___libc_read 0.84 -0.1 0.75 ± 3% perf-profile.calltrace.cycles-pp.__check_heap_object.__check_object_size.simple_copy_to_iter.__skb_datagram_iter.skb_copy_datagram_iter 0.66 -0.1 0.58 perf-profile.calltrace.cycles-pp.kmem_cache_free.unix_stream_read_generic.unix_stream_recvmsg.sock_read_iter.new_sync_read 2.38 -0.1 2.32 perf-profile.calltrace.cycles-pp.__kmalloc_reserve.__alloc_skb.alloc_skb_with_frags.sock_alloc_send_pskb.unix_stream_sendmsg 0.52 +0.0 0.56 perf-profile.calltrace.cycles-pp.skb_unlink.unix_stream_read_generic.unix_stream_recvmsg.sock_read_iter.new_sync_read 0.85 +0.0 0.89 perf-profile.calltrace.cycles-pp.copyin._copy_from_iter.skb_copy_datagram_from_iter.unix_stream_sendmsg.sock_sendmsg 0.59 +0.0 0.64 ± 2% perf-profile.calltrace.cycles-pp._raw_spin_unlock_irqrestore.unix_stream_sendmsg.sock_sendmsg.sock_write_iter.new_sync_write 0.61 ± 2% +0.0 0.66 perf-profile.calltrace.cycles-pp.__check_heap_object.__check_object_size.skb_copy_datagram_from_iter.unix_stream_sendmsg.sock_sendmsg 1.23 +0.1 1.31 perf-profile.calltrace.cycles-pp.aa_sk_perm.security_socket_sendmsg.sock_sendmsg.sock_write_iter.new_sync_write 1.82 +0.1 1.91 perf-profile.calltrace.cycles-pp._copy_from_iter.skb_copy_datagram_from_iter.unix_stream_sendmsg.sock_sendmsg.sock_write_iter 1.77 +0.1 1.86 perf-profile.calltrace.cycles-pp.__check_object_size.skb_copy_datagram_from_iter.unix_stream_sendmsg.sock_sendmsg.sock_write_iter 0.61 ± 2% +0.1 0.71 ± 2% perf-profile.calltrace.cycles-pp.apparmor_socket_recvmsg.security_socket_recvmsg.sock_recvmsg.sock_read_iter.new_sync_read 0.54 ± 3% +0.1 0.65 ± 2% perf-profile.calltrace.cycles-pp._raw_spin_lock_irqsave.skb_queue_tail.unix_stream_sendmsg.sock_sendmsg.sock_write_iter 0.64 +0.1 0.76 perf-profile.calltrace.cycles-pp.skb_queue_tail.unix_stream_sendmsg.sock_sendmsg.sock_write_iter.new_sync_write 0.67 ± 5% +0.1 0.81 ± 3% perf-profile.calltrace.cycles-pp.__virt_addr_valid.__check_object_size.simple_copy_to_iter.__skb_datagram_iter.skb_copy_datagram_iter 5.36 +0.1 5.50 perf-profile.calltrace.cycles-pp.entry_SYSCALL_64.__GI___libc_read 4.57 +0.2 4.73 perf-profile.calltrace.cycles-pp.consume_skb.unix_stream_read_generic.unix_stream_recvmsg.sock_read_iter.new_sync_read 2.04 +0.2 2.21 perf-profile.calltrace.cycles-pp.security_socket_sendmsg.sock_sendmsg.sock_write_iter.new_sync_write.vfs_write 0.79 +0.2 0.96 perf-profile.calltrace.cycles-pp.wait_for_unix_gc.unix_stream_sendmsg.sock_sendmsg.sock_write_iter.new_sync_write 1.32 ± 2% +0.2 1.50 perf-profile.calltrace.cycles-pp.aa_sk_perm.security_socket_recvmsg.sock_recvmsg.sock_read_iter.new_sync_read 0.85 +0.2 1.03 ± 2% perf-profile.calltrace.cycles-pp.unix_write_space.sock_wfree.unix_destruct_scm.skb_release_head_state.skb_release_all 2.35 +0.2 2.53 ± 3% perf-profile.calltrace.cycles-pp.security_file_permission.vfs_read.ksys_read.do_syscall_64.entry_SYSCALL_64_after_hwframe 4.38 +0.2 4.56 perf-profile.calltrace.cycles-pp.syscall_return_via_sysret.__GI___libc_read 0.37 ± 70% +0.2 0.58 ± 3% perf-profile.calltrace.cycles-pp.__virt_addr_valid.__check_object_size.skb_copy_datagram_from_iter.unix_stream_sendmsg.sock_sendmsg 3.95 +0.2 4.18 perf-profile.calltrace.cycles-pp.skb_copy_datagram_from_iter.unix_stream_sendmsg.sock_sendmsg.sock_write_iter.new_sync_write 0.78 ± 3% +0.2 1.03 ± 2% perf-profile.calltrace.cycles-pp.security_socket_getpeersec_dgram.unix_stream_sendmsg.sock_sendmsg.sock_write_iter.new_sync_write 0.35 ± 70% +0.2 0.60 ± 2% perf-profile.calltrace.cycles-pp._raw_spin_lock.unix_stream_read_generic.unix_stream_recvmsg.sock_read_iter.new_sync_read 6.55 +0.3 6.82 perf-profile.calltrace.cycles-pp.__alloc_skb.alloc_skb_with_frags.sock_alloc_send_pskb.unix_stream_sendmsg.sock_sendmsg 21.84 +0.3 22.12 perf-profile.calltrace.cycles-pp.sock_read_iter.new_sync_read.vfs_read.ksys_read.do_syscall_64 5.36 +0.3 5.67 perf-profile.calltrace.cycles-pp.entry_SYSCALL_64.__GI___libc_write 1.80 +0.4 2.19 perf-profile.calltrace.cycles-pp.sock_wfree.unix_destruct_scm.skb_release_head_state.skb_release_all.consume_skb 2.28 ± 2% +0.4 2.68 perf-profile.calltrace.cycles-pp.security_socket_recvmsg.sock_recvmsg.sock_read_iter.new_sync_read.vfs_read 2.44 ± 2% +0.4 2.84 perf-profile.calltrace.cycles-pp.sock_recvmsg.sock_read_iter.new_sync_read.vfs_read.ksys_read 0.17 ±141% +0.4 0.57 ± 3% perf-profile.calltrace.cycles-pp.apparmor_socket_sendmsg.security_socket_sendmsg.sock_sendmsg.sock_write_iter.new_sync_write 30.83 +0.4 31.24 perf-profile.calltrace.cycles-pp.ksys_write.do_syscall_64.entry_SYSCALL_64_after_hwframe.__GI___libc_write 23.01 +0.4 23.42 perf-profile.calltrace.cycles-pp.new_sync_read.vfs_read.ksys_read.do_syscall_64.entry_SYSCALL_64_after_hwframe 1.84 +0.4 2.26 perf-profile.calltrace.cycles-pp.kmem_cache_alloc_node.__alloc_skb.alloc_skb_with_frags.sock_alloc_send_pskb.unix_stream_sendmsg 2.43 +0.5 2.90 perf-profile.calltrace.cycles-pp.unix_destruct_scm.skb_release_head_state.skb_release_all.consume_skb.unix_stream_read_generic 2.64 +0.5 3.12 perf-profile.calltrace.cycles-pp.skb_release_head_state.skb_release_all.consume_skb.unix_stream_read_generic.unix_stream_recvmsg 2.70 +0.5 3.19 perf-profile.calltrace.cycles-pp.skb_release_all.consume_skb.unix_stream_read_generic.unix_stream_recvmsg.sock_read_iter 19.25 +0.5 19.74 perf-profile.calltrace.cycles-pp.unix_stream_sendmsg.sock_sendmsg.sock_write_iter.new_sync_write.vfs_write 0.00 +0.5 0.53 perf-profile.calltrace.cycles-pp._raw_spin_unlock_irqrestore.unix_stream_read_generic.unix_stream_recvmsg.sock_read_iter.new_sync_read 0.00 +0.5 0.54 ± 2% perf-profile.calltrace.cycles-pp.apparmor_socket_getpeersec_dgram.security_socket_getpeersec_dgram.unix_stream_sendmsg.sock_sendmsg.sock_write_iter 0.00 +0.5 0.54 ± 3% perf-profile.calltrace.cycles-pp.__might_sleep.kmem_cache_alloc_node.__alloc_skb.alloc_skb_with_frags.sock_alloc_send_pskb 0.00 +0.6 0.55 ± 2% perf-profile.calltrace.cycles-pp._raw_spin_lock.unix_stream_sendmsg.sock_sendmsg.sock_write_iter.new_sync_write 21.76 +0.6 22.37 perf-profile.calltrace.cycles-pp.sock_sendmsg.sock_write_iter.new_sync_write.vfs_write.ksys_write 23.70 +0.7 24.39 perf-profile.calltrace.cycles-pp.sock_write_iter.new_sync_write.vfs_write.ksys_write.do_syscall_64 38.73 +0.7 39.41 perf-profile.calltrace.cycles-pp.do_syscall_64.entry_SYSCALL_64_after_hwframe.__GI___libc_write 28.58 +0.7 29.29 perf-profile.calltrace.cycles-pp.vfs_write.ksys_write.do_syscall_64.entry_SYSCALL_64_after_hwframe.__GI___libc_write 39.16 +0.7 39.87 perf-profile.calltrace.cycles-pp.entry_SYSCALL_64_after_hwframe.__GI___libc_write 1.02 ± 3% +0.7 1.76 ± 4% perf-profile.calltrace.cycles-pp.common_file_perm.security_file_permission.vfs_write.ksys_write.do_syscall_64 0.99 +0.8 1.77 perf-profile.calltrace.cycles-pp.common_file_perm.security_file_permission.vfs_read.ksys_read.do_syscall_64 1.67 +0.8 2.52 ± 5% perf-profile.calltrace.cycles-pp.security_file_permission.vfs_write.ksys_write.do_syscall_64.entry_SYSCALL_64_after_hwframe 24.85 +0.8 25.70 perf-profile.calltrace.cycles-pp.new_sync_write.vfs_write.ksys_write.do_syscall_64.entry_SYSCALL_64_after_hwframe 50.16 +1.0 51.21 perf-profile.calltrace.cycles-pp.__GI___libc_write 29.99 -1.4 28.58 perf-profile.children.cycles-pp.ksys_read 28.08 -1.4 26.73 perf-profile.children.cycles-pp.vfs_read 49.29 -1.0 48.29 perf-profile.children.cycles-pp.__GI___libc_read 76.70 -0.5 76.19 perf-profile.children.cycles-pp.do_syscall_64 77.53 -0.5 77.06 perf-profile.children.cycles-pp.entry_SYSCALL_64_after_hwframe 6.00 -0.4 5.59 perf-profile.children.cycles-pp.unix_stream_read_actor 1.30 -0.4 0.89 perf-profile.children.cycles-pp.sock_def_readable 5.61 -0.4 5.22 perf-profile.children.cycles-pp.skb_copy_datagram_iter 2.30 -0.4 1.93 perf-profile.children.cycles-pp._copy_to_iter 5.32 -0.4 4.97 perf-profile.children.cycles-pp.__skb_datagram_iter 16.84 -0.3 16.51 perf-profile.children.cycles-pp.unix_stream_read_generic 1.17 ± 2% -0.3 0.84 perf-profile.children.cycles-pp.kfree 17.64 -0.3 17.38 perf-profile.children.cycles-pp.unix_stream_recvmsg 1.23 -0.2 1.00 perf-profile.children.cycles-pp.__might_fault 1.64 ± 4% -0.2 1.43 perf-profile.children.cycles-pp.mutex_lock 0.63 ± 2% -0.2 0.47 ± 2% perf-profile.children.cycles-pp.skb_set_owner_w 0.60 ± 3% -0.1 0.45 perf-profile.children.cycles-pp.__x64_sys_write 0.67 ± 3% -0.1 0.53 ± 2% perf-profile.children.cycles-pp.__x64_sys_read 0.68 ± 2% -0.1 0.60 perf-profile.children.cycles-pp.kmem_cache_free 2.43 -0.1 2.37 perf-profile.children.cycles-pp.__kmalloc_reserve 0.42 ± 2% -0.1 0.36 perf-profile.children.cycles-pp.mutex_unlock 1.49 -0.1 1.44 perf-profile.children.cycles-pp.__check_heap_object 0.36 ± 4% -0.1 0.31 ± 4% perf-profile.children.cycles-pp.iov_iter_init 0.25 ± 4% -0.0 0.21 ± 7% perf-profile.children.cycles-pp.__vfs_write 0.09 ± 5% -0.0 0.06 perf-profile.children.cycles-pp.ksize 0.10 ± 9% -0.0 0.07 perf-profile.children.cycles-pp.kfree_skbmem 0.21 ± 2% -0.0 0.19 ± 2% perf-profile.children.cycles-pp.unix_scm_to_skb 0.17 ± 2% +0.0 0.19 ± 4% perf-profile.children.cycles-pp.kmalloc_slab 0.09 +0.0 0.11 ± 3% perf-profile.children.cycles-pp.maybe_add_creds 0.53 +0.0 0.56 perf-profile.children.cycles-pp.skb_unlink 0.65 ± 2% +0.0 0.68 perf-profile.children.cycles-pp.fput_many 0.14 ± 3% +0.0 0.18 ± 2% perf-profile.children.cycles-pp.fput 0.35 ± 2% +0.0 0.39 ± 2% perf-profile.children.cycles-pp.check_stack_object 1.12 +0.0 1.16 perf-profile.children.cycles-pp._cond_resched 0.87 +0.0 0.91 perf-profile.children.cycles-pp.copyin 0.57 +0.1 0.62 perf-profile.children.cycles-pp.rcu_all_qs 1.16 +0.1 1.22 perf-profile.children.cycles-pp._raw_spin_unlock_irqrestore 0.49 ± 2% +0.1 0.58 ± 2% perf-profile.children.cycles-pp.apparmor_socket_sendmsg 1.85 +0.1 1.95 perf-profile.children.cycles-pp._copy_from_iter 0.61 ± 2% +0.1 0.71 ± 2% perf-profile.children.cycles-pp.apparmor_socket_recvmsg 0.64 +0.1 0.77 perf-profile.children.cycles-pp.skb_queue_tail 1.11 +0.1 1.26 perf-profile.children.cycles-pp._raw_spin_lock_irqsave 0.47 ± 3% +0.2 0.62 ± 3% perf-profile.children.cycles-pp.apparmor_socket_getpeersec_dgram 0.74 +0.2 0.90 ± 2% perf-profile.children.cycles-pp.apparmor_file_permission 4.58 +0.2 4.74 perf-profile.children.cycles-pp.consume_skb 2.07 +0.2 2.23 perf-profile.children.cycles-pp.security_socket_sendmsg 0.32 ± 5% +0.2 0.50 ± 5% perf-profile.children.cycles-pp.aa_file_perm 0.84 +0.2 1.01 perf-profile.children.cycles-pp.wait_for_unix_gc 0.85 +0.2 1.03 ± 2% perf-profile.children.cycles-pp.unix_write_space 1.21 ± 5% +0.2 1.39 ± 3% perf-profile.children.cycles-pp.__virt_addr_valid 0.99 ± 2% +0.2 1.20 perf-profile.children.cycles-pp._raw_spin_lock 10.17 +0.2 10.39 perf-profile.children.cycles-pp.syscall_return_via_sysret 3.99 +0.2 4.21 perf-profile.children.cycles-pp.skb_copy_datagram_from_iter 0.81 ± 2% +0.3 1.06 ± 2% perf-profile.children.cycles-pp.security_socket_getpeersec_dgram 2.61 +0.3 2.87 perf-profile.children.cycles-pp.aa_sk_perm 6.63 +0.3 6.90 perf-profile.children.cycles-pp.__alloc_skb 21.86 +0.3 22.14 perf-profile.children.cycles-pp.sock_read_iter 2.30 ± 2% +0.4 2.69 perf-profile.children.cycles-pp.security_socket_recvmsg 1.80 +0.4 2.21 perf-profile.children.cycles-pp.sock_wfree 2.48 ± 2% +0.4 2.89 perf-profile.children.cycles-pp.sock_recvmsg 9.63 +0.4 10.04 perf-profile.children.cycles-pp.entry_SYSCALL_64 23.06 +0.4 23.47 perf-profile.children.cycles-pp.new_sync_read 1.93 +0.4 2.35 perf-profile.children.cycles-pp.kmem_cache_alloc_node 30.91 +0.4 31.34 perf-profile.children.cycles-pp.ksys_write 2.51 +0.4 2.96 perf-profile.children.cycles-pp.unix_destruct_scm 2.67 +0.5 3.14 perf-profile.children.cycles-pp.skb_release_head_state 2.72 +0.5 3.21 perf-profile.children.cycles-pp.skb_release_all 19.41 +0.5 19.90 perf-profile.children.cycles-pp.unix_stream_sendmsg 21.82 +0.6 22.43 perf-profile.children.cycles-pp.sock_sendmsg 28.71 +0.7 29.38 perf-profile.children.cycles-pp.vfs_write 23.73 +0.7 24.42 perf-profile.children.cycles-pp.sock_write_iter 24.90 +0.8 25.75 perf-profile.children.cycles-pp.new_sync_write 4.10 +1.0 5.09 ± 4% perf-profile.children.cycles-pp.security_file_permission 50.23 +1.0 51.26 perf-profile.children.cycles-pp.__GI___libc_write 2.06 ± 2% +1.5 3.58 ± 2% perf-profile.children.cycles-pp.common_file_perm 1.27 -0.4 0.86 perf-profile.self.cycles-pp.sock_def_readable 1.15 ± 2% -0.3 0.83 perf-profile.self.cycles-pp.kfree 0.78 -0.3 0.48 ± 2% perf-profile.self.cycles-pp.vfs_read 0.83 ± 5% -0.2 0.60 ± 17% perf-profile.self.cycles-pp.security_file_permission 0.56 ± 2% -0.2 0.35 perf-profile.self.cycles-pp.alloc_skb_with_frags 1.07 -0.2 0.87 perf-profile.self.cycles-pp.vfs_write 0.56 ± 5% -0.2 0.37 ± 16% perf-profile.self.cycles-pp.__fget_light 1.04 -0.2 0.89 perf-profile.self.cycles-pp.__GI___libc_read 0.61 ± 2% -0.2 0.46 perf-profile.self.cycles-pp.skb_set_owner_w 0.56 ± 3% -0.1 0.42 perf-profile.self.cycles-pp.__x64_sys_write 0.63 ± 3% -0.1 0.49 ± 2% perf-profile.self.cycles-pp.__x64_sys_read 0.72 -0.1 0.60 ± 2% perf-profile.self.cycles-pp._copy_to_iter 0.35 -0.1 0.25 ± 4% perf-profile.self.cycles-pp.__might_fault 0.53 -0.1 0.45 perf-profile.self.cycles-pp.ksys_write 1.34 -0.1 1.27 perf-profile.self.cycles-pp.__alloc_skb 1.46 -0.1 1.40 perf-profile.self.cycles-pp.__check_heap_object 0.65 -0.1 0.59 perf-profile.self.cycles-pp.kmem_cache_free 0.40 ± 2% -0.1 0.34 perf-profile.self.cycles-pp.mutex_unlock 0.20 ± 6% -0.0 0.16 ± 7% perf-profile.self.cycles-pp.__vfs_write 0.33 -0.0 0.29 perf-profile.self.cycles-pp.__kmalloc_reserve 0.10 ± 9% -0.0 0.07 perf-profile.self.cycles-pp.kfree_skbmem 0.56 ± 2% -0.0 0.54 perf-profile.self.cycles-pp._cond_resched 0.39 -0.0 0.36 ± 3% perf-profile.self.cycles-pp.unix_stream_read_actor 0.28 -0.0 0.26 ± 3% perf-profile.self.cycles-pp.skb_copy_datagram_iter 0.23 ± 3% -0.0 0.21 ± 2% perf-profile.self.cycles-pp.sock_sendmsg 0.20 ± 2% -0.0 0.18 perf-profile.self.cycles-pp.unix_scm_to_skb 0.11 -0.0 0.10 perf-profile.self.cycles-pp.put_pid 0.09 +0.0 0.10 perf-profile.self.cycles-pp.skb_unlink 0.07 ± 7% +0.0 0.08 perf-profile.self.cycles-pp.should_failslab 0.08 +0.0 0.10 ± 4% perf-profile.self.cycles-pp.maybe_add_creds 0.68 +0.0 0.69 perf-profile.self.cycles-pp.unix_destruct_scm 0.07 ± 7% +0.0 0.09 ± 5% perf-profile.self.cycles-pp.fput 0.18 ± 2% +0.0 0.20 ± 2% perf-profile.self.cycles-pp.security_socket_sendmsg 0.10 ± 4% +0.0 0.12 ± 4% perf-profile.self.cycles-pp.skb_release_head_state 0.15 ± 3% +0.0 0.17 ± 2% perf-profile.self.cycles-pp.kmalloc_slab 0.31 +0.0 0.34 perf-profile.self.cycles-pp.check_stack_object 0.63 +0.0 0.66 perf-profile.self.cycles-pp.fput_many 0.15 ± 3% +0.0 0.18 ± 2% perf-profile.self.cycles-pp.wait_for_unix_gc 0.51 +0.0 0.54 ± 2% perf-profile.self.cycles-pp._copy_from_iter 0.83 +0.0 0.88 perf-profile.self.cycles-pp.entry_SYSCALL_64_after_hwframe 0.46 +0.1 0.52 ± 2% perf-profile.self.cycles-pp.rcu_all_qs 1.15 +0.1 1.21 perf-profile.self.cycles-pp._raw_spin_unlock_irqrestore 0.73 ± 2% +0.1 0.79 ± 2% perf-profile.self.cycles-pp.unix_stream_recvmsg 0.20 ± 2% +0.1 0.26 ± 2% perf-profile.self.cycles-pp.security_socket_recvmsg 0.53 ± 2% +0.1 0.62 ± 2% perf-profile.self.cycles-pp.apparmor_socket_recvmsg 0.41 +0.1 0.49 ± 3% perf-profile.self.cycles-pp.apparmor_socket_sendmsg 0.23 ± 3% +0.1 0.34 ± 3% perf-profile.self.cycles-pp.security_socket_getpeersec_dgram 0.56 ± 2% +0.1 0.68 perf-profile.self.cycles-pp.mutex_lock 1.88 +0.1 2.00 perf-profile.self.cycles-pp.unix_stream_read_generic 1.97 +0.1 2.09 perf-profile.self.cycles-pp.unix_stream_sendmsg 0.40 ± 3% +0.1 0.53 ± 2% perf-profile.self.cycles-pp.apparmor_socket_getpeersec_dgram 1.55 +0.1 1.68 ± 2% perf-profile.self.cycles-pp.sock_read_iter 1.04 +0.1 1.17 perf-profile.self.cycles-pp.kmem_cache_alloc_node 1.10 +0.1 1.25 perf-profile.self.cycles-pp._raw_spin_lock_irqsave 0.90 +0.1 1.05 perf-profile.self.cycles-pp.new_sync_read 1.47 +0.2 1.62 perf-profile.self.cycles-pp.aa_sk_perm 0.87 ± 2% +0.2 1.03 ± 3% perf-profile.self.cycles-pp.new_sync_write 0.65 +0.2 0.81 ± 2% perf-profile.self.cycles-pp.apparmor_file_permission 0.30 ± 5% +0.2 0.46 ± 5% perf-profile.self.cycles-pp.aa_file_perm 1.16 ± 5% +0.2 1.34 ± 3% perf-profile.self.cycles-pp.__virt_addr_valid 0.80 +0.2 0.98 perf-profile.self.cycles-pp.unix_write_space 0.96 ± 2% +0.2 1.16 perf-profile.self.cycles-pp._raw_spin_lock 10.16 +0.2 10.37 perf-profile.self.cycles-pp.syscall_return_via_sysret 0.85 +0.3 1.11 ± 2% perf-profile.self.cycles-pp.sock_wfree 8.51 +0.4 8.88 perf-profile.self.cycles-pp.entry_SYSCALL_64 14.13 +0.7 14.86 perf-profile.self.cycles-pp.do_syscall_64 1.72 ± 3% +1.3 3.04 ± 4% perf-profile.self.cycles-pp.common_file_perm will-it-scale.per_thread_ops 400000 +------------------------------------------------------------------+ | O O O OO O O O O O O O O O O OO O O O O O O.+.+. | 350000 |.+.+.+.+.++.+.+.+.+.+.+.+.+.+.+.++.+.+.+.+.+.+ +.+.++.+.+.+.+.| | | 300000 |-+ | 250000 |-+ | | | 200000 |-+ | | | 150000 |-+ | 100000 |-+ | | | 50000 |-+ | | | 0 +------------------------------------------------------------------+ [*] bisect-good sample [O] bisect-bad sample Disclaimer: Results have been estimated based on internal Intel analysis and are provided for informational purposes only. Any difference in system hardware or software design or configuration may affect actual performance. Thanks, Rong Chen