불합리한 메모리 사용량 [닫기]

불합리한 메모리 사용량 [닫기]

CentOS에서 다중 프로세스 Python 프로그램을 실행하고 있습니다. 이 프로그램은 많은 메모리를 필요로 하지 않습니다. 문제는 내 64GB RAM 컴퓨터에 다른 계산 집약적인 작업을 실행하기에는 메모리가 거의 부족하다는 것입니다. 같은 문제가 발생한 사람이 있습니까?여기에 이미지 설명을 입력하세요.

고쳐 쓰다:

%MEM 정렬 처리 후 출력의 일부는 다음과 같습니다.

21922 haoyu     20   0 12.457g 1.204g      0 T   0.0  1.9   0:00.02 python
21871 haoyu     20   0 12.433g 1.204g      0 T   0.0  1.9   0:00.02 python
21872 haoyu     20   0 12.433g 1.204g      0 T   0.0  1.9   0:00.02 python
21895 haoyu     20   0 12.433g 1.204g      0 T   0.0  1.9   0:00.02 python
21896 haoyu     20   0 12.433g 1.204g      0 T   0.0  1.9   0:00.01 python
21897 haoyu     20   0 12.433g 1.204g      0 T   0.0  1.9   0:00.03 python
21898 haoyu     20   0 12.433g 1.204g      0 T   0.0  1.9   0:00.01 python
21899 haoyu     20   0 12.433g 1.204g      0 T   0.0  1.9   0:00.02 python
21900 haoyu     20   0 12.433g 1.204g      0 T   0.0  1.9   0:00.01 python

문제는 다중 프로세스 Python 프로그램의 일부 버그일 수 있습니다. 하위 프로세스가 제대로 종료되지 않고 여전히 일부 메모리를 차지하는 것 같습니다. 이들 중 다수는 현재 CPU를 적극적으로 사용하고 있지 않기 때문에 옵션 없이 top 명령을 적용하면 볼 수 없습니다.

답변1

첨부한 이미지에는 메모리 사용량 대신 CPU 사용량을 기준으로 정렬된 프로세스/프로그램이 있습니다.

실행 중인 Python 프로그램이 메모리의 0.4%(및 CPU의 100%)만 사용하고 있는 것 같습니다. 어쩌면 다른 프로세스/프로그램이 서버의 메모리를 사용하고 있을 수도 있습니다.

메모리 사용량별로 정렬된 프로그램 목록을 생성하는 명령을 실행하십시오.

top -o %MEM -b -n 1 | head -20

프로세스/프로그램 이름이 있는 마지막 열을 살펴보세요.

귀하의 질문에 대한 답변을 제공해야합니다.귀하의 컴퓨터에 사용되는 메모리는 무엇입니까?.

관련 정보