[Bizgres-general] Question: Is 64-bit cache support valuable?
Hannu Krosing
hannu at skype.net
Thu Jul 21 19:36:59 GMT 2005
On N, 2005-07-21 at 11:28 -0700, Josh Berkus wrote:
> Simon,
>
> > The challenge is to come up with a scheme that has these features:
> > - prevents overallocation of memory which results in swapping
> > - maximises allocation of large memory servers
> > - allows heavy memory users to "go large" when they need to
> > - prevents low memory users from conflicting with heavy users/each other
> > - allows the administrator to have control over the system
> > - allows some level of control at user level e.g. "need lots, please"
> > - must be easy enough to get right in real-world use, not benchmarks
> > - also need to take into account temp_buffers settings
> > - there may also be a requirement for predictability, so that important
> > regular tasks can complete in known durations or by deadlines
>
> Sounds good but too complicated for a first implementation. I'd narrow down
> the critical features to:
>
> 1. Allow 64-bit work_mem (and maintenance_work_mem) allocation.
> 2. Add a total_work_mem limit which would be tracked for work_mem,
> maintenance_work_mem, and temp_buffers.
> 3. Add a system where processes requesting over the limit or total_work_mem
> would block and wait.
I think blocking is too harsh - perhaps a system where a backend can ask
for amount available, and then decide itself if it will be enough and it
can carry on with it, or should it wait.
> I think that would be enough code for a first, useful implementation and
> further improvements would be suggested by the users/results. Adding the
> hooks for centralized tracking and management of allocated memory will be
> enough code as it is.
>
--
Hannu Krosing <hannu at skype.net>
More information about the Bizgres-general
mailing list