Skip to content

New autorps utility doesn't afraid of difficulties!

Compare
Choose a tag to compare
@strizhechenko strizhechenko released this 09 Jul 09:45
· 147 commits to master since this release

Autorps didn't work in systems with multiple NUMA-nodes or CPU sockets before, because it had been calculating cpu mask by total cpu count and wasn't aware of CPU/NUMA topology.

It has been rewritten in python. Now you can:

  1. Use it on single-queue NICs in multinuma systems. CPU socket/NUMA node to bind network packet processing will be chosen automatically (rss-ladder is able to do it too!) by reading /sys/class/net/$NIC/device/numa_node (fallback - 0).
  2. --force it to work with multiqueue NIC.
  3. Pass custom CPU mask. --cpu-mask=fe
  4. Pass custom CPU list --cpus 0 2 4 6 (in the end of options).
  5. Test it before using by --dry-run: it will print something like Using mask 'fc0' for eth0-rx-0.
  6. Explicitely define socket to bind queues by --socket=1. Why would you ever need it? Because you may found out that moving this nic to external NUMA-node gives you better performance than put all your NIC's on the device's local NUMA-node (and you can't put NIC in this NUMA-node's PCI slot right now).

Also I accidentally drop .pylintrc in repo and fixed all small pep8 violations and other code smells that landscape.io was hiding with default settings.