gpt4 book ai didi

Python 和内存映射?

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:54:13 26 4
gpt4 key购买 nike

使用 Linux 机器,使用 python 可以“映射”多少个文件(限制是多少)?谢谢。

最佳答案

有多个限制在起作用。第一个是系统范围的打开文件限制,/proc/sys/fs/nr_open。这通常在百万范围内。

此限制可能会继续针对打开文件、设置映射然后再次关闭文件的进程进行计数。

第二个是每个进程 getrlimit(2) RLIMIT_NOFILE 每个进程打开文件的数量。此限制通常在 1024 范围内。

这个限制似乎是在将分配给进程的最高文件描述符上,因此它可能不会继续对打开文件的进程进行计数,设置映射,然后再次关闭文件。

第三个是进程可用的地址空间量(getrlimit(2) RLIMIT_AS 架构相关(2, 3 , 或者在 32 位上可能是 4 GB(使用 4:4 地址空间补丁),或者在 64 位上可能是很多千兆字节。在 x86 上通常是 3 GB,并且由于地址空间布局问题,您可能mmap 可用 2.5 gigs。

巧妙地使用 fork(2) 可以让您为每个映射文件设置一个进程,并且即使在 32 位处理器上也可以同时映射千兆字节,但是 getrlimit(2 ) RLIMIT_NPROC 每个用户的进程数限制可能会限制您打开进程的最大数量,从而限制文件。

关于Python 和内存映射?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5188423/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com