How to Completely Disable ‘IRqbalance’ (Interrupt Balancing Daemon) in Ubuntu Server

In modern multi-core Linux systems, hardware interrupts (signals from network cards, storage controllers, and other peripherals) must be handled by the CPU. By default, Ubuntu Server runs a daemon called irqbalance. This service constantly monitors interrupt traffic and automatically redistributes these hardware interrupts across all available CPU cores, preventing any single core from becoming a bottleneck during high I/O loads.

While this sounds beneficial for a general-purpose server, it is highly detrimental for latency-sensitive applications. If you are running a high-frequency trading algorithm, a real-time audio processing engine, or a massively optimized database server, the constant shifting of interrupts between cores destroys CPU cache locality, leading to unpredictable latency spikes. In high-performance computing (HPC) environments, system administrators prefer to statically bind specific hardware interrupts to dedicated CPU cores (using smp_affinity) to guarantee deterministic performance. To implement manual interrupt pinning, you must first completely disable the irqbalance daemon, otherwise, it will aggressively overwrite your manual configurations.

Disabling the IRqbalance Daemon via Systemd

You must stop the running service and permanently disable it from launching during the boot sequence.

  1. Open a Terminal session (or connect to your server via SSH).
  2. Stop the currently running instance of the daemon with root privileges:
    sudo systemctl stop irqbalance
  3. Permanently disable the service so it cannot automatically start on the next boot:
    sudo systemctl disable irqbalance

Masking and Purging the Service

To ensure absolute system sterility and guarantee that an automated software update never accidentally resurrects the daemon, you should mask the service and remove the package entirely.

  1. Mask the service to create a symlink to /dev/null, making it mathematically impossible to start:
    sudo systemctl mask irqbalance
  2. Purge the software package and its configuration files using the APT package manager:
    sudo apt-get purge irqbalance -y

Your Ubuntu Server is now completely free of automated interrupt balancing. All hardware interrupts will now default to CPU Core 0, or wherever they are directed by your manual /proc/irq/*/smp_affinity configurations. Your CPU cache will remain hot, and your latency-sensitive applications will run with absolute, deterministic consistency.

Get the best tech tips delivered straight to your inbox.

Join thousands of readers mastering Apple, Google, Microsoft, and Linux.