Чому кеш у моїй пам’яті завжди заповнений?


13

У мене є 6 Гб оперативної пам’яті, процесор i5 2.4 ГГц під управлінням Ubuntu 11.10. Я розділив свій HD, щоб у мене був обмін 8 ГБ.

Під час трансляції в Інтернеті або відкриття декількох вкладок у Chromium я скоро мати 4 Гб пам'яті в кеші. І я думаю, що це робить мій ноутбук повільним. Під час трансляції відео через кілька хвилин воно справді сповільнюється і спотикається / смикається.

Яка може бути проблема? Як я можу це вирішити?

PS: Спочатку у мене було 4 Гб, а нещодавно оновлено до 6 ГБ, але я не зазнала значних змін.

PPS: free -gу терміналі друкується це:

               total       used       free     shared    buffers     cached
Mem:             5          2          3          0          0          0
-/+ buffers/cache:          1          4
Swap:            8          0          8

Що ви маєте на увазі під «кешем оперативної пам’яті» і як ви скажете, що він заповнюється?
Сергій

Чи можете ви, будь-ласка, запустити free -g(у терміналі), коли у вас виникне проблема та включити висновок команди у своє запитання.
Portablejim

На моїй верхній панелі я маю аплет, який графічно вказує на оперативну пам'ять та використання процесора. Коли я натискаю на нього, він говорить мені, що: "Mem: 2GB Cache 4GB"
Tobias

1
free -gговорить, що у вас є 3 ГБ безкоштовної оперативної пам'яті. Пам'ять - це не ваша проблема!
Ams

Добре дякую, що ви очистили це, але, можливо, тому, що в той момент я не передавав Інтернет? У мене просто працював хром.
Тобіас

Відповіді:


13

Кешування даних в ОЗУ повинно робити речі швидшими, а не повільнішими - отримання речей повторно з диска, коли у вас є невикористана пам'ять, просто нерозумно. Якщо ви розливаєтеся в місцях для заміни, це вплине на ефективність. Ви можете легко сказати, чи використовуєте ви будь-який своп, запустивши System Monitor. Якщо графік обмінного простору не піднімається під час запуску проблеми, то проблема не пов'язана з пам'яттю.

Звичайно, при потоковому перегляді відео воно запам'ятовується в пам’яті, але для заповнення 6Gb потрібно досить багато відео! Я б очікував, що це займе більше ніж кілька хвилин, щоб завантажити стільки даних, і набагато більше, щоб викликати проблеми!

Ви впевнені, що щось інше не проблема? Скажіть, охолодження, можливо? Багато ноутбуків мають процесори, які перевищують швидкість порівняно з системою охолодження. Це добре - це дає високу пікову ефективність, добре для бурхливого руху, при цьому основну масу знижує, - але вона не може підтримувати продуктивність надовго, перш ніж її змусять набрати назад тактову частоту або розтанути. Відео може бути досить процесорним, тому ви ніколи не знаєте?

У будь-якому випадку, ви повинні мати можливість бачити з використання пам'яті, замінюється вона чи ні. Якщо це так, то це проблема з програмним забезпеченням, і їх можна виправити. :)


Я використовую лише 1,8% SWAP. Охолодження не є проблемою, оскільки у мене є охолоджуюча колодка з двома вентиляторами. Я знаю, що відео є інтенсивним процесором, але i5 чотирьохядерний 2,4 ГГц та 6 ГБ оперативної пам'яті, безумовно, повинно бути достатньо для плавного потокового передавання.
Тобіас

1,8% свопів підказує мені, що ваша проблема полягає не в тому, що у вас залишилася оперативна пам’ять. Я погоджуюся, доки ваш процесор не був заглушений, він повинен мати можливість виконувати цю роботу.
Ams

Гаразд, можливо, це сам браузер?
Тобіас

Дякую за ваші відповіді, я спробую скористатись іншим браузером і повідомляю, чи проблема не зникає. Ще раз дякую, ви були дуже корисними та добрими, я дуже ціную!
Тобіас

11

У мене така ж проблема, схоже, кеш ніколи не випускається ... Одним із прикладів було те, коли я перевірив сховище і закінчив кеш у 4 Гб

Приклад:

$ free -m
             total       used       free     shared    buffers     cached
Mem:          7949       7425        523          0        112       4433
-/+ buffers/cache:       2879       5069
Swap:         7627          2       7625

Що я зробив, це запустити код нижче (коментарі - просто так, щоб ви знали, що відбувається), ви можете створити сценарій, щоб ви могли запустити його, коли вам це потрібно:

# To free pagecache:
#         echo 1 > /proc/sys/vm/drop_caches
# To free dentries and inodes:
#         echo 2 > /proc/sys/vm/drop_caches
# To free pagecache, dentries and inodes:
#         echo 3 > /proc/sys/vm/drop_caches
sudo sync && sudo sysctl -w vm.drop_caches=3

Після того, як я запустив код вище:

$ free -m
             total       used       free     shared    buffers     cached
Mem:          7949       2820       5129          0          2        407
-/+ buffers/cache:       2409       5539
Swap:         7627          2       7625

4
Це не проблема, так працює кеш сторінок. Це дозволить зберігати кешовані речі якомога довше, але автоматично відпускати елементи, коли тиск у пам'яті інших програм зростає. Очистити його вручну не потрібно.
Цезій

5
Це може бути так, але в такому випадку алгоритм не такий хороший. Чому я маю більше 4 Гб кешу і почати використовувати своп?
Карло

З цього приводу мені подобається ця стаття: посилання
Карло

1
У моєму теперішньому випадку я перевіряю величезний сховище, і всі файли отримують кешування, поки він не заповнить пам'ять, як тільки там він почне мінятись замість випуску кешу ...
Карло

Раніше я захоплювався розробкою ядра. Досить впевнений, що це все ще "задумом". Якщо ядро ​​вважає, що швидше за все знову відкриється частина файлу, ніж деякі анонімні дані, воно підміняє дані анонів і збереже кеш сторінки. Зрозуміло, чи правильно приймати рішення - це інше питання, звичайно :)
Стів Ді

0

Моя пропозиція полягатиме в тому, щоб запустити будь-який провідник процесів (наприклад, System Monitor) і перевірити, який процес вимагає стільки пам’яті. опублікуйте його тут, і ми побачимо, чи можете ви вимкнути його.

пс. ок, я зрозумів це зараз. Б'юсь об заклад, що "контейнер плагінів" зростає з часом завдяки тому, як він використовує пам'ять. Я здогадуюсь, тому що це порт із системи Gill Bates;). Вбити його не допоможемо (вбивши його, ви зірвете всю анімацію на кожній сторінці, в основному рекламу, а також відео YouTube). Крім того, сам хром любить роздуватися з часом, тому єдиним способом боротьби з ним було б, ймовірно, час від часу його перезавантаження. Подивіться, чи це допомагає ...


Дійсно, коли я перезавантажую веб-переглядач, потокова передача знову працює безперебійно, проте лише протягом 10 хвилин. Тоді мені доведеться знову перезапустити браузер.
Тобіас

Використовувані процеси: Chromium 250MB Chromium 214 MB Chromium 150Mb, compiz 119 MB, zeitgeist-daemon 111 MB, хром 70Mb, exe 24% процесора та 60MB, Rhythmbox 50MB, ubuntuone-syndaemon 26MB тощо.
Tobias

Боюся, що ваша проблема може бути викликана самим браузером. Розглянемо можливість переходу на Firefox або будь-який на ваш вибір, що, на думку користувачів, в Інтернеті Chromium споживає приблизно в 3 рази більше пам’яті, ніж будь-який інший браузер «верхньої лінії». Спробувати. Встановіть, відкрийте однакову кількість вкладок і порівняйте ...
Адам Крочик

Я дописую це. Дуже дякую за пропозицію. все найкраще
Тобіас
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.