Как просмотреть количество огромных таблиц объемом 1 ГБ (и какой документации мне следует придерживаться)?

Я пытаюсь найти огромные страницы для использования KVM в Ubuntu 20.04. Если я изменю количество страниц размером 2048 КиБ (размер по умолчанию), я увижу, что это отражено в /proc/meminfo

:~$ echo 0 |sudo tee /sys/kernel/mm/hugepages/hugepages-2048kB/nr_hugepages
0
:~$ cat /proc/meminfo | grep Huge
AnonHugePages:         0 kB
ShmemHugePages:        0 kB
FileHugePages:         0 kB
HugePages_Total:       0
HugePages_Free:        0
HugePages_Rsvd:        0
HugePages_Surp:        0
Hugepagesize:       2048 kB
Hugetlb:        50331648 kB
:~$ echo 512 |sudo tee /sys/kernel/mm/hugepages/hugepages-2048kB/nr_hugepages
512
:~$ cat /proc/meminfo | grep Huge
AnonHugePages:         0 kB
ShmemHugePages:        0 kB
FileHugePages:         0 kB
HugePages_Total:     512
HugePages_Free:      512
HugePages_Rsvd:        0
HugePages_Surp:        0
Hugepagesize:       2048 kB
Hugetlb:        51380224 kB
:~$ 

. Однако, когда я изменяю количество страниц размером 1 ГБ, я не вижу ничего, что могло бы отразиться тот.

:~$ echo 0 | sudo tee /sys/kernel/mm/hugepages/hugepages-1048576kB/nr_hugepages
0
:~$ cat /proc/meminfo | grep Huge
AnonHugePages:         0 kB
ShmemHugePages:        0 kB
FileHugePages:         0 kB
HugePages_Total:     512
HugePages_Free:      512
HugePages_Rsvd:        0
HugePages_Surp:        0
Hugepagesize:       2048 kB
Hugetlb:        51380224 kB
:~$ echo 16 | sudo tee /sys/kernel/mm/hugepages/hugepages-1048576kB/nr_hugepages
16
:~$ cat /proc/meminfo | grep Huge
AnonHugePages:         0 kB
ShmemHugePages:        0 kB
FileHugePages:         0 kB
HugePages_Total:     512
HugePages_Free:      512
HugePages_Rsvd:        0
HugePages_Surp:        0
Hugepagesize:       2048 kB
Hugetlb:        51380224 kB

Насколько я понимаю, это означает, что моя система поддерживает огромные страницы объемом 1 ГБ, верно?

ls /sys/kernel/mm/hugepages
hugepages-1048576kB  hugepages-2048kB

Страницы размером 1 Гб перечислены где-то еще? Могу ли я проверить их статус?

Редактировать: благодаря @Krackout я могу видеть свои огромные страницы объемом 1 ГБ, но я все еще не понимаю, какой документации я вообще должен придерживаться:

Меня смущают различные процедуры настройки и мониторинга огромных страниц. Я вроде бы заработал, но мне еще совсем немного непонятно.

Основные ресурсы:

Каждая из приведенных выше ссылок описывает частично перекрывающиеся процедуры. Кажется, что различия основаны на ядре и дистрибутиве, но мне не ясно, в чем именно они заключаются, и я не могу найти это нигде четко изложенным.

В моей установке Ubuntu 20.04 для меня работает следующее: в crontab -e:

@reboot echo 64 | sudo tee /sys/kernel/mm/hugepages/hugepages-1048576kB/nr_hugepages
@reboot mount -t hugetlbfs -o pagesize=1G none /dev/hugepages

После чего я могу запустить виртуальную машину KVM в virt-manager, содержащую следующий XML:

<memoryBacking>
  <hugepages>
    <page size='1048576' unit='KiB'/>
  </hugepages>
</memoryBacking>

Таким образом, то, что я смог сделать, не совсем то, что сказал любой из гидов.

0
22.06.2020, 18:07
1 ответ

В Debian Linux необходимо вставить параметр ядра,hugepagesz=1G(и, конечно же, перезагрузить ). Вы также можете установить пакет libhugetlbfs-binи просмотреть информацию с помощью команды hugeadm. Вики-страница Debian на hugepades должна относиться к Ubuntu, основанной на Debian -.

1
18.03.2021, 23:25

Теги

Похожие вопросы