Re: micro-optimizing json.c

Поиск
Список
Период
Сортировка
От Jeff Davis
Тема Re: micro-optimizing json.c
Дата
Msg-id 8d5cce64d7413eff04c5595a0a80d2b5a809e2fe.camel@j-davis.com
обсуждение исходный текст
Ответ на micro-optimizing json.c  (Nathan Bossart <nathandbossart@gmail.com>)
Ответы Re: micro-optimizing json.c  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-hackers
On Thu, 2023-12-07 at 17:12 -0600, Nathan Bossart wrote:
> Here's a patch that removes a couple of strlen() calls that showed up
> prominently in perf for a COPY TO (FORMAT json) on 110M integers.  On
> my
> laptop, I see a 20% speedup from ~23.6s to ~18.9s for this test.

Nice improvement. The use of (len = ...) in a conditional is slightly
out of the ordinary, but it makes the conditionals a bit simpler and
you have a comment, so it's fine with me.

I wonder, if there were an efficient cast from numeric to text, then
perhaps you could avoid the strlen() entirely? Maybe there's a way to
use a static buffer to even avoid the palloc() in get_str_from_var()?
Not sure these are worth the effort; just brainstorming.

In any case, +1 to your simple change.

Regards,
    Jeff Davis




В списке pgsql-hackers по дате отправления:

Предыдущее
От: Nathan Bossart
Дата:
Сообщение: micro-optimizing json.c
Следующее
От: Jeff Davis
Дата:
Сообщение: Re: Improve WALRead() to suck data directly from WAL buffers when possible