모든 경우에 프로세스의 상주 메모리 사용량을 MB 단위로 얻는 방법을 알고 싶습니다. 때로는 MB로 가져 오지만 다른 때는 GB로 제공됩니다.프로세스 메모리 사용 출력
나는 솔루션을 둘러 보았지만 대부분은 작동하지 않았습니다. top -b -n 1 | grep %i | awk '{print$9}'
으로 작업 할 수있는 것이 좋습니다.
모든 경우에 프로세스의 상주 메모리 사용량을 MB 단위로 얻는 방법을 알고 싶습니다. 때로는 MB로 가져 오지만 다른 때는 GB로 제공됩니다.프로세스 메모리 사용 출력
나는 솔루션을 둘러 보았지만 대부분은 작동하지 않았습니다. top -b -n 1 | grep %i | awk '{print$9}'
으로 작업 할 수있는 것이 좋습니다.
보조 프로세스를 사용하지 않으려면 psutil 라이브러리를 살펴보십시오. 당신은 단지 하나의 프로세스에 대한 정보를 찾고 있다면
다음은 예입니다 :
import psutil
pid = 14551
def rss_MB(pid):
proc = psutil.Process(pid)
mem_bytes = proc.get_memory_info().rss
return(float(mem_bytes)/1048576)
mem_MB = rss_MB(pid)
print "pid: %d has an rss of %f MB" % (pid, mem_MB)
예 :
이것은 RSS 크기를 KB 단위로보고 FreeBSD의에 기록 된import subprocess
lines = subprocess.check_output(['ps', '-xacuww']).splitlines()
del lines[0] # skip the header
for p in lines:
items = p.split()
print "Process:", items[-1], " memory:", items[5], "kB"
. Linux의 ps
옵션은 다를 수 있습니다. 매뉴얼 페이지를 확인하십시오.
코드를 게시하시기 바랍니다. –
그럼 내가하고 싶은 코드는 없지만 top -b -n 1을 사용합니다. grep % i | awk '{print $ 9}'를 사용하여 프로세스의 CPU 백분율을 찾습니다. – icebox3d
그러면 왜이 태그가 파이썬 질문으로 태그됩니까? –