Baseado no seu comentário sobre a resposta de MikeyB, você está tentando resolver isso da maneira errada IMHO -
Tanto numactl
quanto taskset
bloquearão seu processo para uma CPU, mas não manterão outros processos fora dessa CPU.
Se alguém estiver nessa CPU quando seu processo precisar, você terá que esperar.
Uma solução melhor é definir o valor nice
do seu processo para algo que faça com que ele capture agressivamente a CPU (algo como -20) e, se ainda não for suficiente, defina o processo como realtime priority
usando o rtprio , e deixe o agendador fazer o que ele tem que fazer para garantir que o seu processo tenha sempre CPU ciclos quando ele pede para eles.
Tentar enganar o agendador é, como MikeyB apontou, geralmente uma Idéia Ruim. Deixe-o fazer o que foi projetado para fazer e solicite os ciclos de CPU da maneira CERTA ( nice
values e rtprio
).