On Tuesday, April 26, 2011 02:22:34 AM Tom Lane wrote: > Robert Haas <robertmh...@gmail.com> writes: > > On Mon, Apr 25, 2011 at 5:45 PM, Andres Freund <and...@anarazel.de> wrote: > >> [ lots of awesome test results ] > > > > Very interesting work. I think it's interesting that there is so much > > allocation happening inside MessageContext; I barely knew that > > existed, let alone that it was a hotspot for memory allocation. > > The reason it shows as a hotspot is that parsing and planning happen in > that context for the simple-Query code path. You'd get different > answers if you were using extended-query protocol, or running prepared > statements, or doing the bulk of your work in plpgsql, etc etc. > > It would be interesting if Andres could dig down another level or so in > the call stack to see where the list creations etc are called from, but > I'll bet quite a bit that what we're looking at is mostly parse/plan > activity. (The high showing of bitmapset activity is a dead tipoff for > planner, in particular, since that datatype is hardly used at all > elsewhere.) Currently thats just output via
#define MemoryContextAlloc(context, size) \ TraceMemoryContextAlloc(context, size, __FILE__, __FUNCTION__, __LINE__, \ __builtin_constant_p(size)) which in turn then calls the ordinary MemoryContextAlloc (yes, ugly I know). But I guess it shouldn't be a problem to get more information... Andres -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers