Running code on an isolated core

Vladimir Murzin murzin.v at gmail.com
Tue Aug 23 03:09:01 EDT 2011


On Tue, Aug 23, 2011 at 9:58 AM, Vaibhav Jain <vjoss197 at gmail.com> wrote:
>
>
> On Mon, Aug 22, 2011 at 10:11 PM, Vladimir Murzin <murzin.v at gmail.com>
> wrote:
>>
>> On Tue, Aug 23, 2011 at 2:15 AM, Vaibhav Jain <vjoss197 at gmail.com> wrote:
>> > Hi,
>> > Thanks for replying but I want to do this in a SMP machine.
>> > Please help!
>> >
>> > Thanks
>> > Vaibhav Jain
>> >
>> > On Wed, Aug 17, 2011 at 10:53 PM, Vladimir Murzin <murzin.v at gmail.com>
>> > wrote:
>> >>
>> >> On Wed, Aug 17, 2011 at 11:01 PM, Vaibhav Jain <vjoss197 at gmail.com>
>> >> wrote:
>> >> > Hi,
>> >> >
>> >> > I am looking into running a program on one of the cores which is
>> >> > isolated
>> >> > (logically offline )
>> >> > from the rest of the cores. I have come to that the command
>> >> > echo 0 > /sys/device/system/cpu/<core num>/online
>> >> >
>> >> > will make a core logically offline,
>> >> > What I need to do now is to run a program on this offline core.
>> >> > Please
>> >> > suggest on how to proceed.
>> >> >
>> >> > Thanks!
>> >> > Vaibhav Jain
>> >> > _______________________________________________
>> >> > Kernelnewbies mailing list
>> >> > Kernelnewbies at kernelnewbies.org
>> >> > http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
>> >> >
>> >> >
>> >> Hi Vaibhav,
>> >>
>> >> I think it's impossible to run out a process on unplugged CPU. May be
>> >> AMP[1] is what you need, but it's a bit different approach.
>> >>
>> >> [1]http://en.wikipedia.org/wiki/Asymmetric_multiprocessing
>> >
>> >
>>
>> Hi Vaibhav,
>>
>> There is one more approach, but it's not operate on off-lined CPU.
>> Have a look at isolcpu kernel boot option.
>> Description in Documentation/kernel-parameters.txt says:
>>
>> This option can be used to specify one or more CPUs to isolate from
>> the general SMP balancing and scheduling algorithms. You can move a
>> process onto or off an "isolated" CPU via the CPU affinity syscalls or
>> cpuset. <cpu number> begins at 0 and the maximum value is "number of
>> CPUs in system - 1". 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.
>
>
>
> Hi,
>
> Thanks again! But I am asked to look into running process only when the cpu
> has been logically offlined.
> Someone suggested that I should make changes to arch/x_86/kernel/smpboot.c
> file in one of the play_dead functions. But I don't know
> what these function is doing and what changes should I make. Could you
> please give me some idea ?
>
>
> Thanks
> Vaibhav Jain

Good luck with that!



More information about the Kernelnewbies mailing list