No, as I said, as per my observation your connection will not use your work mem unless there is a sort happening,
but Yes, every connection uses certain amount of RAM, some documents say it 5 MB and some say it is 1.9 MB. Expert review may be needed on my observation. On Mon, 10 Feb, 2020, 4:00 PM Ayub M, <hia...@gmail.com> wrote: > Thanks, for q2 - if work_mem is a limit before spilling onto disk, is > there a min amount of memory which gets allocated to each session when it > starts? > > On Mon, Feb 10, 2020 at 3:51 AM Naresh g <naresh5...@gmail.com> wrote: > >> 1. Yes, by default it is advisable to set 25% of RAM to shared buffers >> because community version postgres highly depends on OS cache, which means >> when you fetch something from disk, it is first copied to OS cache (75%) >> then to shared buffers(25%). >> Two copies of data will be there in your system RAM. >> The copy is called buffered IO. >> >> Amazon Aurora eliminates this buffered IO, hence it is not required you >> stick to restrict 25% of RAM. >> >> 2. Work_mem is just setting, if you sort something out your session uses >> than memory other wise it just lies at OS. >> >> On Mon, 10 Feb, 2020, 1:34 PM Ayub M, <hia...@gmail.com> wrote: >> >>> >>> 1. shared_buffers - In a regular PostgreSQL installation, say I am >>> allocating 25% of my memory to shared_buffers that means it leaves 75% >>> for >>> rest such as OS, page cache and work_mems etc. Is my understanding >>> correct? >>> If so, AWS Aurora for Postgres uses 75% of memory for shared_buffers, >>> then >>> it would leave just 25% for other things? >>> 2. Does the memory specified for work_mem, fully gets allocated to >>> all sessions irrespective of whether they do any sorting or hashing >>> operations? >>> >>> >>> -- >>> Regards, >>> Ayub >>> >> > > -- > Regards, > Ayub >