Re: Shared memory usage calculations
| От | Thom Brown |
|---|---|
| Тема | Re: Shared memory usage calculations |
| Дата | |
| Msg-id | bddc86150910100729x87dbe74v871af1add0ce0d74@mail.gmail.com обсуждение исходный текст |
| Ответ на | Re: Shared memory usage calculations (Tom Lane <tgl@sss.pgh.pa.us>) |
| Ответы |
Re: Shared memory usage calculations
|
| Список | pgsql-docs |
2009/10/10 Tom Lane <tgl@sss.pgh.pa.us>
Thom Brown <thombrown@gmail.com> writes:Clearly wrong compared to what --- ie, what's the actual size of your
> I've had a look at the documentation for how much shared memory (in bytes)
> Postgres uses:
> http://www.postgresql.org/docs/8.4/static/kernel-resources.html#SHARED-MEMORY-PARAMETERS
> However, after using these calculations to work out the shared memory usage
> for my own setup, the numbers I came up with are clearly wrong.
shared memory segment? (See ipcs)
I don't actually know the size of my shared memory segment. "sysctl -a | grep -i shmseg" doesn't return anything as it hasn't been set, and not sure how to find out the default value. I didn't see that mentioned in the calculations so I didn't take it into account anywhere. But 1.7TB shared memory can't be right as the entire system memory is only 720MB.
No, it doesn't really ... shared_buffers is the first-order component.
> If I convert the sizes to kilobytes instead of bytes, it shows a total value
> of 47 megabytes, which, while not extreme, looks too low. And I am
> surprised that max_connections has relatively little bearing on the shared
> memory requirements. Is this right, or should is it more a case of it
> affecting semaphores? I was under the impression that the maximum number of
> connections played a large role in deciding shared memory limits.
Also, I'm not sure whether you realize that the native unit for these
numbers is mostly *not* bytes.
> shared_buffers = 196000000 (196MB)
> wal_buffers = 8000000 (8MB)
Neither of those parenthetical remarks are correct if that's exactly
what you wrote in postgresql.conf. It might be worth checking the
way these values are displayed in pg_settings.
The parenthesised values are what I have in postgresql.conf. I take it these are supposed to be mebibytes then? When I check the value in pg_settings, it's set at 25088 with the unit set at 8kB is 196 mebibytes. It also shows wal_buffers at 1024 with 8kB units, which would be 8 mebibytes.
I gather I'm calculating the final value wrong though. :/
Thom
В списке pgsql-docs по дате отправления: