我使用 Threadripper 1920x,它没有集成显卡。主板是 Gigabyte x399。Free
显示:
内存:总计 62G 或 65909900
dmesg 显示:
1329464K 保留
,与缺失的 1.1G 完全匹配。
它说它在 BIOS-e820 中保留
如何减少 BIOS 保留内存的无用信息?
您的 Ubuntu 上保留了多少内存?
答案1
在我的 8,000 MB 系统上,我丢失了 189 MB。相比之下,您的系统是 8 倍,因此推断为 1,512 MB。就我个人而言,我不会担心 64,000 MB 中丢失 1,300 MB。正如 @N0rbert 所说,这可能只是一个 1024 x 1024 x 1024 (GiB) 与 1000 x 1000 x 1000 (GB) 的问题。
也就是说,有办法释放保留内存:减少保留 RAM
Linux 内核采取了非常特别的措施来高效使用 RAM 并缓存数据和缓冲区。即使您运行过一次的程序也会尽可能长时间地保留在 RAM 中,以防您再次运行它们。我的理念是让 Linux 管理 RAM,除非有相当一部分内存丢失。
答案2
我在我的服务器上看到类似的情况:
$ free
total used free shared buff/cache available
Mem: 65907424 656828 64815756 64120 434840 63179300
Swap: 999420 0 999420
我的猜测是,这是由于运行 32 位版本的操作系统造成的,因为当我使用不同的 GNU/Linux 发行版启动它时,480 GB 能够正确显示。
uname -a
显示i686
不是x86_64
。
$ uname -a
Linux computer 4.15.0-51-generic #55-Ubuntu SMP Wed May 15 14:26:28 UTC 2019 i686 athlon i686 GNU/Linux
(它也只能检测已安装的 48 个核心中的 8 个,使用不同的操作系统也能正确检测到)。