Re: strncmp->memcmp when we know the shorter length
От | Robert Haas |
---|---|
Тема | Re: strncmp->memcmp when we know the shorter length |
Дата | |
Msg-id | AANLkTi=0OK7WTuptSa=mvtt2iH3RjP6yd6R3JcQtMOyN@mail.gmail.com обсуждение исходный текст |
Ответ на | strncmp->memcmp when we know the shorter length (Noah Misch <noah@leadboat.com>) |
Ответы |
Re: strncmp->memcmp when we know the shorter length
Re: strncmp->memcmp when we know the shorter length |
Список | pgsql-hackers |
On Mon, Dec 20, 2010 at 1:10 PM, Noah Misch <noah@leadboat.com> wrote: > When the caller knows the smaller string length, memcmp and strncmp are > functionally equivalent. Since memcmp need not watch each byte for a NULL > terminator, it often compares a CPU word at a time for better performance. The > attached patch changes use of strncmp to memcmp where we have the length of the > shorter string. I was most interested in the varlena.c instances, but I tried > to find all applicable call sites. To benchmark it, I used the attached > "bench-texteq.sql". This patch improved my 5-run average timing of the SELECT > from 65.8s to 56.9s, a 13% improvement. I can't think of a case where the > change should be pessimal. This is a good idea. I will check this over and commit it. -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company
В списке pgsql-hackers по дате отправления: