Browse Source

Update documentation

Serj Kalichev 6 years ago
parent
commit
fcaa741444
1 changed files with 5 additions and 1 deletions
  1. 5 1
      doc/birq.md

+ 5 - 1
doc/birq.md

@@ -73,6 +73,8 @@ The early birq releases suppose that HT is useless feature for IRQ balancing and
 
 Note current birq with disabled HT will get current affinities. The current affinity mostly use HT. Birq will not change this affinity unless the correspondent CPU is overloaded and IRQ is active. So people think the disabling of HT is not working. Really it works. It will move IRQ to the first HT thread only. But second threads already have IRQs on birq start.
 
+The Hyper Threading is enabled by default since birq-1.5.0. You can disable it using "non_local_cpus=n" option in config file.
+
 # Some BIRQ features
 
 The birq gathers statistics of CPU utilization and choose the most overloaded one. Then it choose the IRQ to move away from overloaded CPU. The balancer can use three different strategies to choose IRQ. The strategies are:
@@ -107,7 +109,7 @@ Options :
 
 The following options are legacy. Use config file instead command line options:
 
-* **-r, --ht** - Enable Hyper Threading support. The second threads will be considered as a real CPU. Not recommended.
+* **-r, --ht** - Do nothing since birq-1.5.0. Obsoleted. See "ht" option in config file.
 * **-t <float>, --threshold=<float>** - Threshold to consider CPU is overloaded, in percents. Float value. Default threshold is 99%.
 * **-l <float>, --load-limit=<float>** - Don't move IRQs to CPUs loaded more than this limit, in percents. Default limit is 95%.
 * **-i <sec>, --short-interval=<sec>** - Short iteration interval in seconds. It will be used when the overloaded CPU is found. Default is 2 seconds.
@@ -128,6 +130,8 @@ Options:
 * **long-interval=<sec>** - Long iteration interval in seconds. It will be used when there is no overloaded CPUs. Default is 5 seconds.
 * **strategy=<strategy>** - Strategy for choosing IRQ to move. The possible values are "min", "max", "rnd". The default is "rnd".
 * **exclude-cpus=<cpumap>** - It allows to exclude some CPUs from the list of CPUs that process IRQs. The 'cpumap' is bit-mask in hex format like in /proc/irq/*/smp_affinity files.
+* **ht=<y/n>** - Consider Hyper Threading as a real CPU. Recommended. Default is "y" since birq-1.5.0.
+* **non_local_cpus=<y/n>** - The prefered CPUs to move IRQ to is local CPUs (local NUMA node). By default BIRQ move IRQs to the local CPUs only. But sometimes in a case of a high load it can be better to move IRQ to non-local CPU than process it on overloaded local CPU. Use "y" if you want to use non-local CPUs.
 
 # Proximity