Postgresql calcula a memória de compartilhamento do kernel?

1

Estamos executando PGSQL 9.2 e as especificações de hardware a seguir

OS: CentOS7 64bit
CPU: 24
Memory: 32GB
Disk: SSD

Eu quero calcular valores de shmmax / shmall, então qual seria o bom caminho? Eu google e as pessoas dizendo 50% da memória total. Mas na minha caixa eu tenho apenas PGSQL em execução, então porque não 80% da memória total?

Posso configurar o kernel.shmmax 28GB? e manter 4G para Linux OS.

O que você sugere?

    
por Satish 10.11.2015 / 20:08

1 resposta

0

shmmax e shmall não são alocações, eles são botões de controle no kernel que permitem controlar o tamanho máximo do segmento de memória compartilhada e o número de páginas de memória compartilhada.

Citando a documentação do sysctl :

shmall:

This parameter sets the total amount of shared memory pages that
can be used system wide. Hence, SHMALL should always be at least
ceil(shmmax/PAGE_SIZE).

If you are not sure what the default PAGE_SIZE is on your Linux
system, you can run the following command:

# getconf PAGE_SIZE

==============================================================

shmmax:

This value can be used to query and set the run time limit
on the maximum shared memory segment size that can be created.
Shared memory segments up to 1Gb are now supported in the
kernel.  This value defaults to SHMMAX

Eu recomendaria pegar as sugestões que você recebeu sobre as configurações dessas variáveis sysctl, pois elas são essenciais para poder ajustar ainda mais o PostgreSQL, e as recomendações costumam ser mais do que adequadas para as tarefas necessárias. =)

Quando esses sysctls estiverem definidos, definir shared_buffers a 25% de RAM e effective_cache_size a 75% em postgresql.conf farão com que você comece a usar a RAM em seu servidor com eficiência.

Eu também recomendo seguir a entrada do PostgreSQL Wiki em Ajustando seu servidor PostgreSQL , ou obtendo o livro de alto desempenho do PostgreSQL 9.0 de Greg Smith para mais informações sobre ajustes e cuidados adequados com o seu servidor. =)

    
por 17.11.2015 / 09:39