On Mon, Jul 18, 2016 at 10:03 AM, Greg Stark <st...@mit.edu> wrote: > On Mon, Jul 18, 2016 at 2:41 PM, <amatv...@bitec.ru> wrote: >> And I will be really happy when there are processors with infinite >> performance and memory with infinite size. >>:))) > > Well for what it's worth there's no theoretical difference between > multi-process and multi-threaded. They're just two different APIs to > create shared memory and other kernel data structures and they both > allow all the sharing you want. In the API Postgres uses everything > starts out non-shared and we explicitly set up the parts we want > shared. In the other nearly everything starts shared though it's > possible to unshare parts. Once they're set up the CPU and MMU don't > really care what kernel API was used to set them up.
That's totally true, but allocating additional shared memory after system startup is a pain. It's true that we now have DSM, but the fact that DSM segments can be mapped in different addresses in different processes is a nuisance. We will still get a lot of benefit out of having DSM, but it's not right to imply that threading wouldn't make things easier. -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise PostgreSQL Company -- Sent via pgsql-hackers mailing list (email@example.com) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers