Xen dom0 informa quantidade incorreta de RAM com o conjunto dom0_mem

1

Eu fiz um pouco de pesquisa sobre isso, mas não encontrei nada que respondesse à minha pergunta.

Eu tenho um sistema com 6GB de RAM que funciona como um servidor Xen. Para referência, ele roda o Ubuntu 12.04. Eu configurei o parâmetro do kernel dom0_mem: 512M, max: 512M em / etc / default / grub da seguinte forma:

GRUB_CMDLINE_XEN_DEFAULT="dom0_mem=min:512M,max:512M"

Eu tentei variações disso, com o mesmo resultado.

Minha pergunta é esta:

Com o conjunto acima, o dom0 relata em todas as aplicações uma quantidade de RAM de 422M.

cat / proc / meminfo fornece o seguinte:

$ cat /proc/meminfo
MemTotal:         432472 kB
MemFree:           54144 kB
Buffers:           17640 kB
Cached:           220104 kB
SwapCached:        30172 kB
Active:           136500 kB
Inactive:         167780 kB
Active(anon):       6156 kB
Inactive(anon):    60516 kB
Active(file):     130344 kB
Inactive(file):   107264 kB
Unevictable:          52 kB
Mlocked:              52 kB
SwapTotal:       1794044 kB
SwapFree:        1682012 kB
Dirty:                 0 kB
Writeback:             0 kB
AnonPages:         39572 kB
Mapped:             8048 kB
Shmem:               136 kB
Slab:              44324 kB
SReclaimable:      22012 kB
SUnreclaim:        22312 kB
KernelStack:        1280 kB
PageTables:         3840 kB
NFS_Unstable:          0 kB
Bounce:                0 kB
WritebackTmp:          0 kB
CommitLimit:     2010280 kB
Committed_AS:     329192 kB
VmallocTotal:   34359738367 kB
VmallocUsed:      313988 kB
VmallocChunk:   34359417340 kB
HardwareCorrupted:     0 kB
AnonHugePages:         0 kB
HugePages_Total:       0
HugePages_Free:        0
HugePages_Rsvd:        0
HugePages_Surp:        0
Hugepagesize:       2048 kB
DirectMap4k:      524696 kB
DirectMap2M:           0 kB

top, htop, free -m e monitor RAM byobu todos relatam a mesma quantidade.

No começo eu pensei que isso era por causa dos gráficos onboard pegando alguma memória, mas agora mudei para uma GPU dedicada e ela persiste.

Isso é um comportamento normal ou algo saiu errado? É apenas cerca de 100MB de RAM que "se foi", e não tenho idéia de onde foi. Eu entendo que é normal que todos RAM esteja disponível para alocação, mas o sistema realmente leva uma quantidade relativamente alta para a quantidade de RAM disponível?

Editar Acabei de notar que xl list reporta dom0 como tendo 511M de RAM, então parece que a memória está sendo alocada corretamente, e que a diferença é apenas a memória reservada do sistema.

    
por xen_amnesiac 27.10.2013 / 09:27

1 resposta

2

Isso é normal para acontecer. A alocação padrão de memória para Dom0 é governada por uma fórmula que é aproximadamente igual a 502 + 0,0205 * de memória física (MB) (no caso de xen).

Esta alocação de memória para Dom0 pode ser feita a partir do grub também, como no exemplo. Em todos os casos, você verá "perda" de cerca de 100 MB de memória consumida pelo sistema (xen).

Se você puder acessar a saída do comando dmesg, você poderá ver detalhes sobre como 100 MB de memória são reservados e se tornam inutilizáveis. Verifique as primeiras 100/150 linhas para ver detalhes da reserva / alocação de memória. Por exemplo, uma linha pf dmesg no meu Dom0 resume assim: -

Memória: 899140k / 1010076k disponível (código do kernel 5201k, 476k ausente, 110460k reservado, dados 4718k, 1592k init).

    
por 28.10.2013 / 11:49