天天看點

Linux 如何釋放Hugepage 占用的記憶體

示例:

目前Hugepage 占用記憶體756M

[root@prim ~]# grep -i huge /proc/meminfo

AnonHugePages: 0 kB

HugePages_Total: 378

HugePages_Free: 378

HugePages_Rsvd: 0

HugePages_Surp: 0

Hugepagesize: 2048 k

[root@prim ~]# free -m

              total    used     free    shared   buffers  cached

Mem:          2364     1646     717       0       77      616

-/+ buffers/cache:      953     1411

Swap:          8191      0      8191

清除cache 緩存

[root@prim ~]# echo 3 > /proc/sys/vm/drop_caches

             total    used    free    shared    buffers  cached

Mem:          2364    948     1415      0         0       46

-/+ buffers/cache:    901     1462

Swap:         8191     0      8191

可見目前Hugepage仍然占用部分記憶體

[root@prim ~]# cat /proc/sys/vm/nr_hugepages

378

下面進行Hugepage 釋放:

[root@prim ~]# echo 0 > /proc/sys/vm/nr_hugepages

HugePages_Total: 0

HugePages_Free: 0

Hugepagesize: 2048 kB

           total    used    free    shared    buffers   cached

Mem:       2364     198     2165     0         3         49

-/+ buffers/cache:  145     2219

Swap:      8191      0      8191

此時可以看見Hugepage占用的記憶體已經釋放

繼續閱讀