Test case 1, without NO_HZ_FULL built-in (default ubuntu kernel config):
Run test program 4 times without taskset
tail -n 2 log/notaskset.*
==> log/notaskset.1 <==
total 29370767905 nsec
avg 293 nsec
==> log/notaskset.2 <==
total 29359558119 nsec
avg 293 nsec
==> log/notaskset.3 <==
total 29370043654 nsec
avg 293 nsec
==> log/notaskset.4 <==
total 29362365433 nsec
avg 293 nsec
Run test program 4 times with taskset to CPU 4
tail -n 2 log/taskset.*
==> log/taskset.1 <==
total 29372156600 nsec
avg 293 nsec
==> log/taskset.2 <==
total 29367538079 nsec
avg 293 nsec
==> log/taskset.3 <==
total 29366224367 nsec
avg 293 nsec
==> log/taskset.4 <==
total 29367978392 nsec
avg 293 nsec
Test case 2, with NO_HZ_FULL built-in but not activate in kernel cmdline:
Run test program 4 times without taskset
tail -n 2 nohz-log/notaskset.*
==> nohz-log/notaskset.1 <==
total 27591230003 nsec
avg 275 nsec
==> nohz-log/notaskset.2 <==
total 27582359987 nsec
avg 275 nsec
==> nohz-log/notaskset.3 <==
total 27585635138 nsec
avg 275 nsec
==> nohz-log/notaskset.4 <==
total 27587532170 nsec
avg 275 nsec
Run test program 4 times with taskset to CPU 4
tail -n 2 nohz-log/taskset.*
==> nohz-log/taskset.1 <==
total 27587206878 nsec
avg 275 nsec
==> nohz-log/taskset.2 <==
total 27579854104 nsec
avg 275 nsec
==> nohz-log/taskset.3 <==
total 27588163798 nsec
avg 275 nsec
==> nohz-log/taskset.4 <==
total 27589441746 nsec
avg 275 nsec
Test case 3, with NO_HZ_FULL built-in, activate nohz_full in kernel cmdline:
cat /proc/cmdline
BOOT_IMAGE=/boot/vmlinuz-5.15.0-86-generic root=UUID=7c25ee2a-4c18-462a-90db-94273e5de74b ro isolcpus=2-63,66-127 nohz_full=2-63,66-127 rcu_nocbs=2-63,66-127 sysrq_always_enabled
Run test program 4 times without taskset
tail -n 2 nohz-activate-log/notaskset.*
==> nohz-activate-log/notaskset.1 <==
total 29986516050 nsec
avg 299 nsec
==> nohz-activate-log/notaskset.2 <==
total 29982386090 nsec
avg 299 nsec
==> nohz-activate-log/notaskset.3 <==
total 29976017400 nsec
avg 299 nsec
==> nohz-activate-log/notaskset.4 <==
total 29977079348 nsec
avg 299 nsec
Run test program 4 times with taskset to CPU 4
tail -n 2 nohz-activate-log/taskset.*
==> nohz-activate-log/taskset.1 <==
total 40561421305 nsec
avg 405 nsec
==> nohz-activate-log/taskset.2 <==
total 40556501183 nsec
avg 405 nsec
==> nohz-activate-log/taskset.3 <==
total 40554876491 nsec
avg 405 nsec
==> nohz-activate-log/taskset.4 <==
total 40554776851 nsec
avg 405 nsec
Test case 4, with NO_HZ_FULL built-in, activate nohz_full in kernel cmdline, but run on non-activate CPU:
Run test program on non-activate nohz_full CPU 64
tail -n 2 nohz-activate-off-log/*
==> nohz-activate-off-log/taskset.1 <==
total 29980106645 nsec
avg 299 nsec
==> nohz-activate-off-log/taskset.2 <==
total 29982445376 nsec
avg 299 nsec
==> nohz-activate-off-log/taskset.3 <==
total 29973087899 nsec
avg 299 nsec
==> nohz-activate-off-log/taskset.4 <==
total 29982214675 nsec
avg 299 nsec
On arm64 machine
Hardware configs:
Aarch64
128 CPUs
502G RAM, numa nodes: 4
Software configs: 86.96~20. 04.1) 86.96~20. 04.1+test202310 13b0) /launchpad. net/~gerald- yang-tw/ +archive/ ubuntu/ focal-no- hz-full
OS: ubuntu 20.04
Official kernel: 5.15 hwe (5.15.0-
Test kernel: 5.15 hwe (5.15.0-
https:/
Test case 1, without NO_HZ_FULL built-in (default ubuntu kernel config):
Run test program 4 times without taskset
tail -n 2 log/notaskset.*
==> log/notaskset.1 <==
total 29370767905 nsec
avg 293 nsec
==> log/notaskset.2 <==
total 29359558119 nsec
avg 293 nsec
==> log/notaskset.3 <==
total 29370043654 nsec
avg 293 nsec
==> log/notaskset.4 <==
total 29362365433 nsec
avg 293 nsec
Run test program 4 times with taskset to CPU 4
tail -n 2 log/taskset.*
==> log/taskset.1 <==
total 29372156600 nsec
avg 293 nsec
==> log/taskset.2 <==
total 29367538079 nsec
avg 293 nsec
==> log/taskset.3 <==
total 29366224367 nsec
avg 293 nsec
==> log/taskset.4 <==
total 29367978392 nsec
avg 293 nsec
Test case 2, with NO_HZ_FULL built-in but not activate in kernel cmdline: notaskset. * notaskset. 1 <==
Run test program 4 times without taskset
tail -n 2 nohz-log/
==> nohz-log/
total 27591230003 nsec
avg 275 nsec
==> nohz-log/ notaskset. 2 <==
total 27582359987 nsec
avg 275 nsec
==> nohz-log/ notaskset. 3 <==
total 27585635138 nsec
avg 275 nsec
==> nohz-log/ notaskset. 4 <==
total 27587532170 nsec
avg 275 nsec
Run test program 4 times with taskset to CPU 4
tail -n 2 nohz-log/taskset.*
==> nohz-log/taskset.1 <==
total 27587206878 nsec
avg 275 nsec
==> nohz-log/taskset.2 <==
total 27579854104 nsec
avg 275 nsec
==> nohz-log/taskset.3 <==
total 27588163798 nsec
avg 275 nsec
==> nohz-log/taskset.4 <==
total 27589441746 nsec
avg 275 nsec
Test case 3, with NO_HZ_FULL built-in, activate nohz_full in kernel cmdline: /boot/vmlinuz- 5.15.0- 86-generic root=UUID= 7c25ee2a- 4c18-462a- 90db-94273e5de7 4b ro isolcpus= 2-63,66- 127 nohz_full= 2-63,66- 127 rcu_nocbs= 2-63,66- 127 sysrq_always_ enabled
cat /proc/cmdline
BOOT_IMAGE=
Run test program 4 times without taskset log/notaskset. * log/notaskset. 1 <==
tail -n 2 nohz-activate-
==> nohz-activate-
total 29986516050 nsec
avg 299 nsec
==> nohz-activate- log/notaskset. 2 <==
total 29982386090 nsec
avg 299 nsec
==> nohz-activate- log/notaskset. 3 <==
total 29976017400 nsec
avg 299 nsec
==> nohz-activate- log/notaskset. 4 <==
total 29977079348 nsec
avg 299 nsec
Run test program 4 times with taskset to CPU 4 log/taskset. * log/taskset. 1 <==
tail -n 2 nohz-activate-
==> nohz-activate-
total 40561421305 nsec
avg 405 nsec
==> nohz-activate- log/taskset. 2 <==
total 40556501183 nsec
avg 405 nsec
==> nohz-activate- log/taskset. 3 <==
total 40554876491 nsec
avg 405 nsec
==> nohz-activate- log/taskset. 4 <==
total 40554776851 nsec
avg 405 nsec
Test case 4, with NO_HZ_FULL built-in, activate nohz_full in kernel cmdline, but run on non-activate CPU: off-log/ * off-log/ taskset. 1 <==
Run test program on non-activate nohz_full CPU 64
tail -n 2 nohz-activate-
==> nohz-activate-
total 29980106645 nsec
avg 299 nsec
==> nohz-activate- off-log/ taskset. 2 <==
total 29982445376 nsec
avg 299 nsec
==> nohz-activate- off-log/ taskset. 3 <==
total 29973087899 nsec
avg 299 nsec
==> nohz-activate- off-log/ taskset. 4 <==
total 29982214675 nsec
avg 299 nsec