3

Suppose I have an 18 core CPU with SMT enabled, and there are 18 long runnning processes, all using ~100% of a thread. If I start a 19th process, the kernel will schedule it to run on one of the cores, as a hypersibling of one of the 18 other processes.

If that 19th process is something I want to have complete faster without interrupting the first 18, I would want to ask the kernel to "give that one an entire core", and push one of the rest to be a hypersibling.

In other words, I want to flag the 19th process to never be scheduled on a thread which has a hypersibling in use by another process.

Using nice -20 does not seem to work for this purpose.

uLoop
  • 141
  • https://unix.stackexchange.com/questions/326579/how-to-ensure-exclusive-cpu-availability-for-a-running-process/326585 – Rui F Ribeiro Dec 15 '21 at 09:19
  • FYI, four years later, the answer given in the comment by @RuiFRibeiro - isolcpus - is now deprecated. That link recommends using cgroups to do it, which is what containers are based on. – Aaron D. Marasco Dec 15 '21 at 23:55

0 Answers0