如何检查内存不同部分的使用情况?

klm*_*123 6 linux memory-management

我的电脑配有2个Intel Xeon CPU和48 GB RAM.RAM分为CPU - 两部分24 GB + 24 GB.如何查看每个特定部件的使用量?

所以,我需要类似的东西htop,它显示每个核心的使用情况(参见本例),而不是内核而不是内核.或者指定使用哪个部分(地址)的内存以及哪些不是.

Fra*_*kH. 4

该信息位于 中/proc/zoneinfo,包含与/proc/vmstat除了按“节点”(Numa ID)细分之外非常相似的信息。我这里没有 NUMA 系统来为您测试它并提供多节点配置的示例输出;在单节点机器上看起来像这样:

Node 0, zone      DMA
pages free     2122
      min      16
      low      20
      high     24
      scanned  0
      spanned  4096
      present  3963
[ ... followed by /proc/vmstat-like nr_* values ]
Node 0, zone   Normal
pages free     17899
      min      932
      low      1165
      high     1398
      scanned  0
      spanned  223230
      present  221486
nr_free_pages 17899
nr_inactive_anon 3028
nr_active_anon 0
nr_inactive_file 48744
nr_active_file 118142
nr_unevictable 0
nr_mlock     0
nr_anon_pages 2956
nr_mapped    96
nr_file_pages 166957
[ ... more of those ... ]
Node 0, zone  HighMem
pages free     5177
      min      128
      low      435
      high     743
      scanned  0
      spanned  294547
      present  292245
[ ... ]
Run Code Online (Sandbox Code Playgroud)

即关于使用/可用性总计的小统计数据,后面是nr_*在系统全局级别上找到的值/proc/vmstat(然后可以进一步细分内存的确切用途)。

如果您有多个内存节点(又名 NUMA),您将看到所有节点的这些区域。

编辑

我不知道有这样的前端(即 numavmstat就像htop是 numa- top),但如果有人知道,请发表评论!

  • 这有定义:http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=blob_plain;f=include/linux/mmzone.h;hb=HEAD (2认同)