Live data from Hacker News

Memory Size Matters to PostgreSQL

pgdba.org

11–13 of 13 posts

Re: Memory Size Matters to PostgreSQL

#11
post #8
post #5

Earlier quoted context omitted.

Beware, the first link appears to be AI slop with at least some bogus information. For example, it says "While PostgreSQL 15 introduced basic WAL compression", but WAL compression has been around since before 15.

That's a bit unfair, don't you think? https://www.percona.com/blog/new-wal-archive-module-library-...

The pgedge article talks about WAL compression, not WAL archiving. It specifically mentions wal_compression parameter, which has been around since PostgreSQL 9.5: https://www.postgresql.org/docs/9.5/runtime-config-wal.html#...

Re: Memory Size Matters to PostgreSQL

#12
I love working with postgres, but this is one array where it needs a lot more love. If I deploy MongoDB it takes the whole machine and does its thing. With postgres, you have extremely minimalistic defaults, and then you have to turn a zillion knobs before it does what it should.

For beginners, it is a huge footgun, that makes people assume bad performance while evaluating. For the experienced PG admin, it is an annoiance and a time waster. Oh, the VM just gained 64GB RAM? PG will sit there and stare at it.

Apart from that, basically everyone starts with the PG guidelines or a generated template(25% for this, 25% divided by number of sessions for that). Then you keep wondering how much performance you left on the table.

Re: Memory Size Matters to PostgreSQL

#13
post #9
post #7

I don't fully understand this article but this point stuck out as probably fractally wrong: Modern DDR4 memories have a theoretical throughput of 25-30 GB/s. This is more realistically ranging between 5-10 GB/s. With a 100 GB full packed shared buffer the time required to perform one single full scan ranges between 3 and 20 seconds. Obviously DDR5 now exists and servers have multiple memory channels giving total memo…

Even saying 25-30GB/s is weird. DDR4-3200 is ~26GB/s per channel, and is the upper end of what you'll see on ECC DDR4. DDR5-5600 is common now, and is ~45GB/s. Zen 2/3 Epycs on SP3 have 8 channels, Zen 4/5 Epycs on the SP5 have 12 channels per socket, and with both you get to have two sockets. That'd be ~410GB/s on dual socket SP3 and ~1080GB/s on dual socket SP5. So, yeah, RAM goes brrr.

Yeah, but that ram is (somewhat) divided by the number of cores which has also gone up. That's why AMD will sell CPUs with 1 or 2 cores per CCD (instead of 6,8, or 16). I think they have an F in the middle of the numbers.
Post reply on HN