]> 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:59 +0000 (22:31 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Wed, 27 Dec 2006 22:31:59 +0000 (22:31 +0000)
commit1e78ea0ffe1b3698bfe0b1e24295e08bbdc310f9
tree6027dce58d7d9bbe70a8ec4831078565613f6aad
parent38b72135c91491860f9882be9f5a3d0dacab64c5
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