Saya ingin menjalankan program yang menghabiskan memori dan melacak penggunaan memorinya dari waktu ke waktu. Program berakhir dalam beberapa detik setelah dipanggil.
Pertanyaan sebelumnya ini menyarankan paket sysstat . Sementara pidstat
sebagian utilitasnya melakukan apa yang saya inginkan, ia gagal memenuhi 2 kebutuhan saya:
- Ini menerima interval minimal
1s
, tetapi saya ingin mengukur pada granularity lebih pendek. (0.1s
harus baik-baik saja) - Ini hanya melacak proses yang ada, sementara saya tidak selalu bisa hadir untuk menyalin & menempelkan pid.
Apakah ada beberapa skrip / utilitas alternatif untuk melakukan pekerjaan memanggil dan mengukur dengan lebih baik?
/proc/$PID/statm
), dan kemudian tidur selama 100 ms dan ulangi. Mengapa kau tidak bisa hanya terus melemparkan PID terkaitstatm
melaluicat
, mungkin menggunakan beberapa regex untuk menyaring off ekstra / nilai-nilai yang tidak dibutuhkan, dan hanya melakukansleep 0.01
? Beberapa sistem operasi tidak akan mengizinkan nilai sub-detiksleep
, jadi dalam hal ini, Anda harus mengambil rute Python (dan menggunakantime
pustaka bawaan Python untuk tidur).