Re: [Question] Include isolated cpu to ensure that tasks are not scheduled to isolated cpu?

From: Waiman Long
Date: Sun Sep 01 2024 - 23:00:41 EST


On 9/1/24 21:56, zhengzucheng wrote:
In a cpuset subsystem, cpuset.cpus contains isolated cpu and non-isolated cpu.
Is there any way to ensure that the task runs only on the non-isolated cpus?
eg:
isolcpus=1, cpusete.cpus=0-7. It is found that some tasks are scheduled to cpu1.

In addition, task run on isolated cpu cann't be scheduled to other cpu in the future.

The best way is to avoid mixing isolated and scheduling CPUs in the same cpuset especially if you are using cgroup v1.

If you are using cgroup v2, one way to avoid the use of isolated CPUs is to put all of them into an isolated partition. This will ensure that those isolated CPUs won't be used even if they are put into the cpuset.cpus of other cpusets accidentally

Cheers,
Longman