>Mala Anand wrote:
>> Here is a 2.5.19 patch that improves the performance of IA32
>> and copy_from_user routines used by :
>> (1) tcpip protocol stack
>> (2) file systems
>This came up about a year back when zerocopy networking was merged.
>Intel boxes started running more slowly purely because of the 8+8
>I changed tcp to use a different copy if either source or dest were
>not eight-byte aligned, and found that the resulting improvement
>across a mixed networking load was only 1%. Your numbers are higher,
>so perhaps there are different alignments in the mix...
I will test on other workloads when I return back to work after OLS
and vacation. However we tested an earlier version of this patch on
Netbench using sendfile and gained around 3% improvement. The baseline
profiling showed that Netbench was spending 10% in generic_copy_to_user.
The tcp options are aligned on an 4-byte boundary, so depending on the
options used the address to the data (source address to the
generic_copy_to_user) should fall on an 4 or 8 byte boundary. I agree
with you more test is needed.
>One question: have you tested on other CPU types? This problem is
>very specific to Intel hardware. On AMD, the eight-byte alignement
>artifact does not exist at all. It could be that your patch is not
>desirable on such CPUs?
I tested only Pentium II and III. I will test it on Pentium IV.
When I said 8-byte alignment, it is 8 and greater. I will
try to check out AMD also.
Linux Technology Center - Performance
<firstname.lastname@example.org> To: Mala Anand/Austin/IBM@IBMUS
Sent by: cc: Linux Kernel Mailing List <email@example.com>,
Subject: Re: efficient copy_to_user and copy_from_user routines in Linux Kernel
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to firstname.lastname@example.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
This archive was generated by hypermail 2b29 : Sun Jun 30 2002 - 22:00:13 EST