Re: isolcpus weirdness

Nick Piggin
2006-02-23T13:38:01Z

Emmanuel Pacaud wrote:
> Le jeudi 23 février 2006 à 23:21 +1100, Nick Piggin a écrit :
>
>>Emmanuel Pacaud wrote:
>>
>>>Hi,
>>>
>>>When specifying isolcpus kernel parameters, isolated cpu is always the
>>>same, not the one I asked for.
>
> ..
>
>>>What's wrong ?
>>>
>>
>>If you have 2 CPUs, and "isolate" one of them, the other is isolated
>>from it. Ie. there is no difference between isolating one or the other,
>>the net result is that they are isolated from each other.
>>
>
>
>>From kernel-parameters.txt:
>
> + isolcpus= [KNL,SMP] Isolate CPUs from the general scheduler.
> + Format: <cpu number>, ..., <cpu number>
> + This option can be used to specify one or more CPUs
> + to isolate from the general SMP balancing and scheduling
> + algorithms. The only way to move a process onto or off
> + an "isolated" CPU is via the CPU affinity syscalls.
> +
> + This option is the preferred way to isolate CPUs. The
> + alternative - manually setting the CPU mask of all tasks
> + in the system can cause problems and suboptimal load
> + balancer performance.
>
> There's a difference between isolated cpus and other cpus: by default,
> there's almost no activity on isolated ones. That's what I want to be
> able to do.
>

Nothing in kernel-parameters.txt says there will be almost no activity
on them. What you see is what you get, AFAIKS. It would seem strange
to me if isolating one CPU in a 2 CPU machine behaved differently from
isolating the other.

Isolating is really in the context of isolating it from scheduler
balancing, rather than suggesting no tasks will run on there. One way
you could make this do what you want is to bind the init process to
your non-isolated-CPU at boot. This is a policy decision that can be
done in userspace though.

--
SUSE Labs, Novell Inc.
Send instant messages to your online friends http://au.messenger.yahoo.com