lkml.org 
[lkml]   [2012]   [May]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 2/3] x86: x2apic/cluster: Make use of lowest priority delivery mode

* Alexander Gordeev <agordeev@redhat.com> wrote:

> > So I think we need to tread carefully here.
>
> Kernel parameter? IRQ line flag? Totally opposed? :)

Undecided and sceptical, because: -ENONUMBERS :-)

The kernel actually tries to have as much locality as we can
hide from the user.

For example we don't execute tasks for 100 usecs on one CPU,
then jump to another CPU and execute 100 usecs there, then to
yet another CPU to create an 'absolutely balanced use of CPU
resources'. Why? Because the cache-misses would be killing us.

When a device is generating ten thousand irqs a second then
round-robining the IRQs is equivalent to switching a CPU every
100 usecs.

There's another cost: tasks tend to try to migrate to sources of
wakeups. So if an IRQ wakes up a task then we will try to
execute the task locally, to have locality of access between the
data that the IRQ handler has touched, and the task that makes
use of it. Round-robining the IRQ in that situations means that
the task either follows the IRQ and round-robins (bad), or that
it stays remote to the IRQ data (not good either).

So, I'm sceptical :-/

Your other two patches looked sensible - will they apply fine
after each other, without the round-robin patch which is still
under discussion, or is there a dependency?

Thanks,

Ingo


\
 
 \ /
  Last update: 2012-05-21 17:41    [W:1.423 / U:0.008 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site