Como usar o topo em um script de shell para rastrear o consumo de memória de um processo?

1

Eu queria saber se havia uma maneira de usar o top ou outro programa para rastrear o consumo de memória de um script que eu estaria executando. Eu estava usando

   runtime.totalMemory - runtime.freeMemory

Mas isso não é um corte, pois leva em consideração todo o sistema, não apenas o processo que quero acompanhar.

Estou usando um script de shell para executar um programa scala que eu quero que seu uso de memória seja rastreado.

    
por Kaska 16.06.2016 / 19:26

2 respostas

1

Obtenha o PID do processo scala que deseja acompanhar usando SCALAPID=$! depois de iniciar o processo scala em segundo plano e encontre o uso de memória do processo usando ps -o size= -q $SCALAPID o valor retornado está em kilobytes

    
por 16.06.2016 / 19:45
0

Se você quiser verificar a memória de um processo que já está em execução, tente este :

# ./ps_mem.py
 Private  +   Shared  =  RAM used       Program

188.0 KiB +  52.0 KiB = 240.0 KiB       atd
.....
 25.9 MiB +  66.0 KiB =  26.0 MiB       memcached
 53.1 MiB + 106.5 KiB =  53.2 MiB       named
453.2 MiB + 107.0 KiB = 453.3 MiB       mysqld
---------------------------------
                          1.2 GiB
=================================

Se você está perguntando sobre o roteiro que você vai rodar, então eu acredito que não há como checar, porque ele pode chamar qualquer coisa que possa vir a chamar muita coisa também.

    
por 16.06.2016 / 23:33