Автор Тема: кэширование в память, tmpfs, swap и тд  (Прочитано 2841 раз)

Оффлайн slc

  • Участник
  • *
  • Сообщений: 240
собственно не то что бы проблема, но немного не укладывается в голове на кой ляд система забивает дисковым кэшем почти всю память оперативную ?
кто-то работает на 2 гб рам, на 4 , на 8 .. у меня кэша только 10 гб .. вначале его набьет под завязку, потом пытается чистить .. я не вижу никаких преимуществ , наоборот, потерю скорости и снижение скорости отклика системы ..

тезисно:
1) на что влияет  vm.vfs_cache_pressure ?
2) на что влияет  vm.swappiness ?

как ими правильно пользоваться ? вразумительного ничего не нашел, всяко пробовал , покамест дошел, что кэш прэшшуа выставил в 500, сваппинс в 25 ..  с параметрами 50 и 25 соответственно система спокойна кушает  те же 8 гб рам, да хоть 16 гб рам и будет весело сообщать, что свободно 100-150 мегабайт .. чем выше параметр кэш прешуа - тем агрессивнее система избавляется о дискового кэша, с параметром 250 = такое себе, особо не вижу разницы с состоянием из коробки ,  с 500 = уже ничего так, из 16 гб свободно в среднем 7 гб, а не 1.5 гб , а так получается из коробки, ну и насколько я понял параметр кэшпрэшуа из коробки вроде как = 100 ..

какие есть пределы то ? вообще не нужен кэш в таких кол-вах, уперся в скорость диска, бог с ним, пусть уж тупит и тормозит сразу, а не чутка потом и гораздо сильнее , когда не ждали ..

вручную дропнул кэш и попер в вайне софт запускать , видеть с 8-16 гб рам на виндовом приложении образца 10 летней давности, что мол памяти не хватает как бы резко отрезвляет .. мне НЕ настолько скушно, чтоб это руками делать :-t

реально, дропнул кэш , приложуха завелась и пошла работать .. кабздец ж ..  даже без них - заметно это .. через чур много памяти отдает под кэш .. через-чур .. 

как заставить систему явно начинать свапица, но после определенного предела "забитости" памяти ? явно указать в мегабайтах , а то  все эти параметры в циферках  явно не проценты ..

25% от памяти = явно не 150 мегабайт .. а система спокойно доходит до этого и еще не пытается свапица , никак ..

3) где живет настройка размеров tmpfs ? зачем то заграбастывает половину памяти из коробки , надо уменьшить .. явно , кончится, так кончится, ничего кроме браузеров не отвалятся, которые в tmpfs живут целиком , обойдутся ..

4) как убрать /dev/ram0-/dev/ram15 , вообще убрать , оставить 1 штуки и все, чтоб глаз не мозолили ?  ну где-то ж есть конфигурационный файлик то явно ж , не ? и размер выставить сразу и кол-во самих таких дисков ..

ну висит устройств этих 16 по 16 Mib каждое, при этом tmpfs съел 7 гб рам сразу,  как-то не очень понятно как этим  пользоваться то , 16 на 16 явно не 7 гб получается .. 
« Последнее редактирование: 06.05.2025 05:14:24 от slc »

Оффлайн asy

  • alt linux team
  • ***
  • Сообщений: 8 370
Re: кэширование в память, tmpfs, swap и тд
« Ответ #1 : 06.05.2025 19:43:05 »
не укладывается в голове на кой ляд система забивает дисковым кэшем почти всю память оперативную ?
А куда ещё её девать? Потребуется - сколько надо освободит.

Оффлайн slc

  • Участник
  • *
  • Сообщений: 240
Re: кэширование в память, tmpfs, swap и тд
« Ответ #2 : 06.05.2025 20:24:51 »
не укладывается в голове на кой ляд система забивает дисковым кэшем почти всю память оперативную ?
А куда ещё её девать? Потребуется - сколько надо освободит.
не успевает .. или не может это сделать корректно вообще ..

приложения не стартуют, они валятся с ошибкой по нехватки памяти , при этом память сожрана кэшем ..  при этом есть свап, что мешает начать свапица ? дык этого не особо то происходит ..

имея несколько гигов скорости на чтение и запись в секунду на носители физические = как бы кэш немного до фонаря становится .. вообще , можно ли выборочно юзать его ? решение об "подходе" принимается на лету, учитывается просто с какого устройства запущено что-то , либо это медленный накопитель, либо скоростной, дифференцированный подход можно реализовать ?

у вас все хорошо, рад за Вас , у меня все плохо, меня не устраивает отказ в запуске приложений с ошибкой "нехватка памяти" .. оно на целере в 1.5 ггц 1 ядерном на ХР работало на 1 гб рам , всего 1 гб рам, а тут на 16 гб спотыкается .. на 8 гб  - еще чаще , эт звездец ..  да, приложение не нативное, да, оно стартует в вайне, точнее пытается и валится,  дальше что ? на нативных - фризы и затыки , вытянул я 200 гб за раз чего-нить, кэш под завязку .. самый медленный диск быстрее ширины канала в десятки раз, он успеет железно все, не надо столько держать в кэше ..  все .. либо руками дропнуть, либо ребут .. это дурь , полная причем ..

нужен какой-то разумный баланс .. ну не методом ж тыка то подбирается это все? есть ж какая-то закономерность , разумное объяснение этим циферкам и тп ..   
 
есть лютые железячники то ?  мне не надо как у всех, мне надо выжать предел с железа ;-D  рано или поздно я это сделаю ..

мне нужна только помощь в понимании того как работает , то что тезисно перечислено в 1 посте ..   

статеек то много, советы диаметрально противоположные .. 
« Последнее редактирование: 06.05.2025 22:07:43 от slc »

Онлайн gosts 87

  • Участник
  • *
  • Сообщений: 3 320
  • Дмитрий/Dmitry/德米特里/दिमित्री
Re: кэширование в память, tmpfs, swap и тд
« Ответ #3 : 06.05.2025 22:08:22 »
Если всё настолько плохо, то оформляйте багу. Вот в данном случае - на дистрибутив(ы) на котором(ых) это замечено. С выхлопами терминала.

Оффлайн slc

  • Участник
  • *
  • Сообщений: 240
Re: кэширование в память, tmpfs, swap и тд
« Ответ #4 : 06.05.2025 22:09:12 »
чем выше параметр кэш прешуа - тем агрессивнее система избавляется о дискового кэша, с параметром 250 = такое себе, особо не вижу разницы с состоянием из коробки ,  с 500 = уже ничего так, из 16 гб свободно в среднем 7 гб, а не 1.5 гб , а так получается из коробки, ну и насколько я понял параметр кэшпрэшуа из коробки вроде как = 100 ..
нет, не так, показалось, забил всю память кэшем , опять, осталось 200 мб свободно , свап прешшуа выставлен был в 500, потом в 1000 ..  один хрен .. чего сделал? особо ничего, выключил свап, удалил свапфайл, сделал новый, но уже побольше, запустил обратно, все , память кончилась ..
« Последнее редактирование: 06.05.2025 22:13:23 от slc »

Оффлайн slc

  • Участник
  • *
  • Сообщений: 240
Re: кэширование в память, tmpfs, swap и тд
« Ответ #5 : 06.05.2025 22:10:24 »
Если всё настолько плохо, то оформляйте багу. Вот в данном случае - на дистрибутив(ы) на котором(ых) это замечено. С выхлопами терминала.
почему багу то ? причем тут дистрибутив то ? 

оно и в дебиане так же, к примеру , я об это же споткнулся .. чего каждый раз к дистрибутиву то цепляться ? дистрибутив тут причем ? вообще нет вопросов к дистрибутиву конкретному ..

Онлайн gosts 87

  • Участник
  • *
  • Сообщений: 3 320
  • Дмитрий/Dmitry/德米特里/दिमित्री
Re: кэширование в память, tmpfs, swap и тд
« Ответ #6 : 06.05.2025 22:14:32 »
оно и в дебиане так же, к примеру , я об это же споткнулся .. чего каждый раз к дистрибутиву то цепляться ? дистрибутив тут причем ? вообще нет вопросов к дистрибутиву конкретному ..
Побочный эффект от приёма использования systemd...

Оффлайн Nicom

  • Участник
  • *
  • Сообщений: 971
Re: кэширование в память, tmpfs, swap и тд
« Ответ #7 : 06.05.2025 22:29:08 »
Все ваши вопросы к ядерным компонентам.
Свободная память == мёртвая память.
/dev/ram[1-16] резервирует ядро для своих нужд, например криптографии.

нужен какой-то разумный баланс ..
Он есть по умолчанию и работает у многих. Почему не работает у вас - вопрос.
Какое ядро вы используете?
На каком железе?
С другими ядрами ситуация похожая, это я про запуск wine приложения, или нет?

У меня люди сидят в запущенных через wine приложениях и параллельно смотрят новости через нативный браузер, это на e7500/4GB RAM DDR2, правда с включённым zram-swap, и не жалуются.

мне нужна только помощь в понимании того как работает , то что тезисно перечислено в 1 посте ..
Весельчак. :)
Статеек много, но есть комментарии от производителя ядра, правда на ненашенском языке.

Оффлайн asy

  • alt linux team
  • ***
  • Сообщений: 8 370
Re: кэширование в память, tmpfs, swap и тд
« Ответ #8 : 06.05.2025 22:48:09 »
не укладывается в голове на кой ляд система забивает дисковым кэшем почти всю память оперативную ?
А куда ещё её девать? Потребуется - сколько надо освободит.
не успевает .. или не может это сделать корректно вообще ..
Странно. А это именно дисковый кэш? Вопрос на засыпку: slabtop ничего неожиданного не показывает?

Оффлайн slc

  • Участник
  • *
  • Сообщений: 240
Re: кэширование в память, tmpfs, swap и тд
« Ответ #9 : 06.05.2025 22:55:26 »
/dev/ram[1-16] резервирует ядро для своих нужд, например криптографии.
я его не просил этого делать, я не понимаю зачем оно нужно , почему другой дистрибутив даж если и резервирует их так же, так же использует, но не выводит про них данные в fdisk и тп ?
в первую очередь я НЕ хочу их видеть в выводе fdisk'а
давайте уточним, как их "спрятать" тогда уж, чтоб больше не видеть ?

дальше - где живет конфиг размера tmpfs , который из коробки зачем-то может кушать до 50 % памяти ?

На каком железе?
С другими ядрами ситуация похожая, это я про запуск wine приложения, или нет?
uname -a
Linux pro300ge 6.12.27-6.12-alt1 #1 SMP PREEMPT_DYNAMIC Mon May  5 12:10:43 UTC 2025 x86_64 GNU/Linux

да похожая, даж другой дистриб - похожая,  железо амд ж300 про 16 гб рам,  те же грабли на амд e-6110 8 гб рам, те же грабли на амд 200же с  8 гб рам  .. 

 
У меня люди сидят в запущенных через wine приложениях и параллельно смотрят новости через нативный браузер, это на e7500/4GB RAM DDR2, правда с включённым zram-swap, и не жалуются.
каких приложениях то ? ))) давайте гонять в вайне просмотр конусно-лучевой томографии в проприетарном формате, рендерить с него 3д на ходу, гонять стандартный диком, рендерить с него 3д на ходу и тп )))  некоторые настолько кривые, что пускать приходится в виртуальной машине с 7-кой .. и с этим ничего не сделать ..  как уж есть .. 

с нативными - микрофризы замечаю, их нет, когда память "пустая" и они же появляются , когда "памяти нет" .. то есть можно и не заметить и сказать что все хорошо )))  с ненативными - прям явно спотыкается ..

на 8 гб рам без свапа = пуска не было в 100%  , если была какая-то активность и память система скормила под кэш .. вот просто не было в 100% случаев , после ребута = стартуем , дропнем все, стартуем .. как уж есть ..

софт кривой, реально кривой, допустим нет старта на вин10 с видеокартами амд , просто нет , удалить драйвер видеокарты - будет старт и слайдшоу, но старт будет,  на любой другой карте - проблем нет, просто нет .. приколов много .. реально много ..

придираться к самой ОС в целом я особо то не собираюсь, то что работает у большинства и все супергуд, ну и классно, рад за них,  у а меня не так )))) увы ..

поправить прошивку и перепрошить ЭБУ своим автомобилям - мне мощности асус еее 700 на 630 мгц , 1 ядро и 512 мб рам хватает .. к примеру .. дальше то что ? хвастаться динозаврами будем ? ))

но когда 1 раз увидел сообщение про нехватку памяти - офигел, эт еще мягко сказано ..

давайте таки к теме, баланс в конкретном случае я попробую поискать сам, что эти цифры то значат ? к ядерным компонентам вопросы, так к ядерным, как с ними работать ?
« Последнее редактирование: 06.05.2025 23:29:41 от slc »

Оффлайн slc

  • Участник
  • *
  • Сообщений: 240
Re: кэширование в память, tmpfs, swap и тд
« Ответ #10 : 06.05.2025 22:56:03 »
Статеек много, но есть комментарии от производителя ядра, правда на ненашенском языке.
именно, что много .. всяких, с абсолютно разной информацией , причем настолько разной, что по сути друг другу то противоречат , на нашенском .. много ..

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

правда с включённым zram-swap
и про zram-swap еще бы , если можно, как раз есть т3100 с 4 гб рам, как раз надо "оживить" старичка, памяти напихать больше как бы и не проблема, ее мешок , плата не умеет больше 4 гб, собственно так и заявлено в оф. документации ..
« Последнее редактирование: 06.05.2025 23:19:07 от slc »

Оффлайн slc

  • Участник
  • *
  • Сообщений: 240
Re: кэширование в память, tmpfs, swap и тд
« Ответ #11 : 06.05.2025 23:05:53 »
Вопрос на засыпку: slabtop ничего неожиданного не показывает?
оО, а в него я и не пытался смотреть ..  собственно никогда не пользовался и не очень понимаю как с ним работать .. так что - засыпался ..

на что внимание то обращать ?

Оффлайн asy

  • alt linux team
  • ***
  • Сообщений: 8 370
Re: кэширование в память, tmpfs, swap и тд
« Ответ #12 : 06.05.2025 23:27:46 »
Вопрос на засыпку: slabtop ничего неожиданного не показывает?
оО, а в него я и не пытался смотреть ..  собственно никогда не пользовался и не очень понимаю как с ним работать .. так что - засыпался ..

на что внимание то обращать ?
Да как обычно. Сколько всего съели, и если много, то кто. Это вот всё просто так не освобождается. Обычно тут суммарно не сильно много от общей памяти, но бывает всякое.

Оффлайн Nicom

  • Участник
  • *
  • Сообщений: 971
Re: кэширование в память, tmpfs, swap и тд
« Ответ #13 : 06.05.2025 23:34:25 »
Статеек много, но есть комментарии от производителя ядра, правда на ненашенском языке.
именно, что много .. всяких, с абсолютно разной информацией , причем настолько разной, что по сути друг другу то противоречат , на нашенском .. много ..
правда на ненашенском языке.
пальцем ткните, если можете,  будьте любезны, попробую перевести и понять .. главное - правильный источник ..
https://www.kernel.org/doc/Documentation/blockdev/ramdisk.txt
Ну и по сайту далее.

хвастаться динозаврами будем ? ))
Нет. Это был пример, что всё работает с настройками по умолчанию даже на старом железе, но интеловском.
На старом амдешном + нвидиа железе, на свежих ядрах, у меня не работают встроенные в чипсет видеоадаптеры, а nouveau не позволяет компьютерам отключаться, поэтому я списал эту платформу.
каких приложениях то ? ))) давайте гонять в вайне просмотр конусно-лучевой томографии в проприетарном формате, рендерить с него 3д на ходу,
На извращения в виде "рендерить с него 3д на ходу" вайн не особо способен. У меня под вайном запускают приложения для работы с базами данных.
почему другой дистрибутив даж если и резервирует их так же, так же использует, но не выводит про них данные в fdisk и тп ?
в первую очередь я НЕ хочу их видеть в выводе fdisk'а
Может версия fdisk модифицирована, может ядро собирают с отключёнными параметрами влияющие на подключение этих /dev/ramX.

железо амд ж300 про 16 гб рам,  те же грабли на амд e-6110 8 гб рам, те же грабли на амд 200же с  8 гб рам  ..
Для чистоты эксперимента, попробуйте на интел. Кто-ж знает какие баги есть в ядре.

Оффлайн slc

  • Участник
  • *
  • Сообщений: 240
Re: кэширование в память, tmpfs, swap и тд
« Ответ #14 : 06.05.2025 23:38:47 »
Может версия fdisk модифицирована, может ядро собирают с отключёнными параметрами влияющие на подключение этих /dev/ramX.
тот же дебиан ничего лишнего не пишет .. и никогда не был замечен в этом ..
Для чистоты эксперимента, попробуйте на интел. Кто-ж знает какие баги есть в ядре.
на интеле все обычно идеально работает .. всегда ..
разок пробовал как раз на динозавтре т3100 с 4 гб .. с настройками из коробки все работало , только не помню на чем пробовал, кажись это был СЛ 10.4 ..

сунул в него ссдюк новый , р11 стоит теперь, регулярка,  какое там ядро ? 6.12.24 вроде же ? ну близкое в любом случае, вот попробую нагрузить его хорошо и стартануть .. 
https://www.kernel.org/doc/Documentation/blockdev/ramdisk.txt
Ну и по сайту далее.
спасибо
На старом амдешном + нвидиа железе, на свежих ядрах, у меня не работают встроенные в чипсет видеоадаптеры, а nouveau не позволяет компьютерам отключаться, поэтому я списал эту платформу.
везде встройки , вега3 , р2 и тп .. бог с ним с софтом в вайне,  вега3 не может до 25 месы монитор по ХДМИ в стандбай перевести .. р2 амдешная - до 24 месы тож не может .. с ними один гемор ..
На извращения в виде "рендерить с него 3д на ходу" вайн не особо способен. У меня под вайном запускают приложения для работы с базами данных.
да ладно )) нид фо спид попался на старом диске , в етерсофтовском вайне прошел андеграунд 1 ))) понятно дело что старье, но таки 3д ... без проблем прошел )) работает 3д ..
« Последнее редактирование: 06.05.2025 23:49:00 от slc »