Núcleos sem uso [RESOLVIDO]

1. Núcleos sem uso [RESOLVIDO]

natha
ncampos

(usa Debian)

Enviado em 10/04/2023 - 19:42h

Boa noite, gostaria de informações se é possível e qual ajuste para que o POSTGRES utilize demais núcleos disponíveis do servidor. Tenho entendimento que tanto codigo do sistema e as consultas influenciam nas buscas, porem desejo ajustar o lado do servidor.

Nova configuração 1está com 2 núcleos e 12 GB RAM, Analisamos que não está sendo utilizado todos os núcleos e toda memoria RAM.
Existe demanda para esse consumo, mais de 100 conexões simultâneas ao BD.

A intenção é acelerar as consultas com os núcleos disponiveis .


  


2. Re: Núcleos sem uso

Buckminster
Buckminster

(usa Debian)

Enviado em 11/04/2023 - 13:27h

No link abaixo está muito bem explicado:
https://pgbr-geral.listas.postgresql.org.narkive.com/76bO4Keg/postgres-com-varios-processadores

E aqui tem dicas de performance:
https://www.postgresql.org/docs/current/performance-tips.html


________________________________________________
Always listen the Buck!


3. Re: Núcleos sem uso [RESOLVIDO]

natha
ncampos

(usa Debian)

Enviado em 11/04/2023 - 13:49h


Buckminster escreveu:

No link abaixo está muito bem explicado:
https://pgbr-geral.listas.postgresql.org.narkive.com/76bO4Keg/postgres-com-varios-processadores

E aqui tem dicas de performance:
https://www.postgresql.org/docs/current/performance-tips.html


________________________________________________
Always listen the Buck!


Obrigado pelo retorno, notei erro em minha ortografia e que pode ter confundido.

são 12 nucleos e 12 RAM.

Minha intenção é utilizar todos os núcleos... Existe 1 processador apenas.




4. Re: Núcleos sem uso

Buckminster
Buckminster

(usa Debian)

Enviado em 11/04/2023 - 14:17h

ncampos escreveu:


Buckminster escreveu:

No link abaixo está muito bem explicado:
https://pgbr-geral.listas.postgresql.org.narkive.com/76bO4Keg/postgres-com-varios-processadores

E aqui tem dicas de performance:
https://www.postgresql.org/docs/current/performance-tips.html


________________________________________________
Always listen the Buck!


Obrigado pelo retorno, notei erro em minha ortografia e que pode ter confundido.

são 12 nucleos e 12 RAM.

Minha intenção é utilizar todos os núcleos... Existe 1 processador apenas.



Não importa, não é o Postgres que lida com os núcleos e/ou processadores, é o sistema, no caso é o kernel.
Tu pode compilar um kernel atual mudando a frequência, habilitando uns parâmetros e desabilitando outros de acordo com as tuas necessidades.

E quando tu fala "mais de 100 conexões" está falando de conexões mesmo (o que acho difícil) ou de acessos ao banco?
Há uma diferença grande entre conexões e acessos.

Dê uma lida nesse tópico:
https://www.vivaolinux.com.br/topico/MySQL/Dimensionar-Servidor

________________________________________________
Always listen the Buck!


5. Re: Núcleos sem uso

Perfil removido
removido

(usa Nenhuma)

Enviado em 11/04/2023 - 14:51h

"The PostgreSQL server is process-based (not threaded). Each database session connects to a single PostgreSQL operating system (OS) process. Multiple sessions are automatically spread across all available CPUs by the OS. The OS also uses CPUs to handle disk I/O and run other non-database tasks. Client applications can use threads, each of which connects to a separate database process.

Since version 9.6, portions of some queries can be run in parallel, in separate OS processes, allowing use of multiple CPU cores. Parallel queries are enabled by default in version 10 (max_parallel_workers_per_gather), with additional parallelism expected in future releases."

https://pgtune.leopard.in.ua/


6. Re: Núcleos sem uso

aguamole
aguamole

(usa KUbuntu)

Enviado em 12/04/2023 - 16:09h

Os software são programados para fazer um equilíbrio entre uso alto de RAM e uma redução do uso de RAM, se o seu software não esta usando toda a RAM significa que o sistema tem mais memória do o que o software necessita.

Quem controla o uso do CPU é o próprio CPU, da para adicionar suporte a multi-core no software mas quem decide se todos os cores suportado serão utilizados é o próprio CPU.
Porque é assim? porque se um software travar e ele estiver cuidando do gerenciamento dos multi-core esses cores sendo usado ou ate todos os cores do CPU seriam travados junto com o software causando assim um travamento irrecuperável de todo o sistema já que todos os cores ficariam travado e consequentemente indisponível. Ja se o próprio CPU controla o seu próprio recurso e o software travar ele ainda assim continua disponível para as demais tarefas como o # kill -9 "software".

CPU a muitos décadas antes eles tinham esse problema de ser gerenciado os recursos por software, mas já faz muitas décadas que o CPU passou a gerir os seus próprios recursos resolvendo esse tipo de problema.
Já não é mais o software que controla os recursos da CPU a muitos anos.






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts