Colocar timena frente da chamada prova que leva o tempo de intervalo especificado de cerca de 2 segundos neste caso. Aqui está a chamada e a saída:
$ time printf "%b" "import psutil\nprint('{}%'.format(psutil.cpu_percent(interval=2)))" | python3
9.5%
real 0m2.127s
user 0m0.119s
sys 0m0.008s
Para visualizar a saída de núcleos individuais também , vamos usar este programa python abaixo. Primeiro, obtenho uma lista python (array) de informações "por CPU", depois faço a média de tudo nessa lista para obter um valor do tipo "total % CPU". Em seguida, imprimo o total e as porcentagens do núcleo individual.
Isso pode ser embrulhado em um script bash de 1 linha incrivelmente feio como este, se você quiser. Eu tive que me certificar de usar apenas aspas simples ( ''), NÃO aspas duplas ( "") no programa Python para fazer esse encapsulamento em um bash 1-liner funcionar:
Retorne um float representando a utilização atual da CPU em todo o sistema como uma porcentagem. Quando o intervalo é > 0.0compara os tempos de CPU do sistema decorridos antes e depois do intervalo (bloqueio). Quando o intervalo é 0.0ou Nonecompara os tempos de CPU do sistema decorridos desde a última chamada ou importação do módulo, retornando imediatamente. Isso significa que a primeira vez que isso é chamado, ele retornará um 0.0valor sem sentido que você deve ignorar. Neste caso é recomendado para maior precisão que esta função seja chamada com pelo menos 0.1segundos entre as chamadas. Quando percpu for True retorna uma lista de floats representando a utilização como uma porcentagem para cada CPU. O primeiro elemento da lista refere-se à primeira CPU, o segundo elemento à segunda CPU e assim por diante. A ordem da lista é consistente entre as chamadas.
Atenção: a primeira vez que esta função é chamada com intervalo = 0.0ou Noneela retornará um 0.0valor sem sentido que você deve ignorar.
Faça isso para ver o uso geral da CPU . Isso chama e usa o módulo
python3
multiplataforma .psutil
A
interval=2
parte diz para medir a carga total da CPU durante um período de bloqueio de 2 segundos.Saída de amostra:
O programa python que ele contém é este:
Colocar
time
na frente da chamada prova que leva o tempo de intervalo especificado de cerca de 2 segundos neste caso. Aqui está a chamada e a saída:Para visualizar a saída de núcleos individuais também , vamos usar este programa python abaixo. Primeiro, obtenho uma lista python (array) de informações "por CPU", depois faço a média de tudo nessa lista para obter um valor do tipo "total % CPU". Em seguida, imprimo o total e as porcentagens do núcleo individual.
Programa Python:
Isso pode ser embrulhado em um script bash de 1 linha incrivelmente feio como este, se você quiser. Eu tive que me certificar de usar apenas aspas simples (
''
), NÃO aspas duplas (""
) no programa Python para fazer esse encapsulamento em um bash 1-liner funcionar:Saída de exemplo: observe que tenho 8 núcleos, portanto, há 8 números após "CPUs individuais:":
Para obter mais informações sobre como
psutil.cpu_percent(interval=2)
funciona a chamada python , consulte a documentação oficialpsutil.cpu_percent(interval=None, percpu=False)
aqui :Referências: