On Mon, 17 Jun 2019 11:15:29 +0900
Inada Naoki <[email protected]> wrote:
>
> Increasing pool size is one obvious way to fix these problems.
> I think 16KiB pool size and 2MiB (huge page size of x86) arena size is
> a sweet spot for recent web servers (typically, about 32 threads, and
> 64GiB), but there is no evidence about it.
Note that the OS won't give a huge page automatically, because memory
management becomes much more inflexible then.
For example, the Linux madvise() man page has this to say about
MADV_HUGEPAGE:
This feature is primarily aimed at applications that
use large mappings of data and access large regions of
that memory at a time (e.g., virtualization systems
such as QEMU). It can very easily waste memory (e.g.,
a 2 MB mapping that only ever accesses 1 byte will
result in 2 MB of wired memory instead of one 4 KB
page). See the Linux kernel source file Documenta‐
tion/vm/transhuge.txt for more details.
I'm not sure a small objects allocator falls into the right use case
for huge pages.
Regards
Antoine.
_______________________________________________
Python-Dev mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://mail.python.org/mailman3/lists/python-dev.python.org/
Message archived at
https://mail.python.org/archives/list/[email protected]/message/GDRMLWAI26TSRMXXXXX6HNJ6C5X7RRJL/