Como posso saber quanto eu preciso do meu processo?

1

Eu tenho um processo que é vinculado a E / S:

my_username@GPU8:~$ ps -U my_username -u
USER        PID    %CPU %MEM    VSZ   RSS      TTY      STAT START   TIME COMMAND
my_username 151348 12.7 52.4 47051296 34544380 pts/16   DNl+ 11:38  15:27 python my_py.py

Existem outros processos vinculados de E / S no sistema, de outros usuários.

Eu sei sobre iotop , mas requer acesso root que eu não tenho.

Como posso saber a quantidade de recursos que meu programa está esperando, como uma fração da capacidade? Eu estou essencialmente procurando por um tempo de espera estimado até que meu programa possa ser executado novamente.

    
por StatsSorceress 06.02.2018 / 19:50

1 resposta

0

but it requires root access which I don't have.

Qualquer informação detalhada sobre o desempenho geral do sistema ou intervenções para influenciar o comportamento também exigirá acesso root. O que você está tentando conseguir?

an estimated waitime until my program can run again.

Então você executou ps algumas vezes e cada vez que o viu em um sono ininterrupto, sua conclusão é que ele está nesse estado continuamente? Se assim for, sua lógica é falha.

Não podemos começar a adivinhar quando isso pode ser concluído. Não sabemos apenas o que o seu programa faz, não sabemos o que todo o resto do sistema está fazendo e não sabemos quais são as capacidades do sistema. seu armazenamento é. Mesmo se o fizéssemos, medições como a utilização são um tanto enganadoras.

Se for IO ligado, é provável que esteja usando muito menos que RR_TIMESLICE (100ms) no kernel em cada chamada. A frequência com que chega ao topo da fila dependerá do número de processos executáveis a qualquer momento. Mas, se a maioria dos outros processos também for IO Bound, provavelmente haverá apenas um intervalo muito curto quando o processo for executável e ainda não estiver na CPU.

    
por 06.02.2018 / 22:12

Tags