The problem

When does moving a task to a less-loaded CPU cost more than leaving the imbalance in place?

What current research shows

Task migration changes the CPU run queue and can change which cache hierarchy and NUMA memory the task uses. Linux therefore balances two competing goals: preserve locality and avoid leaving capacity unused. The kernel's NUMA and capacity documentation makes the topology dependence explicit.

Where the evidence stops

The cost is workload-specific. A compute-bound task with little reuse may tolerate migration; a memory-heavy or latency-sensitive task may not.

What Valen Systems is testing

Compare migration count, cache-miss rate, remote-memory traffic, tail latency, and useful work under matched load-balance policies.

Sources

Linux scheduler: capacity-aware schedulingLinux scheduler debugfs: NUMA balancingLinux scheduler: schedutil and PELT