From: J.A. Magallon
Date: Tue Mar 08 2005 - 19:45:46 EST
On 03.08, Andrew Morton wrote:
(replied to this because this is the kernel I am testing on :) )
Can cpu affinity really be changed for a running process ?
Does it need something like io or yielding to take effect ?
I am playin with Robert Love's taskset (symlinked to runon, it is easier
to type and I'm more used to it), because I want to play with hyperthreading
and wanted a method to force two threads on the same physical package.
It works fine to bound a new process to a cpu set, but I does not change
anything for a running process.
I try runon -c -p 0 <pid> for my numbercruncher and it does nothing, top
shows it is in the same cpus where it started:
werewolf:~# runon -c -p 0 8277
pid 8277's current affinity list: 0-3
pid 8277's new affinity list: 0
werewolf:~# runon -c -p 8277
pid 8277's current affinity list: 0
The program uses posix threads, 2 in this case. The two threads change from
cpu sometimes (not too often), but do not go into the same processor
immediately as when I start the program directly with runon/taskset.
Any idea ?
J.A. Magallon <jamagallon()able!es> \ Software is like sex:
werewolf!able!es \ It's better when it's free
Mandrakelinux release 10.2 (Cooker) for i586
Linux 2.6.11-jam3 (gcc 3.4.3 (Mandrakelinux 10.2 3.4.3-3mdk)) #1
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/