[Patch v2] [BZ 15884] strcoll: improve performance by removing the cache
Leonhard Holz
leonhard.holz@web.de
Mon Oct 20 20:24:00 GMT 2014
Am 17.10.2014 12:02, schrieb Siddhesh Poyarekar:
> On Tue, Oct 14, 2014 at 03:11:20PM +0200, Leonhard Holz wrote:
>> The output of the benchmark is:
>
> Thanks, the outputs look good to me. I'm going to push your strcoll
> changes, but the benchmark changes need more work. I hope you'll
> continue to work on them :)
:)
>
>> diff --git a/benchtests/Makefile b/benchtests/Makefile
>> index fd3036d..e79ceee 100644
>> --- a/benchtests/Makefile
>> +++ b/benchtests/Makefile
>> @@ -34,7 +34,7 @@ string-bench := bcopy bzero memccpy memchr memcmp memcpy memmem memmove \
>> mempcpy memset rawmemchr stpcpy stpncpy strcasecmp strcasestr \
>> strcat strchr strchrnul strcmp strcpy strcspn strlen \
>> strncasecmp strncat strncmp strncpy strnlen strpbrk strrchr \
>> - strspn strstr strcpy_chk stpcpy_chk memrchr strsep strtok
>> + strspn strstr strcpy_chk stpcpy_chk memrchr strsep strtok strcoll
>> string-bench-all := $(string-bench)
>>
>> stdlib-bench := strtod
>
> You need to ensure that the locales are generated first. The tests
> target does this already. Also my fault that I didn't point out
> earlier that you'll need to set GCONV_PATH and LOCPATH to actually
> make the test use the generated locales. Otherwise they'll just use
> the system locales.
>
I am not sure if that is the case because the used locales are not
installed on my system and before I added them to the Makefile they were
not found, but after adding and executing "make tests" it did work.
Anyhow I feel a bit overstrained by those Makefiles. I understand that
the wirings for generating the needed locales in localedata/Makefile
should be applied to benchtests/Makefile but unfortunately I do not
understand how the mechanics in localedata/Makefile actually work. Maybe
someone here can help?
Best,
Leonhard
More information about the Libc-alpha
mailing list