Я запускаю многопроцессную программу Python на CentOS. Программа не требует много памяти. Проблема в том, что на моем компьютере с 64 ГБ памяти почти нет памяти, и я не могу запускать другие ресурсоемкие задачи. У кого-нибудь была такая же проблема?
Обновлено:
после сортировки обрабатывается по %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, похоже, подпроцессы не были правильно закрыты и все еще занимают память. Поскольку многие из них в настоящее время не активны в использовании ЦП, при применении команды top без параметров я не могу их увидеть.
решение1
На прикрепленном вами изображении процессы/программы отсортированы по использованию ЦП, а не памяти.
Похоже, что программа Python, которую вы запускаете, использует ТОЛЬКО 0,4% памяти (и 100% ЦП). Вероятно, другой процесс/программа использует память на вашем сервере.
Запустите команду, которая сгенерирует список программ, отсортированных по использованию памяти:
top -o %MEM -b -n 1 | head -20
и посмотрите на последний столбец с названием процесса/программы.
Это должно дать вам ответ на вопрос,Что использует память на вашем компьютере?.