Merge the scheduler build speedup of the fast-headers tree. Cumulative scheduler (kernel/sched/) build time speedup on a Linux distribution's config, which enables all scheduler features, compared to the vanilla kernel: _____________________________________________________________________________ | | Vanilla kernel (v5.13-rc7): |_____________________________________________________________________________ | | Performance counter stats for 'make -j96 kernel/sched/' (3 runs): | | 126,975,564,374 instructions # 1.45 insn per cycle ( +- 0.00% ) | 87,637,847,671 cycles # 3.959 GHz ( +- 0.30% ) | 22,136.96 msec cpu-clock # 7.499 CPUs utilized ( +- 0.29% ) | | 2.9520 +- 0.0169 seconds time elapsed ( +- 0.57% ) |_____________________________________________________________________________ | | Patched kernel: |_____________________________________________________________________________ | | Performance counter stats for 'make -j96 kernel/sched/' (3 runs): | | 50,420,496,914 instructions # 1.47 insn per cycle ( +- 0.00% ) | 34,234,322,038 cycles # 3.946 GHz ( +- 0.31% ) | 8,675.81 msec cpu-clock # 3.053 CPUs utilized ( +- 0.45% ) | | 2.8420 +- 0.0181 seconds time elapsed ( +- 0.64% ) |_____________________________________________________________________________ Summary: - CPU time used to build the scheduler dropped by -60.9%, a reduction from 22.1 clock-seconds to 8.7 clock-seconds. - Wall-clock time to build the scheduler dropped by -3.9%, a reduction from 2.95 seconds to 2.84 seconds.
Showing the changes to include (34 of 69 files). Show all
Unified · Split
| @@ -0,0 +1 @@ | ||
| 1 | +#include <linux/cgroup.h> | |
| @@ -0,0 +1 @@ | ||
| 1 | +#include <linux/cpumask.h> | |
| @@ -0,0 +1 @@ | ||
| 1 | +#include <linux/fs.h> | |
| @@ -0,0 +1 @@ | ||
| 1 | +#include <linux/gfp.h> | |
| @@ -0,0 +1 @@ | ||
| 1 | +#include <linux/hashtable.h> | |
| @@ -0,0 +1 @@ | ||
| 1 | +#include <linux/hrtimer.h> | |
| @@ -0,0 +1 @@ | ||
| 1 | +#include <linux/kobject.h> | |
| @@ -0,0 +1 @@ | ||
| 1 | +#include <linux/kref.h> | |
| @@ -0,0 +1 @@ | ||
| 1 | +#include <linux/ktime.h> | |
| @@ -0,0 +1 @@ | ||
| 1 | +#include <linux/llist.h> | |
| @@ -0,0 +1 @@ | ||
| 1 | +#include <linux/lockdep.h> | |
| @@ -0,0 +1 @@ | ||
| 1 | +#include <linux/mm.h> | |
| @@ -0,0 +1 @@ | ||
| 1 | +#include <linux/mutex.h> | |
| @@ -0,0 +1 @@ | ||
| 1 | +#include <linux/perf_event.h> | |
| @@ -0,0 +1 @@ | ||
| 1 | +#include <linux/pgtable.h> | |
| @@ -0,0 +1 @@ | ||
| 1 | +#include <linux/ptrace.h> | |
| @@ -0,0 +1 @@ | ||
| 1 | +#include <linux/rcuwait.h> | |
| @@ -0,0 +1 @@ | ||
| 1 | +#include <linux/refcount.h> | |
| @@ -0,0 +1 @@ | ||
| 1 | +#include <linux/sched.h> | |
| @@ -0,0 +1 @@ | ||
| 1 | +#include <linux/sched.h> | |
| @@ -6,6 +6,8 @@ · 5 unmodified lines | ||
| 6 | 6 | * NORMAL/BATCH tasks. |
| 7 | 7 | */ |
| 8 | 8 | |
| 9 | +#include <linux/sched.h> | |
| 10 | + | |
| 9 | 11 | #define MAX_DL_PRIO 0 |
| 10 | 12 | |
| 11 | 13 | static inline int dl_prio(int prio) |
| @@ -0,0 +1 @@ | ||
| 1 | +#include <linux/posix-timers.h> | |
| @@ -0,0 +1 @@ | ||
| 1 | +#include <linux/rseq.h> | |
| @@ -0,0 +1 @@ | ||
| 1 | +#include <linux/sched.h> | |
| @@ -0,0 +1 @@ | ||
| 1 | +#include <linux/thread_info.h> | |
| @@ -5,6 +5,8 @@ · 4 unmodified lines | ||
| 5 | 5 | #ifndef LINUX_SCHED_CLOCK |
| 6 | 6 | #define LINUX_SCHED_CLOCK |
| 7 | 7 | |
| 8 | +#include <linux/types.h> | |
| 9 | + | |
| 8 | 10 | #ifdef CONFIG_GENERIC_SCHED_CLOCK |
| 9 | 11 | /** |
| 10 | 12 | * struct clock_read_data - data required to read from sched_clock() |
| @@ -0,0 +1 @@ | ||
| 1 | +#include <linux/seqlock.h> | |
| @@ -0,0 +1 @@ | ||
| 1 | +#include <linux/interrupt.h> | |
| @@ -0,0 +1 @@ | ||
| 1 | +#include <linux/spinlock.h> | |
| @@ -0,0 +1 @@ | ||
| 1 | +#include <linux/swait.h> | |
| @@ -0,0 +1 @@ | ||
| 1 | +#include <linux/syscalls.h> | |
| @@ -0,0 +1 @@ | ||
| 1 | +#include <linux/u64_stats_sync.h> | |
| @@ -0,0 +1 @@ | ||
| 1 | +#include <linux/wait.h> | |
| @@ -0,0 +1 @@ | ||
| 1 | +#include <linux/workqueue.h> | |