This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
Re: [PATCH] Add versions of wcscpy, wcschr, wcsrchr for power6/power7.
- From: "Ryan S. Arnold" <ryan dot arnold at gmail dot com>
- To: will_schmidt at vnet dot ibm dot com
- Cc: libc-alpha at sourceware dot org, willschm at us dot ibm dot com
- Date: Wed, 22 Aug 2012 11:21:43 -0500
- Subject: Re: [PATCH] Add versions of wcscpy, wcschr, wcsrchr for power6/power7.
- References: <20120613153521.32581.21541.stgit@brimstone><CAAKybw_8-OdPj9=eE0QydBk7UZsctZ+8ZC7CD-Qqh3w6uEC2_A@mail.gmail.com><1339793296.3211.27.camel@brimstone>
On Fri, Jun 15, 2012 at 3:48 PM, Will Schmidt <will_schmidt@vnet.ibm.com> wrote:
> On Fri, 2012-06-15 at 12:59 -0500, Ryan S. Arnold wrote:
>> On Wed, Jun 13, 2012 at 10:35 AM, Will Schmidt
>> <will_schmidt@vnet.ibm.com> wrote:
>> > Add versions of wcscpy, wcschr, wcsrchr for power6/power7.
>> >
>> > Initially based on the versions found in wcsmbs/* ; these files
>> > have been changed by hand unrolling, and adding some additional
>> > variables to allow some read-ahead to occur, which then relieves
>> > some of the wait-for-increment/wait-for-load/wait-for-compare-results
>> > pressure that was slowing down every iteration through the while-loop.
>> >
>> > For 64-bit Power7, These changes give an approx 20% throughput boost for
>> > the wcschr and wcsrchr functions; and approx 40% boost for the
>> > wcscpy function. 32-bit improvements appear to be slightly better
>> > with ~ %30 and ~ %45 respectively. Results for Power6 closely match
>> > those for power7.
>> >
>> > Passed make check with no regressions.
>> >
>> > ---
>> >
>> > 2012-06-12 Will Schmidt <will_schmidt@vnet.ibm.com>
>> >
>> > * powerpc32/power6/wcschr.c: New file.
>> > * powerpc32/power6/wcscpy.c: New file.
>> > * powerpc32/power6/wcsrchr.c: New file.
>> > * powerpc64/power6/wcschr.c: New file.
>> > * powerpc64/power6/wcscpy.c: New file.
>> > * powerpc64/power6/wcsrchr.c: New file.
>>
>> Hey Will, thanks for the patch. Can you file a bugzilla under
>> enhancement and target it for 2.17 so that we don't forget it? We'll
>> address this once the 2.16 branch is baked.
>
> Done.
> http://sourceware.org/bugzilla/show_bug.cgi?id=14252
I retested the patch against HEAD and it builds and passes make check
for powerpc32 and powerpc64.
I pushed the fix upstream with git commit
15d0da8cb36f5c96a3c649d29a2e2623e995cd49
I'll close out the bugzilla.
Ryan