Queria dar-lhe uma resposta mais semelhante ao Solaris:
Em uma caixa multiprocessador / multicore, você não pode usar muito a carga da CPU. Inicialmente, use mpstat
em vez de prstat
/ top
se você quiser ver se um de seus núcleos ocasionalmente entra em plena utilização.
Se mpstat
tiver 8 linhas de saída, significa que você tem 8 núcleos de CPU e, em seguida, qualquer processo que você vir em prstat
consumindo mais de 12,5% dos recursos de CPU (100/8) provavelmente será vinculado à CPU. Para testar se isso é realmente assim, você pode usar prstat -L -p <pid>
para ver se qualquer segmento individual desse processo atinge 12,5% porque você sabe com certeza que o processo está vinculado à CPU. Você tem alguns núcleos de CPU disponíveis em sua caixa, mas você deve sempre lembrar que qualquer thread de processamento único pode viver apenas em um núcleo de CPU. Para que o MySQL utilize sua caixa, torna-se uma questão de como é bom dividir o trabalho em vários threads. Se existe um único hot thread no MySQL, então sua máquina poderosa não ajuda muito.
Além disso, você pode encontrar algumas pessoas que aconselharão a desativar o Intel HyperThreading na carga de trabalho do servidor Linux / Solaris, porque ele realmente funciona melhor sem ele. YMMM Pelo que entendi, o Intel HyperThreading é excelente para o tipo de carga de trabalho da área de trabalho, mas para um servidor que só deveria fazer uma coisa e fazer isso com rapidez, isso pode prejudicar o desempenho.
Há pelo menos uma dúzia de rotas que você pode ir a partir daqui, por isso é um pouco difícil aconselhá-lo antes de ter mais fatos.