Re: [PATCH] vfs: Delete the associated dentry when deleting a file

From: kernel test robot
Date: Wed May 22 2024 - 04:12:19 EST



Hello,

kernel test robot noticed a 6.7% improvement of stress-ng.touch.ops_per_sec on:


commit: 3681ce364442ce2ec7c7fbe90ad0aca651db475b ("[PATCH] vfs: Delete the associated dentry when deleting a file")
url: https://github.com/intel-lab-lkp/linux/commits/Yafang-Shao/vfs-Delete-the-associated-dentry-when-deleting-a-file/20240516-144340
base: https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git 3c999d1ae3c75991902a1a7dad0cb62c2a3008b4
patch link: https://lore.kernel.org/all/20240515091727.22034-1-laoar.shao@xxxxxxxxx/
patch subject: [PATCH] vfs: Delete the associated dentry when deleting a file

testcase: stress-ng
test machine: 64 threads 2 sockets Intel(R) Xeon(R) Gold 6346 CPU @ 3.10GHz (Ice Lake) with 256G memory
parameters:

nr_threads: 100%
disk: 1HDD
testtime: 60s
fs: ext4
test: touch
cpufreq_governor: performance



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


The kernel config and materials to reproduce are available at:
https://download.01.org/0day-ci/archive/20240522/202405221518.ecea2810-oliver.sang@xxxxxxxxx

=========================================================================================
compiler/cpufreq_governor/disk/fs/kconfig/nr_threads/rootfs/tbox_group/test/testcase/testtime:
gcc-13/performance/1HDD/ext4/x86_64-rhel-8.3/100%/debian-12-x86_64-20240206.cgz/lkp-icl-2sp8/touch/stress-ng/60s

commit:
3c999d1ae3 ("Merge tag 'wq-for-6.10' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq")
3681ce3644 ("vfs: Delete the associated dentry when deleting a file")

3c999d1ae3c75991 3681ce364442ce2ec7c7fbe90ad
---------------- ---------------------------
%stddev %change %stddev
\ | \
9.884e+08 -49.1% 5.027e+08 ± 4% cpuidle..time
23.46 ± 2% -38.3% 14.47 ± 5% iostat.cpu.idle
75.71 +11.7% 84.60 iostat.cpu.system
620100 ± 5% -24.0% 471157 ± 6% numa-numastat.node0.local_node
650333 ± 3% -22.3% 505122 ± 5% numa-numastat.node0.numa_hit
736690 ± 3% -21.7% 577182 ± 4% numa-numastat.node1.local_node
772759 ± 3% -21.1% 609537 ± 3% numa-numastat.node1.numa_hit
23.42 -38.1% 14.50 ± 5% vmstat.cpu.id
54.39 ± 3% +13.4% 61.67 ± 2% vmstat.procs.r
75507 ± 6% +24.6% 94113 ± 5% vmstat.system.cs
177863 +14.2% 203176 vmstat.system.in
21.30 ± 2% -9.5 11.76 ± 7% mpstat.cpu.all.idle%
0.37 ± 2% +0.1 0.42 ± 2% mpstat.cpu.all.irq%
0.14 -0.0 0.11 ± 2% mpstat.cpu.all.soft%
77.37 +9.4 86.79 mpstat.cpu.all.sys%
0.81 +0.1 0.92 ± 2% mpstat.cpu.all.usr%
68.24 -11.5% 60.40 stress-ng.time.elapsed_time
68.24 -11.5% 60.40 stress-ng.time.elapsed_time.max
175478 +5.3% 184765 stress-ng.time.involuntary_context_switches
5038 +12.4% 5663 stress-ng.time.percent_of_cpu_this_job_got
259551 ± 2% +6.7% 277010 stress-ng.touch.ops_per_sec
454143 ± 2% -9.2% 412504 ± 2% meminfo.Active
445748 ± 2% -9.3% 404154 ± 2% meminfo.Active(anon)
1714332 ± 2% -92.8% 123761 ± 2% meminfo.KReclaimable
7111721 -23.7% 5423125 meminfo.Memused
1714332 ± 2% -92.8% 123761 ± 2% meminfo.SReclaimable
291963 -35.6% 188122 meminfo.SUnreclaim
2006296 -84.5% 311883 meminfo.Slab
7289014 -24.0% 5539852 meminfo.max_used_kB
875347 ± 3% -91.3% 75880 ± 30% numa-meminfo.node0.KReclaimable
875347 ± 3% -91.3% 75880 ± 30% numa-meminfo.node0.SReclaimable
161663 ± 7% -31.3% 111087 ± 12% numa-meminfo.node0.SUnreclaim
1037010 ± 3% -82.0% 186968 ± 16% numa-meminfo.node0.Slab
838678 ± 3% -94.3% 48016 ± 50% numa-meminfo.node1.KReclaimable
838678 ± 3% -94.3% 48016 ± 50% numa-meminfo.node1.SReclaimable
130259 ± 8% -40.8% 77055 ± 18% numa-meminfo.node1.SUnreclaim
968937 ± 3% -87.1% 125072 ± 25% numa-meminfo.node1.Slab
218872 ± 3% -91.3% 18961 ± 31% numa-vmstat.node0.nr_slab_reclaimable
40425 ± 7% -31.3% 27772 ± 12% numa-vmstat.node0.nr_slab_unreclaimable
649973 ± 3% -22.3% 504715 ± 5% numa-vmstat.node0.numa_hit
619740 ± 5% -24.0% 470750 ± 6% numa-vmstat.node0.numa_local
209697 ± 3% -94.3% 12019 ± 50% numa-vmstat.node1.nr_slab_reclaimable
32567 ± 8% -40.8% 19264 ± 18% numa-vmstat.node1.nr_slab_unreclaimable
771696 ± 3% -21.1% 608506 ± 3% numa-vmstat.node1.numa_hit
735626 ± 3% -21.7% 576154 ± 4% numa-vmstat.node1.numa_local
111469 ± 2% -9.3% 101103 ± 2% proc-vmstat.nr_active_anon
446.10 -36.6% 283.05 proc-vmstat.nr_dirtied
18812 +2.5% 19287 proc-vmstat.nr_kernel_stack
428165 ± 2% -92.8% 30970 ± 2% proc-vmstat.nr_slab_reclaimable
72954 -35.5% 47032 proc-vmstat.nr_slab_unreclaimable
111469 ± 2% -9.3% 101103 ± 2% proc-vmstat.nr_zone_active_anon
1424982 -21.7% 1116423 proc-vmstat.numa_hit
1358679 -22.7% 1050103 ± 2% proc-vmstat.numa_local
4261989 ± 3% -14.9% 3625822 ± 3% proc-vmstat.pgalloc_normal
399826 -4.6% 381396 proc-vmstat.pgfault
3996977 ± 3% -15.9% 3359964 ± 3% proc-vmstat.pgfree
13500 -5.9% 12708 proc-vmstat.pgpgout
0.13 ± 3% -0.0 0.08 ± 4% perf-profile.children.cycles-pp.d_lookup
0.12 ± 4% -0.0 0.08 perf-profile.children.cycles-pp.__d_lookup
0.11 ± 2% +0.0 0.13 ± 3% perf-profile.children.cycles-pp.irq_exit_rcu
0.06 ± 7% +0.0 0.09 ± 2% perf-profile.children.cycles-pp.__slab_free
0.02 ±100% +0.0 0.06 ± 8% perf-profile.children.cycles-pp.__memcg_slab_free_hook
0.07 ± 7% +0.0 0.12 ± 4% perf-profile.children.cycles-pp.run_ksoftirqd
0.09 ± 5% +0.0 0.14 ± 4% perf-profile.children.cycles-pp.smpboot_thread_fn
0.18 ± 3% +0.1 0.24 ± 3% perf-profile.children.cycles-pp.kmem_cache_free
0.10 ± 7% +0.1 0.16 ± 7% perf-profile.children.cycles-pp.kthread
0.10 ± 7% +0.1 0.16 ± 7% perf-profile.children.cycles-pp.ret_from_fork
0.10 ± 7% +0.1 0.16 ± 7% perf-profile.children.cycles-pp.ret_from_fork_asm
0.14 ± 4% +0.1 0.20 ± 3% perf-profile.children.cycles-pp.rcu_do_batch
0.15 ± 3% +0.1 0.21 ± 2% perf-profile.children.cycles-pp.rcu_core
0.18 ± 3% +0.1 0.24 ± 2% perf-profile.children.cycles-pp.handle_softirqs
0.00 +0.1 0.06 ± 7% perf-profile.children.cycles-pp.list_lru_del
0.82 ± 2% +0.1 0.89 ± 3% perf-profile.children.cycles-pp._raw_spin_lock
0.01 ±238% +0.1 0.08 ± 4% perf-profile.children.cycles-pp.__call_rcu_common
0.00 +0.1 0.08 ± 3% perf-profile.children.cycles-pp.d_lru_del
0.00 +0.2 0.17 ± 3% perf-profile.children.cycles-pp.__dentry_kill
0.33 ± 11% +0.2 0.50 ± 6% perf-profile.children.cycles-pp.dput
0.09 ± 4% -0.0 0.05 ± 22% perf-profile.self.cycles-pp.__d_lookup
0.06 ± 5% +0.0 0.09 ± 5% perf-profile.self.cycles-pp.__slab_free
0.74 ± 2% +0.1 0.79 perf-profile.self.cycles-pp._raw_spin_lock
2.55 ± 4% -40.6% 1.51 ± 5% perf-stat.i.MPKI
1.219e+10 +12.8% 1.376e+10 perf-stat.i.branch-instructions
0.27 ± 2% -0.1 0.21 ± 2% perf-stat.i.branch-miss-rate%
22693772 +14.3% 25941855 perf-stat.i.branch-misses
39.43 -4.6 34.83 perf-stat.i.cache-miss-rate%
95834044 ± 3% +10.9% 1.063e+08 ± 4% perf-stat.i.cache-misses
2.658e+08 ± 2% +14.8% 3.051e+08 ± 4% perf-stat.i.cache-references
77622 ± 6% +25.5% 97395 ± 5% perf-stat.i.context-switches
2.82 +3.3% 2.91 perf-stat.i.cpi
1.821e+11 +12.5% 2.049e+11 perf-stat.i.cpu-cycles
9159 ± 3% +22.9% 11257 ± 3% perf-stat.i.cpu-migrations
6.223e+10 +12.8% 7.019e+10 perf-stat.i.instructions
0.36 -4.8% 0.34 perf-stat.i.ipc
1.19 ± 9% +27.6% 1.51 ± 5% perf-stat.i.metric.K/sec
4716 +6.3% 5011 perf-stat.i.minor-faults
4716 +6.3% 5011 perf-stat.i.page-faults
35.93 -1.2 34.77 perf-stat.overall.cache-miss-rate%
1.214e+10 +11.5% 1.353e+10 perf-stat.ps.branch-instructions
22276184 +13.3% 25240906 perf-stat.ps.branch-misses
95133798 ± 3% +9.8% 1.045e+08 ± 4% perf-stat.ps.cache-misses
2.648e+08 ± 2% +13.5% 3.004e+08 ± 4% perf-stat.ps.cache-references
77612 ± 6% +23.8% 96101 ± 5% perf-stat.ps.context-switches
1.813e+11 +11.1% 2.015e+11 perf-stat.ps.cpu-cycles
9093 ± 3% +21.5% 11047 ± 2% perf-stat.ps.cpu-migrations
6.192e+10 +11.5% 6.901e+10 perf-stat.ps.instructions
4639 +5.6% 4899 perf-stat.ps.minor-faults
4640 +5.6% 4899 perf-stat.ps.page-faults




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