Skip to content

Commit 4ca5b76

Browse files
committed
Added information about core affinity inheritance
1 parent b6bd3a5 commit 4ca5b76

1 file changed

Lines changed: 19 additions & 2 deletions

File tree

docs/rule_behavior_and_tips.md

Lines changed: 19 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,8 @@
1010
## Table of Contents
1111

1212
1. [Rule Priority](#rule-priority)
13-
2. Common Rule Usage Tips
13+
2. [Core Affinity Inheritance in Windows](#core-affinity-inheritance-in-windows)
14+
3. Common Rule Usage Tips
1415
- [Ignoring a Process](#ignoring-a-process)
1516
- [Rule for All Processes](#rule-for-all-processes)
1617
- [Disabling Hyperthreading](#disabling-hyperthreading)
@@ -29,6 +30,22 @@ first matching process rule.
2930
3031
<p align="right">(<a href="#document-top">back to top</a>)</p>
3132

33+
## Core Affinity Inheritance in Windows
34+
35+
In **Windows**, child processes inherit the core affinity settings from their parent processes. For example, if the
36+
parent process (`explorer.exe`) is restricted to cores 0 and 1, any process launched by it, such as `example.exe`, will
37+
inherit this restriction and be limited to those same cores.
38+
39+
This behavior means you should carefully configure rules, especially when using wildcard rules like `*`, which apply to
40+
[all processes](#rule-for-all-processes).
41+
42+
### Sources:
43+
44+
- [Windows Inheritance Documentation](https://learn.microsoft.com/en-us/windows/win32/procthread/inheritance)
45+
- [Why is processor affinity inherited by child processes?](https://devblogs.microsoft.com/oldnewthing/20050817-10/?p=34553)
46+
47+
<p align="right">(<a href="#document-top">back to top</a>)</p>
48+
3249
## Ignoring a Process
3350

3451
To ignore a process without applying any specific settings:
@@ -48,7 +65,7 @@ To apply a rule to all processes:
4865

4966
1. Go to the **Process Rules** tab.
5067
2. Add a new rule.
51-
3. Set **Process Selector** to `*` to match all processes.
68+
3. Set **Process Selector** to `*` to match all processes (the `*` symbol acts as a wildcard, matching any sequence of characters in the process name).
5269
4. Configure the desired settings (e.g., affinity, priority).
5370
5. Place this rule at the bottom of the list to allow more specific rules to take precedence.
5471

0 commit comments

Comments
 (0)