Re: [bpf] will-it-scale.per_thread_ops 2.6% improvement

From: Yonghong Song
Date: Sun Jun 28 2020 - 02:07:37 EST




On 6/27/20 1:22 AM, kernel test robot wrote:
Greeting,

FYI, we noticed a 2.6% improvement of will-it-scale.per_thread_ops due to commit:

Thanks. The improvement is always good although I do not know
what will-it-scale.per_thread_ops exactly running.

But I think the commit
492e639f0c222784e2e0f121966375f641c61b15 ("bpf: Add bpf_seq_printf and bpf_seq_write helpers")
probably not the reason for the improvement. This patch just add bpf helpers and they should not be called in normal user codes.

If you want to identify which commit is responsible for the improvement,
you probably want to double check.



commit: 492e639f0c222784e2e0f121966375f641c61b15 ("bpf: Add bpf_seq_printf and bpf_seq_write helpers")
https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git master

in testcase: will-it-scale
on test machine: 288 threads Intel(R) Xeon Phi(TM) CPU 7295 @ 1.50GHz with 80G memory
with following parameters:

nr_task: 100%
mode: thread
test: pthread_mutex2
cpufreq_governor: performance
ucode: 0x11

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

In addition to that, the commit also has significant impact on the following tests:

+------------------+----------------------------------------------------------------------+
| testcase: change | will-it-scale: will-it-scale.per_process_ops 2.5% improvement |
| test machine | 288 threads Intel(R) Xeon Phi(TM) CPU 7295 @ 1.50GHz with 80G memory |
| test parameters | cpufreq_governor=performance |
| | mode=process |
| | nr_task=100% |
| | test=malloc2 |
| | ucode=0x11 |
+------------------+----------------------------------------------------------------------+




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-7/performance/x86_64-rhel-7.6/thread/100%/debian-x86_64-20191114.cgz/lkp-knm01/pthread_mutex2/will-it-scale/0x11

commit:
b121b341e5 ("bpf: Add PTR_TO_BTF_ID_OR_NULL support")
492e639f0c ("bpf: Add bpf_seq_printf and bpf_seq_write helpers")

b121b341e5983bdc 492e639f0c222784e2e0f121966
---------------- ---------------------------
%stddev %change %stddev
\ | \
6105969 +2.6% 6265564 will-it-scale.per_thread_ops
9855 +1196.5% 127775 Â 92% will-it-scale.time.maximum_resident_set_size
1.759e+09 +2.6% 1.804e+09 will-it-scale.workload
[...]


***************************************************************************************************
lkp-knm01: 288 threads Intel(R) Xeon Phi(TM) CPU 7295 @ 1.50GHz with 80G memory
=========================================================================================
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-knm01/context_switch1/will-it-scale/0x11

commit:
b121b341e5 ("bpf: Add PTR_TO_BTF_ID_OR_NULL support")
492e639f0c ("bpf: Add bpf_seq_printf and bpf_seq_write helpers")

b121b341e5983bdc 492e639f0c222784e2e0f121966
---------------- ---------------------------
fail:runs %reproduction fail:runs
| | |
2:2 -100% :2 dmesg.WARNING:at#for_ip_swapgs_restore_regs_and_return_to_usermode/0x
2:2 -100% :2 dmesg.WARNING:stack_recursion





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