]> granicus.if.org Git - postgresql/commit
Modify local buffer management to request memory for local buffers in blocks
authorTom Lane <tgl@sss.pgh.pa.us>
Wed, 27 Dec 2006 22:31:54 +0000 (22:31 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Wed, 27 Dec 2006 22:31:54 +0000 (22:31 +0000)
commit72619f81916315658711cf35bcb2d3c993960bd4
tree4e099ffafe125c8b574cc8d16199a365315266fd
parentc22dea89004b99af099cb31139f8aeb5bcb8840d
Modify local buffer management to request memory for local buffers in blocks
of increasing size, instead of one at a time.  This reduces the memory
management overhead when num_temp_buffers is large: in the previous coding
we would actually waste 50% of the space used for temp buffers, because aset.c
would round the individual requests up to 16K.  Problem noted while studying
a performance issue reported by Steven Flatt.

Back-patch as far as 8.1 --- older versions used few enough local buffers
that the issue isn't significant for them.
src/backend/storage/buffer/localbuf.c