PostgreSQL - memory management internals
PostgreSQL uses memory for several purposes such as caching data (buffer cache), supporting user scenarios like query processing (work mem), as managed memory for internal use (memory context) and more. We will look at how each of these memory semantics is configured and used. Further we will dig into the internals of how PostgreSQL implements them.
For a PostgreSQL user this talk will provide insights into knobs available to manage memory. For PostgreSQL developers this talk will provide insights of how each of those layers of memory are implemented, the latest on what is happening in memory management in PostgreSQL etc.
We will also include some demos of scenarios, existing tools, utilities, and conclude with exploration of some work in progress in this space.