Re: Cutting initdb's runtime (Perl question embedded)

From: Andres Freund <andres(at)anarazel(dot)de>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: Andreas Karlsson <andreas(at)proxel(dot)se>, pgsql-hackers(at)postgreSQL(dot)org
Subject: Re: Cutting initdb's runtime (Perl question embedded)
Date: 2017-04-13 20:42:23
Message-ID: 20170413204223.7znfwllhqmglzaam@alap3.anarazel.de
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 2017-04-13 14:05:43 -0400, Tom Lane wrote:
> Andres Freund <andres(at)anarazel(dot)de> writes:
> > On 2017-04-13 12:56:14 -0400, Tom Lane wrote:
> >> Andres Freund <andres(at)anarazel(dot)de> writes:
> >>> Cool. I wonder if we also should remove AtEOXact_CatCache()'s
> >>> cross-checks - the resowner replacement has been in place for a while,
> >>> and seems robust enough. They're now the biggest user of time.
>
> >> Hm, biggest user of time in what workload? I've not noticed that
> >> function particularly.
>
> > Just initdb. I presume it's because the catcaches will frequently be
> > relatively big there.
>
> Hm. That ties into something I was looking at yesterday. The only
> reason that function is called so much is that bootstrap mode runs a
> separate transaction for *each line of the bki file* (cf do_start,
> do_end in bootparse.y). Which seems pretty silly.

Indeed.

> On the whole, though, we may be looking at diminishing returns here.
> I just did some "perf" measurement of the overall "initdb" cycle,
> and what I'm seeing suggests that bootstrap mode as such is now a
> pretty small fraction of the overall cycle:
>
> + 51.07% 0.01% 28 postgres postgres [.] PostgresMain #
> ...
> + 13.52% 0.00% 0 postgres postgres [.] AuxiliaryProcessMain #
>
> That says that the post-bootstrap steps are now the bulk of the time,
> which agrees with naked-eye observation.

The AtEOXact_CatCache weren't only in bootstrap mode, but yea, it's by
far smaller wins in comparison to the regprocin thing.

Greetings,

Andres Freund

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Joe Conway 2017-04-13 20:59:37 Re: Row Level Security UPDATE Confusion
Previous Message Robert Haas 2017-04-13 20:40:29 Re: [POC] hash partitioning