This is the mail archive of the libc-ports@sources.redhat.com mailing list for the libc-ports project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] Optimize MIPS memcpy


On 30/10/2012, at 8:16 PM, Maxim Kuvyrkov wrote:

> On 30/10/2012, at 7:00 AM, Steve Ellcey wrote:
> 
>> On Wed, 2012-10-17 at 10:29 -0700, Steve Ellcey wrote:
>> 
>>> OK, Here is a version of memcpy that uses the STORE_STREAMING prefetch.
>>> While it is optimized for a 32 byte prefetch, it will work correctly
>>> regardless of the size of the prefetch.
>>> 
>>> Is this version OK to checkin?
>>> 
>>> Steve Ellcey
>>> sellcey@mips.com
>> 
>> Maxim,  have you had a chance to test this version of memcpy for MIPS?
> 
> I have tested your latest version.  Good news: there are no correctness issues.  Bad news: it underperforms compared to my patch by 2-3 times on both N32 and N64 (didn't test O32) on the benchmark that I used.  I've run the benchmark several times and results are consistent.  I use oprofile on libc.so to determine how much time is spent in memcpy.
> 
> Would you please confirm that your current implementation is faster on YOUR benchmark than my patch in http://sourceware.org/ml/libc-ports/2012-09/msg00000.html ?  Please make sure that PREFETCH macro in ports/sysdeps/mips/sys/asm.h gets defined to "pref", not "nop", in your build.

Andrew,

You should also have a stake in this.  Would you please benchmark Steve's patch in http://sourceware.org/ml/libc-ports/2012-10/msg00037.html vs my patch in http://sourceware.org/ml/libc-ports/2012-09/msg00000.html on your favorite benchmark and report the results?

Thank you,

--
Maxim Kuvyrkov
CodeSourcery / Mentor Graphics



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]