An accepted practice to decrease applications' memory usage is to reduce the amount and frequency of memory allocations. Factors such as (a) the prevalence of out-of-memory (OOM) killers, (b) memory allocations in modern programming languages done implicitly, (c) overcommitting being a default strategy in the Linux kernel, and (d) the rise in complexity and terminology related to memory management makes the existing guidance inefficient. The industry needs detailed guidelines for optimizing memory usage targeting specific operating systems (OS) and programming language types.
翻译:降低应用内存使用量的普遍实践是减少内存分配的数量和频率。然而,(a)内存溢出(OOM)killers的普遍存在,(b)现代编程语言中隐式完成的内存分配,(c)Linux内核默认采用过度提交(overcommitting)策略,以及(d)与内存管理相关的复杂性和术语不断增加,导致现有指导效率低下。业界亟需针对特定操作系统(OS)和编程语言类型的、详细的内存使用优化指南。