불합리한 메모리 사용량

불합리한 메모리 사용량

CentOS에서 다중 프로세스 Python 프로그램을 실행합니다. 이 프로그램은 많은 메모리를 필요로 하지 않습니다. 문제는 내 64GB 메모리 시스템에 메모리가 거의 부족하고 계산 집약적인 다른 작업을 실행할 능력이 없다는 것입니다. 누구든지 같은 문제가 있습니까?여기에 이미지 설명을 입력하세요

업데이트됨:

다음과 같은 출력의 일부를 사용하여 %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

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

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

관련 정보