quais são os diferentes caches relatados pelo slabtop?

1

Alguém sabe onde posso obter uma descrição dos diferentes objetos do kernel cujos caches de memória são reportados pelo slabtop no Linux? Por exemplo, o que é filp , radix_tree_node , etc?

    
por Ben 06.08.2018 / 01:13

1 resposta

2

Antecedentes

A laje relatada em slabtop é difícil de quantificar para um determinado módulo do kernel porque eles estão sendo mesclados em tipos singulares que se sobrepõem com base em sua semelhança com os outros em termos dos objetos que estão mantendo.

excerto - Como / proc / slabinfo não está dizendo o que parece

Specifically, on modern Linux the names shown in slabinfo are basically a hint because the current slab allocator in the kernel merges multiple slab types together if they are sufficiently similar. If five different subsystems all want to allocate (different) 128-byte objects with no special properties, they don't each get separate slab types with separate slabinfo entries; instead they are all merged into one slab type and thus one slabinfo entry. That slabinfo entry normally shows the name of one of them, probably the first to be set up, with no direct hint that it also includes the usage of all the others.

(The others don't appear in slabinfo at all.)

Este artigo discute que, devido à fusão acima, muitas vezes há tipos de cache slab que não aparecem em /proc/slabinfo . Você pode ver um pouco desse efeito, olhando aqui: /sys/kernel/slab . Este diretório mostra quais caches slab estão sendo mesclados com outros na forma de links simbólicos.

Aimagemàesquerdamostraoslinks(azulclaro)dodiretório/sys/kernel/slabqueestãosendomescladosemoutrasplacas.Aimagemàdireitamostratodososcachesqueestãosendomescladosem:t-0000256slab.

Placasdeacompanhamento

Secontinuarmosaexaminarodiretório/sys/kernel/slab:

$ls-l/sys/kernel/slab/|grepfilplrwxrwxrwx1rootroot0Aug521:23filp->:t-0000256

Aquiestáofilpsobreoqualvocêestavaperguntando.Paravermaissobreisso,talvezvocêqueirainstalaroslabinfoCLI.

slabinfo

Eu não tinha esta CLI disponível para fazer uma triagem disso no CentOS 7.x, mas você pode querer investigá-la. Compilar essa CLI dá acesso a slabinfo -a , que mostra os aliases aos quais as placas se associam em /sys/kernel/slab . Eu acredito que é esse alias que você está procurando, o que ajudará a associar quais lajes estão em slabtop .

referência: Alocadores de Slab no Kernel Linux: SLAB, SLOB, SLUB

Referências

por 06.08.2018 / 04:12

Tags