Messages in this thread | | | Date | Thu, 18 Feb 1999 20:06:51 +0100 (CET) | From | Ingo Molnar <> | Subject | Re: Timers in SMP |
| |
On Thu, 18 Feb 1999, Hugo Varotto wrote:
> - which CPU is interrupted by the timer ? Is it always the same ? If > not, where should I look to the mechanism of CPU selection ?
on SMP, there is not only one timer, but one timer per CPU. This is done through the local-APIC timer. So you get periodic interrupt on every CPU, every 10 msecs. The 'old' timer interrupt is active too, but it only does generic timekeeping and timer-function running. (jiffies, time adjustment, etc.). In 2.3 we definitely want to distribute timers between CPUs, this is not hard at all.
> - if we wish the interrupted CPU to preempt some of the other CPUs, is > this possible ? I understand there are some kind of interrupt mechanism > between CPUs.
yep, it's done via smp_send_reschedule(cpu). Whenever we think another CPU should be interrupted, we send a message.
-- mingo
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |