Re: Multiple MSI, take 3

From: Matthew Wilcox
Date: Fri Jul 11 2008 - 06:42:23 EST


On Fri, Jul 11, 2008 at 03:32:42AM -0700, David Miller wrote:
> From: Matthew Wilcox <matthew@xxxxxx>
> Date: Fri, 11 Jul 2008 04:23:26 -0600
>
> > On Fri, Jul 11, 2008 at 03:06:33AM -0700, Eric W. Biederman wrote:
> > > So unless the performance of the AHCI is better by a huge amount I don't
> > > see the point, and even then I am extremely sceptical.
> >
> > I don't have performance numbers yet, but surely you can see that
> > avoiding a register read in the interrupt path is a large win?
>
> Such overhead is going to be amortized.
>
> AHCI is not like networking where we have lots of very small
> transactions to deal with, and therefore the per-IRQ overhead can
> begin to dominate.
>
> Therefore, like Eric, I think workng on multiple MSI is a very dubious
> usage of one's time. But, it's your time, so use it how you wish :)

I didn't start hacking without performance numbers ;-) With an
I/O-heavy workload, the two biggest consumers of CPU time in the profile
were ahci_interrupt and ahci_qc_issue. I got 10% more bandwidth by
removing the flushing readl() from ahci_qc_issue. I'm hoping for a
similar improvement by removing this readl() too.

--
Intel are signing my paycheques ... these opinions are still mine
"Bill, look, we understand that you're interested in selling us this
operating system, but compare it to ours. We can't possibly take such
a retrograde step."
--
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/