单进程x64 Linux中的最大可能内存 [英] Single Process Maximum Possible Memory in x64 Linux
问题描述
对于x64 Linux中的单个进程有任何内存限制?
is there any memory limit for a single process in x64 Linux?
我们正在运行一个32Gb的Linux服务器,我想知道是否可以分配大多数为一个单一的过程我编码,这需要大量的RAM!
we are running a Linux Server with 32Gb of RAM and I'm wondering if I can allocate most of it for a single process I'm coding which requires lots of RAM!
推荐答案
某些内核有不同的限制,但在任何现代64位linux上,单进程限制仍远远超过32GB假设进程是64位可执行文件)。各种发行版本也可以使用 sysctl
设置每个进程的限制,因此您需要检查您的本地环境,以确保没有任何低限制设置在基于RPM的系统上检查 ipcs -l </ code>)。
Certain kernels have different limits, but on any modern 64-bit linux the single-process limit is still far over 32GB (assuming that process is a 64-bit executable). Various distributions may also have set per-process limits using sysctl
, so you'll want to check your local environment to make sure that there aren't arbitrarily low limits set (also check ipcs -l
on RPM-based systems).
AMD64端口的Debian端口文档特别提到每进程虚拟地址空间限制是128TiB(物理内存限制的两倍),因此应该是您正在使用的合理上限。
The Debian port documentation for the AMD64 port specifically mentions that the per-process virtual address space limit is 128TiB (twice the physical memory limit), so that should be the reasonable upper bound you're working with.
这篇关于单进程x64 Linux中的最大可能内存的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!