Поскольку Google Chrome / Chromium порождает несколько процессов, сложнее понять, сколько общей памяти используют эти процессы.
Есть ли простой способ узнать, сколько общей памяти использует ряд связанных процессов?
memory
chrome
process-management
multithreading
Ryan1729
источник
источник
Ответы:
Учитывая, что Google убил chrome: // memory в марте 2016 года, я теперь использую smem :
chrom
на полный путь, например/opt/google/chrome
или/usr/lib64/chromium-browser
-P firefox
sudo smem
для этого.источник
338.0M
. Это слишком низко. Когда я запускаю System Monitor, я вижу, что есть 11 процессов Chrome, каждый из которых занимает от 70 до 400 МБ оперативной памяти. Не уверен, что системный монитор сообщает неправильно или нет.chrome
вместо простоchorm
потому, что если вы используете и хром, и хром, вы увидите общее для обоих.smem
из его собственного вывода, используя что-то вроде[c]hrome
, напримерsmem -tkP '[c]hrome'
. Это работает путем сопоставленияc
внутри квадратных скобок, а не самих скобок.Я уверен, что это не лучшее решение, но у меня оно работает:
Примечание: измените на
[/]opt/google/chrome/chrome
что-то подходящее для вашей системы, например, если вы используете Mac OS X (простоgrep "chrome"
будет работать).источник
awk
команды? То есть почему не просто... | awk '{sum += $6} END {print sum}'
?ps aux | grep "/opt/google/chrome/chrome" | awk '{vsz += $5; rss += $6} END { print "vsz="vsz, "rss="rss }'
smem
по верхнему ответу. Хотя FWIW, я бы реализовал его как скрипт или функцию, так как он слишком сложен для псевдонима.Запуск этого:
занимает 1,8 ГБ ОЗУ. Так что вы ожидаете запустить это:
займет в 16 раз больше. Но это не так.
Это связано с интеллектуальным копированием при записи в ядре Linux: поскольку содержимое «$ a» не меняется, память «$ a» может быть разделена. Но он останется общим, пока не будет изменено «$ a». Когда это произойдет, измененный раздел будет скопирован и начнет занимать ОЗУ.
Можно ли измерить, сколько памяти переполнено при копировании при записи, я не знаю. Но, по крайней мере, это объясняет ваш перерасчет.
источник
Просто быстро подсчитайте сумму процессов.
На Mac :
chrome://system/
и выбрать все сообщения в mem_usagepython
, CMD + V, EnterИ вуаля! "Легко" ... 🤓😅
PS - Сочетание ниндзя и 80-х / 90-х годов У игроков файтингов не должно быть проблем с этим решением 🤖🕹💾
источник
Я нашел решение с помощью vim и awk. Откройте chrome: // system, разверните mem_usage, скопируйте в vim и выполните регулярное выражение:
Это оставляет только цифры до MB. Сохраните файл и выполните
Я не смог преобразовать код регулярного выражения vim в sed.
источник
Есть USS, который доступен кроссплатформенный
psutil> 4.0. Библиотека Python может получить к ней доступ
Вот я бы этим воспользовался
где pid = 292 - PID большинства внешних процессов из Activity Monitor
источник
Я знал, что в chrome / chromium есть диспетчер задач, но он не дает общего объема используемой памяти. Оказывается, что ссылка «Статистика для ботаников» в диспетчере задач приводит к chrome: // memory-redirect /, который отображает общий объем используемой памяти. Было бы неплохо иметь внешнюю проверку этих чисел, а также способ получить информацию в командной строке, чтобы можно было сделать больше с ней, но, похоже, это лучший доступный способ.
источник