Seu script pode ser de thread único e, portanto, não é capaz de utilizar mais de 50% de sua CPU, supondo que você execute uma configuração de dualcore.
Estou executando um script php que faz algumas operações no banco de dados em loops while e notei (rodando top
) que ele usa cerca de 45% de cpu. Eu gostaria de definir para usar como 70-80% ou 90%. Eu tentei renunciar o processo de php assim que é definido como max PR 39 e NT 19, mas não mudou muito. Ele ainda usa cerca de 50% da CPU. Existe alguma maneira de acelerar o script php (processo) para usar mais CPU?
EDITAR:
Eu reescrevi meu script php para que o cálculo e a E / S sejam separados agora. Com base nessas 3 respostas dadas e nas observações do roteiro, cheguei a estas 3 conclusões:
while loop
usaria dois ou mais núcleos (mas isso é para troca de pilha diferente). Seu script pode ser de thread único e, portanto, não é capaz de utilizar mais de 50% de sua CPU, supondo que você execute uma configuração de dualcore.
Se o desempenho geral for aceitável, o baixo uso de CPU observado do processo de php não é motivo de preocupação. O uso da CPU pode ser baixo por vários motivos:
O banco de dados pode estar preso em cálculos pesados e o script php geralmente precisa esperar que o banco de dados responda.
O banco de dados pode estar aguardando a E / S e o script php geralmente precisa aguardar a resposta do banco de dados.
O script php pode estar esperando na E / S.
O script php pode estar causando muita atividade de troca.
Para melhorar o desempenho, você pode tentar ajustar seu sistema de E / S, movendo o banco de dados para a memória principal, usando discos giratórios mais rápidos, usando unidades de estado sólido (SSD), adicionando mais memória principal (para cache) e ajustando os parâmetros do banco de dados ( consulte o manual de administração do seu banco de dados).