Messages in this thread | | | Subject | Re: [linux-audio-dev] Re: [announce] [patch] Voluntary Kernel Preemption Patch | From | Lee Revell <> | Date | Tue, 20 Jul 2004 01:38:27 -0400 |
| |
On Mon, 2004-07-19 at 06:48, Ingo Molnar wrote: > * Lee Revell <rlrevell@joe-job.com> wrote: > > > Just as a reference point, what do you think is the longest delay I > > *should* be seeing? I recall hearing that BEOS guaranteed that > > interrupts are never disabled for more than 50 usecs. This seems > > achievable, as the average delay I am seeing is 15 usecs. > > ATA hardirq latency can be as high as 700 usecs under load even on > modern hw, when big DMA requests are created with long scatter-gather > lists. We also moved some of the page IO completion code into irq > context which further increased hardirq latencies. Since these all touch > cold cachelines it all adds up quite quickly. >
Does this scale in a linear fashion with respect to CPU speed? You mentioned you were testing on a 2Ghz machine, does 700 usecs on that translate to 2800 usecs on a 500Mhz box?
On a 2Ghz machine, 700 usecs is about one million CPU cycles. In other words, the highest priority process can become runnable, then have to wait *one million cycles* to get the CPU.
How much I/O do you allow to be in flight at once? It seems like by decreasing the maximum size of I/O that you handle in one interrupt you could improve this quite a bit. Disk throughput is good enough, anyone in the real world who would feel a 10% hit would just throw hardware at the problem.
Lee
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |