Hi, On 2023-06-08 12:15:58 +0200, Hannu Krosing wrote: > On Thu, Jun 8, 2023 at 11:54 AM Hannu Krosing <han...@google.com> wrote: > > > > On Wed, Jun 7, 2023 at 11:37 PM Andres Freund <and...@anarazel.de> wrote: > > > > > > Hi, > > > > > > On 2023-06-05 13:40:13 -0400, Jonathan S. Katz wrote: > > > > 2. While I wouldn't want to necessarily discourage a moonshot effort, I > > > > would ask if developer time could be better spent on tackling some of > > > > the > > > > other problems around vertical scalability? Per some PGCon discussions, > > > > there's still room for improvement in how PostgreSQL can best utilize > > > > resources available very large "commodity" machines (a 448-core / 24TB > > > > RAM > > > > instance comes to mind). > > > > > > I think we're starting to hit quite a few limits related to the process > > > model, > > > particularly on bigger machines. The overhead of cross-process context > > > switches is inherently higher than switching between threads in the same > > > process - and my suspicion is that that overhead will continue to > > > increase. Once you have a significant number of connections we end up > > > spending > > > a *lot* of time in TLB misses, and that's inherent to the process model, > > > because you can't share the TLB across processes. > > > > > > This part was touched in the "AMA with a Linux Kernale Hacker" > > Unconference session where he mentioned that the had proposed a > > 'mshare' syscall for this.
As-is that'd just lead to sharing page table, not the TLB. I don't think you currently do sharing of the TLB for parts of your address space on x86 hardware. It's possible that something like that gets added to future hardware, but ... > Also, the *static* huge pages already let you solve this problem now > by sharing the page tables You don't share the page tables with huge pages on linux. - Andres