~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/Documentation/scheduler/sched-debug.rst

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /Documentation/scheduler/sched-debug.rst (Version linux-6.12-rc7) and /Documentation/scheduler/sched-debug.rst (Version linux-5.19.17)


  1 =================                                   1 =================
  2 Scheduler debugfs                                   2 Scheduler debugfs
  3 =================                                   3 =================
  4                                                     4 
  5 Booting a kernel with CONFIG_SCHED_DEBUG=y wil      5 Booting a kernel with CONFIG_SCHED_DEBUG=y will give access to
  6 scheduler specific debug files under /sys/kern      6 scheduler specific debug files under /sys/kernel/debug/sched. Some of
  7 those files are described below.                    7 those files are described below.
  8                                                     8 
  9 numa_balancing                                      9 numa_balancing
 10 ==============                                     10 ==============
 11                                                    11 
 12 `numa_balancing` directory is used to hold fil     12 `numa_balancing` directory is used to hold files to control NUMA
 13 balancing feature.  If the system overhead fro     13 balancing feature.  If the system overhead from the feature is too
 14 high then the rate the kernel samples for NUMA     14 high then the rate the kernel samples for NUMA hinting faults may be
 15 controlled by the `scan_period_min_ms, scan_de     15 controlled by the `scan_period_min_ms, scan_delay_ms,
 16 scan_period_max_ms, scan_size_mb` files.           16 scan_period_max_ms, scan_size_mb` files.
 17                                                    17 
 18                                                    18 
 19 scan_period_min_ms, scan_delay_ms, scan_period     19 scan_period_min_ms, scan_delay_ms, scan_period_max_ms, scan_size_mb
 20 ----------------------------------------------     20 -------------------------------------------------------------------
 21                                                    21 
 22 Automatic NUMA balancing scans tasks address s     22 Automatic NUMA balancing scans tasks address space and unmaps pages to
 23 detect if pages are properly placed or if the      23 detect if pages are properly placed or if the data should be migrated to a
 24 memory node local to where the task is running     24 memory node local to where the task is running.  Every "scan delay" the task
 25 scans the next "scan size" number of pages in      25 scans the next "scan size" number of pages in its address space. When the
 26 end of the address space is reached the scanne     26 end of the address space is reached the scanner restarts from the beginning.
 27                                                    27 
 28 In combination, the "scan delay" and "scan siz     28 In combination, the "scan delay" and "scan size" determine the scan rate.
 29 When "scan delay" decreases, the scan rate inc     29 When "scan delay" decreases, the scan rate increases.  The scan delay and
 30 hence the scan rate of every task is adaptive      30 hence the scan rate of every task is adaptive and depends on historical
 31 behaviour. If pages are properly placed then t     31 behaviour. If pages are properly placed then the scan delay increases,
 32 otherwise the scan delay decreases.  The "scan     32 otherwise the scan delay decreases.  The "scan size" is not adaptive but
 33 the higher the "scan size", the higher the sca     33 the higher the "scan size", the higher the scan rate.
 34                                                    34 
 35 Higher scan rates incur higher system overhead     35 Higher scan rates incur higher system overhead as page faults must be
 36 trapped and potentially data must be migrated.     36 trapped and potentially data must be migrated. However, the higher the scan
 37 rate, the more quickly a tasks memory is migra     37 rate, the more quickly a tasks memory is migrated to a local node if the
 38 workload pattern changes and minimises perform     38 workload pattern changes and minimises performance impact due to remote
 39 memory accesses. These files control the thres     39 memory accesses. These files control the thresholds for scan delays and
 40 the number of pages scanned.                       40 the number of pages scanned.
 41                                                    41 
 42 ``scan_period_min_ms`` is the minimum time in      42 ``scan_period_min_ms`` is the minimum time in milliseconds to scan a
 43 tasks virtual memory. It effectively controls      43 tasks virtual memory. It effectively controls the maximum scanning
 44 rate for each task.                                44 rate for each task.
 45                                                    45 
 46 ``scan_delay_ms`` is the starting "scan delay"     46 ``scan_delay_ms`` is the starting "scan delay" used for a task when it
 47 initially forks.                                   47 initially forks.
 48                                                    48 
 49 ``scan_period_max_ms`` is the maximum time in      49 ``scan_period_max_ms`` is the maximum time in milliseconds to scan a
 50 tasks virtual memory. It effectively controls      50 tasks virtual memory. It effectively controls the minimum scanning
 51 rate for each task.                                51 rate for each task.
 52                                                    52 
 53 ``scan_size_mb`` is how many megabytes worth o     53 ``scan_size_mb`` is how many megabytes worth of pages are scanned for
 54 a given scan.                                      54 a given scan.
                                                      

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php