Linux Kernel Performance
 help / color / mirror / Atom feed
* [tglx-devel:locking/futex] [x86/vdso]  698a86a85c: stress-ng.priv-instr.ops_per_sec 5.8% improvement
@ 2026-05-27  5:03 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2026-05-27  5:03 UTC (permalink / raw)
  To: Thomas Gleixner; +Cc: oe-lkp, lkp, oliver.sang



Hello,

kernel test robot noticed a 5.8% improvement of stress-ng.priv-instr.ops_per_sec on:


commit: 698a86a85c4db4b800faa8a2890810ff9cec2f79 ("x86/vdso: Implement __vdso_futex_robust_try_unlock()")
https://git.kernel.org/cgit/linux/kernel/git/tglx/devel.git locking/futex

testcase: stress-ng
config: x86_64-rhel-9.4
compiler: gcc-14
test machine: 192 threads 2 sockets Intel(R) Xeon(R) 6740E  CPU @ 2.4GHz (Sierra Forest) with 256G memory
parameters:

	nr_threads: 100%
	testtime: 60s
	test: priv-instr
	cpufreq_governor: performance


we notice the config diff which seems reasonable:

--- /pkg/linux/x86_64-rhel-9.4/gcc-14/35b728574c5b70b8223b53787bdbc40e55ca8ac4/.config  2026-05-25 13:01:14.615107724 +0800
+++ /pkg/linux/x86_64-rhel-9.4/gcc-14/698a86a85c4db4b800faa8a2890810ff9cec2f79/.config  2026-05-25 11:39:09.283994568 +0800
@@ -281,6 +281,8 @@ CONFIG_FUTEX=y
 CONFIG_FUTEX_PI=y
 CONFIG_FUTEX_PRIVATE_HASH=y
 CONFIG_FUTEX_MPOL=y
+CONFIG_HAVE_FUTEX_ROBUST_UNLOCK=y
+CONFIG_FUTEX_ROBUST_UNLOCK=y
 CONFIG_EPOLL=y
 CONFIG_SIGNALFD=y
 CONFIG_TIMERFD=y



Details are as below:
-------------------------------------------------------------------------------------------------->


The kernel config and materials to reproduce are available at:
https://download.01.org/0day-ci/archive/20260527/202605271217.16dfca4d-lkp@intel.com

=========================================================================================
compiler/cpufreq_governor/kconfig/nr_threads/rootfs/tbox_group/test/testcase/testtime:
  gcc-14/performance/x86_64-rhel-9.4/100%/debian-13-x86_64-20250902.cgz/lkp-srf-2sp3/priv-instr/stress-ng/60s

commit: 
  35b728574c ("x86/vdso: Prepare for robust futex unlock support")
  698a86a85c ("x86/vdso: Implement __vdso_futex_robust_try_unlock()")

35b728574c5b70b8 698a86a85c4db4b800faa8a2890 
---------------- --------------------------- 
         %stddev     %change         %stddev
             \          |                \  
     28468            -5.6%      26878        stress-ng.priv-instr.nanosecs_per_privileged_op_trap
 3.983e+08            +5.8%  4.214e+08        stress-ng.priv-instr.ops
   6643685            +5.8%    7028732        stress-ng.priv-instr.ops_per_sec
     60.10            +0.0%      60.10        stress-ng.time.elapsed_time
     60.10            +0.0%      60.10        stress-ng.time.elapsed_time.max
     47894            -0.0%      47889        stress-ng.time.involuntary_context_switches
      7847            +0.0%       7848        stress-ng.time.maximum_resident_set_size
     18927 ±  2%      +0.7%      19061 ±  2%  stress-ng.time.minor_page_faults
      4096            +0.0%       4096        stress-ng.time.page_size
     19086            +0.0%      19087        stress-ng.time.percent_of_cpu_this_job_got
     11320            -0.1%      11312        stress-ng.time.system_time
    150.74            +5.9%     159.68        stress-ng.time.user_time
    671.60            +1.0%     678.17 ±  3%  stress-ng.time.voluntary_context_switches
      0.00         +3e+102%       3.00 ±107%  perf-c2c.DRAM.local
      0.00       +8.5e+103%      85.33 ±111%  perf-c2c.DRAM.remote
      0.00       +6.6e+104%     660.17 ±100%  perf-c2c.HITM.local
      0.00       +8.2e+103%      81.83 ±110%  perf-c2c.HITM.remote
      0.00       +7.4e+104%     742.00 ±101%  perf-c2c.HITM.total
    247011 ± 28%      -8.9%     225103 ± 35%  numa-numastat.node0.local_node
    373383 ± 15%      -1.0%     369611 ± 13%  numa-numastat.node0.numa_hit
    126371 ± 47%     +14.4%     144508 ± 30%  numa-numastat.node0.other_node
    367783 ± 18%      +5.5%     387890 ± 20%  numa-numastat.node1.local_node
    440260 ± 12%      +0.5%     442288 ± 11%  numa-numastat.node1.numa_hit
     72476 ± 81%     -24.9%      54397 ± 80%  numa-numastat.node1.other_node
      3.27            -0.0        3.26        mpstat.cpu.all.idle%
      0.09            +0.0        0.09 ±  3%  mpstat.cpu.all.irq%
      0.00 ± 52%      +0.0        0.00 ± 31%  mpstat.cpu.all.soft%
     95.15            -0.1       95.08        mpstat.cpu.all.sys%
      1.49            +0.1        1.56        mpstat.cpu.all.usr%
      3.00            +0.0%       3.00        mpstat.max_utilization.seconds
    100.00            +0.0%     100.00        mpstat.max_utilization_pct
     60.10            +0.0%      60.10        time.elapsed_time
     60.10            +0.0%      60.10        time.elapsed_time.max
     47894            -0.0%      47889        time.involuntary_context_switches
      7847            +0.0%       7848        time.maximum_resident_set_size
     18927 ±  2%      +0.7%      19061 ±  2%  time.minor_page_faults
      4096            +0.0%       4096        time.page_size
     19086            +0.0%      19087        time.percent_of_cpu_this_job_got
     11320            -0.1%      11312        time.system_time
    150.74            +5.9%     159.68        time.user_time
    671.60            +1.0%     678.17 ±  3%  time.voluntary_context_switches
      6.08 ±  9%      -7.8%       5.61 ± 13%  vmstat.cpu.id
     92.50            +0.5%      92.93        vmstat.cpu.sy
      1.42            +2.0%       1.45 ±  2%  vmstat.cpu.us
      0.33            +0.5%       0.33        vmstat.io.bi
      4.00            +0.0%       4.00        vmstat.memory.buff
   4549331            -0.0%    4547648        vmstat.memory.cache
 2.514e+08            -0.0%  2.514e+08        vmstat.memory.free
    181.12            +0.9%     182.71        vmstat.procs.r
      2505 ±  2%      -3.0%       2430 ±  2%  vmstat.system.cs
    443254            +0.4%     445179        vmstat.system.in
      0.07 ±  5%      -3.7%       0.07 ±  4%  perf-sched.sch_delay.avg.ms.[unknown].[unknown].[unknown].[unknown].[unknown]
     10.80 ± 42%      -6.8%      10.06 ± 38%  perf-sched.sch_delay.max.ms.[unknown].[unknown].[unknown].[unknown].[unknown]
      0.07 ±  5%      -3.7%       0.07 ±  4%  perf-sched.total_sch_delay.average.ms
     10.80 ± 42%      -6.8%      10.06 ± 38%  perf-sched.total_sch_delay.max.ms
    176.52 ±  2%      -0.6%     175.50 ±  5%  perf-sched.total_wait_and_delay.average.ms
      7255 ±  2%      +1.9%       7392 ±  6%  perf-sched.total_wait_and_delay.count.ms
      4979            +0.0%       4981        perf-sched.total_wait_and_delay.max.ms
    176.45 ±  2%      -0.6%     175.43 ±  5%  perf-sched.total_wait_time.average.ms
      4979            +0.0%       4981        perf-sched.total_wait_time.max.ms
    176.52 ±  2%      -0.6%     175.50 ±  5%  perf-sched.wait_and_delay.avg.ms.[unknown].[unknown].[unknown].[unknown].[unknown]
      7255 ±  2%      +1.9%       7392 ±  6%  perf-sched.wait_and_delay.count.[unknown].[unknown].[unknown].[unknown].[unknown]
      4979            +0.0%       4981        perf-sched.wait_and_delay.max.ms.[unknown].[unknown].[unknown].[unknown].[unknown]
    176.45 ±  2%      -0.6%     175.43 ±  5%  perf-sched.wait_time.avg.ms.[unknown].[unknown].[unknown].[unknown].[unknown]
      4979            +0.0%       4981        perf-sched.wait_time.max.ms.[unknown].[unknown].[unknown].[unknown].[unknown]
      2004            -0.3%       1999        perf-stat.i.context-switches
    192058            -0.0%     192055        perf-stat.i.cpu-clock
    311.00            -0.7%     308.78        perf-stat.i.cpu-migrations
      0.02 ± 99%     +23.7%       0.02 ± 93%  perf-stat.i.major-faults
      3937 ±  3%      +2.8%       4049 ±  4%  perf-stat.i.minor-faults
      3937 ±  3%      +2.8%       4049 ±  4%  perf-stat.i.page-faults
    192058            -0.0%     192055        perf-stat.i.task-clock
      1972            -0.2%       1968        perf-stat.ps.context-switches
    188859            -0.0%     188847        perf-stat.ps.cpu-clock
    305.80            -0.7%     303.61        perf-stat.ps.cpu-migrations
      0.02 ± 96%     +25.7%       0.02 ± 92%  perf-stat.ps.major-faults
      3872 ±  3%      +2.8%       3979 ±  4%  perf-stat.ps.minor-faults
      3872 ±  3%      +2.8%       3979 ±  4%  perf-stat.ps.page-faults
    188859            -0.0%     188847        perf-stat.ps.task-clock
      1852 ± 81%     +66.9%       3093        turbostat.Avg_MHz
     57.87 ± 81%     +38.8       96.62        turbostat.Busy%
      1920 ± 81%     +66.7%       3201        turbostat.Bzy_MHz
      1.99 ± 82%      +1.2        3.15 ±  5%  turbostat.C1%
      1.99 ± 82%     +58.0%       3.14 ±  5%  turbostat.CPU%c1
     30.20 ± 81%     +68.3%      50.83        turbostat.CoreTmp
      0.03 ± 81%     +66.7%       0.05        turbostat.IPC
  16893263 ± 81%     +66.7%   28163412        turbostat.IRQ
   4937639 ± 81%     +66.8%    8234664        turbostat.NMI
     30.60 ± 81%     +66.1%      50.83        turbostat.PkgTmp
    171.65 ± 81%     +67.0%     286.58        turbostat.PkgWatt
      9.03 ± 81%     +66.6%      15.05        turbostat.RAMWatt
      0.01 ± 81%     +66.7%       0.02        turbostat.SysWatt
      1440 ± 81%     +66.7%       2400        turbostat.TSC_MHz
      1584 ±  6%      -8.7%       1447        sched_debug.cfs_rq:/.runnable_avg.max
    162.28 ±  5%      -8.7%     148.14 ±  4%  sched_debug.cfs_rq:/.runnable_avg.stddev
      1025 ±  4%      +7.6%       1103 ±  4%  sched_debug.cfs_rq:/.util_avg.max




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.


-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2026-05-27  5:03 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-05-27  5:03 [tglx-devel:locking/futex] [x86/vdso] 698a86a85c: stress-ng.priv-instr.ops_per_sec 5.8% improvement kernel test robot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox