Skip site navigation (1) Skip section navigation (2)

Peripheral Links

Header And Logo

PostgreSQL
| The world's most advanced open source database.

Site Navigation

Search archives
  Advanced Search

BLCKSZ fun facts



The smallest BLCKSZ that you can compile is 256.  But ...

The smallest BLCKSZ that actually works is 1024, because of this code in 
guc.c:

    case GUC_UNIT_BLOCKS:
        val /= (BLCKSZ / 1024);

Maybe it's worth adding an #error here to prevent smaller sizes being 
used?

The smallest BLCKSZ that passes the regression tests is 4096.  With 
smaller settings your get half a dozen ordering differences, which 
seems OK.

The shared memory configuration code in initdb doesn't know about 
BLCKSZ, so with smaller sizes you get less shared buffers.  Maybe that 
is worth fixing sometime.

Aside from that my pgbench testing clearly shows that block sizes larger 
than 2048 become progressively slower.  Go figure.

-- 
Peter Eisentraut
http://developer.postgresql.org/~petere/



Home | Main Index | Thread Index

Privacy Policy | About PostgreSQL
Copyright © 1996 – 2012 PostgreSQL Global Development Group