LINUX.ORG.RU
решено ФорумAdmin

Можно ли на RPI как-нибудь ускорить «отклик» tmpfs?

 , ,


0

1

Здравствуйте.

RPI4, archlinuxarm, иксы, WM. Хомяк небольшой и практически весь засунут в tmpfs (при старте системы соответствующая папка копируется в /tmp, а в ~/ уже есть соответствующие линки - то есть ~/.config является симлинком на /tmp/home/$USER/.config, например).

Система радует, реагирует шустро, но я задумываюсь: а можно ли ещё? Вопрос в следующем: есть ли у малинки какие-нибудь параметры, отвечающие за «скорость отклика» памяти, которые я могу подкрутить в config.txt?

Сформулировал достаточно сумбурно, прошу отнестись с пониманием - я дилетант. Спасибо за внимание.

★★★★★

Последнее исправление: piyavking (всего исправлений: 1)
Ответ на: комментарий от ALiEN175

Смысл что-либо куда-либо засовывать - то вопрос философский.

С кэша я начал. Потом залинковал в /tmp куки и часто меняюющееся из броузерного профайла. Потом устал вычислять, что у меня в профайле часто меняется, а что нет, и стал сувать туда профайл целиком. Потом конфиг WM. Ну а вчера я окончательно оволосел и отгрузил туда остатнюю мелочь типа ~/.themes, ~/.icons, ~/.local и т.п.

И в конце концов локально у меня остались только загрузки, ~/.profile и ~/.bash_profile.

Сгорел сарай - гори и хата. У меня есть стратегия, и я её придерживаюсь)))

piyavking ★★★★★
() автор топика
Последнее исправление: piyavking (всего исправлений: 1)

Бегло почитал маны. Судя по всему, подкручивать tmpfs некуда - разве что своп можно отключить (но зачем?) или поиграться с параметром huge (не знаю, что это даст).

В config.txt не вижу ничего про ускорение, кроме опций, связанных с разгоном. Но там, начиная с четвертой малинки, частоту памяти менять нельзя.

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

Ах да, есть еще статьи из выдачи Гугла «как ускорить линукс» разной степени сомнительности. Там будут советы вроде почистить автозапуск, отключить индексировщик файлов, настроить тримминг.

Vidrele ★★★★
()
Ответ на: комментарий от Vidrele

Этот руль я крутил, и эти колёса пинал. Пытался rt-ведро, но на убунте оно не завелось, а сейчас на арчике пока что сил нету. Да, попытки в частоту памяти в config.txt в лучшем случае дестабилизируют систему, в худшем девайс просто не грузится, увы.

подкручивать tmpfs некуда

Я примерно так и думал, что оно просто изначально задрано в потолок, и нечего туда лезть. Спасибо!

piyavking ★★★★★
() автор топика
Последнее исправление: piyavking (всего исправлений: 2)

Если в целом - нечего там ускорять. 1 канальная lpddr4 с лимитом частоты порядка 500Мгц, превращающая 4-х ядерник в 6-и поточный одноядерник. При перелистывании вкладок прям чувствуется как вся система подлагивает в ожидании данных.

Из моего config.txt:

arm_freq=1200
arm_freq_min=300
#over_voltage=2
##gpu_freq=400
##gpu_freq_min=100
core_freq=500
 =150

v3d_freq=500
v3d_freq_min=150
emmc_freq=200

Частота памяти задаётся прошивкой от core_freq, вроде как не напрямую. Можешь почитать полный официальный список опций конфига.тхт, он на английском но довольно хорошо написан. Попробуй поиграться, но думаю ничего принципиально не выиграешь, ну 600, ну 800Мгц, думаю там уже кривая производительности выйдет на плато. Контролировать фактичские значения можно через vcgencmd. Если что то указано в конфиге это не гарантия что параметр применится именно так.

Я наоборот, снижал нижние частоты и это выиграло до -0,5Вт в холостом режиме. Но 100Мгц для core_freq_min рушит стабильность, 200Мгц для arm_freq_min заставляют трещать воспроизводящийся звук, а снижение gpu_freq даёт тормоза интерфейсу.

kirill_rrr ★★★★★
()

соответствующая папка копируется в /tmp…

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

В довольно общих чертах.

Стандартная система. Во время загрузки, конфиги из ~/.config загружаются в память, если во время работы системы что-то изменяется, то изменяется в памяти, при выключении, изменения записываются на диск.

В твоей системе. Во время загрузки, из части памяти «создаётся диск для конфигов», на него копируется ~/.config с диска. Из этой памяти «имитации диска», конфиги копируются в память. По окончании работы, измения сохраняются в память «имитация диска», из «имитации диска» записываются на диск.

Примерно такой сумбур ты натворил.

andytux ★★★★★
()
Ответ на: комментарий от andytux

мощный процессор

дохлый винт и из памяти в разы читает быстрее, у меня то же всякие .cache, .config, .local в tmpfs живут, а еще недавно туда /var/cache/xbps засунул - ух как оно поскакало сума можно сойти.

много оперативки

до жопы - 3 с половиной гига, 4-ый пень даже не видит всю.

amd_amd ★★★★★
()
Ответ на: комментарий от andytux

«тиражированием» одной области памяти в другую

Нет. Копированием «реальной» папки в виртуальную файловую систему. Аноним выше дело говорит - я бросил детский сад и вписал /home во fstab как tmpfs, и набил muser.service, который во время загрузки копирует туда мой хомяк.

Во время загрузки, конфиги из ~/.config загружаются в память

О, сколько нам открытий чудных готовит просвещенья дух! С профайлом браузера, должно полагать, то же самое происходит?

Когда я WM перегружаю, не меняя его конфига, у меня дисковая активность ой как не на нуле. Видимо, я что-то когда-то сделал не так. Но интрига в этом есть, поизучаю. Спасибо!

piyavking ★★★★★
() автор топика
Последнее исправление: piyavking (всего исправлений: 1)
Ответ на: комментарий от anonymous

что-то старше Pi 5 для десктопа годится с трудом

Пишу с четвёрки. Отличный десктоп, мои потребности кроет с запасом. Труд состоял в освоении матчасти, но я маньяк, мне это по кайфу.

Пятёрка, естественно, в планах на приобретение, там вообще шестнадцать гиг потолок памяти, да ещё плюшек подвезли, аж пальцы на ногах подгибаются от предвкушения, как у шимпанзе)

piyavking ★★★★★
() автор топика
Последнее исправление: piyavking (всего исправлений: 1)
Ответ на: комментарий от x905

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

piyavking ★★★★★
() автор топика
Ответ на: комментарий от x905

https://ibb.co/PZ4np4kk

На работе. Два моника, иксы, броузер, звук. Тор, идвапя, игдразиль. Восемь гигов занято, пять свободно. Обойки-индикаторы, интерактивная луна в углу и проч.

Всё, что я написал, присутствует минус ардуры и элэмэмэсы. Эти гитариксы с юэсби-интерфейсами у меня дома на ещё одной четвёрке.

Сэд, как говорится, бат тру)

piyavking ★★★★★
() автор топика
Последнее исправление: piyavking (всего исправлений: 5)
Ответ на: комментарий от andytux

То есть, даже здесь не видишь, что повторяешь одно и тоже. В одной строке противоречишь сам себе.

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

piyavking ★★★★★
() автор топика
Последнее исправление: piyavking (всего исправлений: 2)
Ответ на: комментарий от andytux

измения сохраняются в память «имитация диска», из «имитации диска» записываются на диск.

Вот только tmpfs это не «имитация диска» из винды или ramdisk, это даже не ФС в полном смысле - там отсутствует слой блочного устройства и метаданных и разумеется к ней не примняются дисковые кеши и всякие i/o-механизмы.

Так что такой метод хранения данных даёт отличный пинок производительности пока не закончится свободная оперативка. Ну т.е. всегда кроме редких сценариев - даже сейчас, даже современному жирновебу достаточо 1-1,5Гб активной памяти вместе с системой и удивительно немного активных файлов из тмпфс. А запись на диск да, вполне можно произвести не каждые 10 секунд на протяжении недель (зачем выключать одноплатники?), а 1 раз при выключении. Ну или когда там нужно отсвопиться.

kirill_rrr ★★★★★
()
Ответ на: комментарий от piyavking

Не связывайся с этим огрызком, на который даже аудиовывод не завезли. Есть другие одноплатники, там с поддержкой софта может и похуже, но ядер будет побольше и видеокарта может быть в итоге пободрее.

kirill_rrr ★★★★★
()
Ответ на: комментарий от kirill_rrr

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

piyavking ★★★★★
() автор топика
Последнее исправление: piyavking (всего исправлений: 5)

Можно подобрать сжатие правильное, например если ЦП хороший, но карта или картридер медленные, то можно применить сложные многопоточные алгоритмы, а если наоборот, то алгоритмы более простые.

drl
()
Ответ на: комментарий от piyavking

Мне кривая производительности не нравится, +50% роста всего на 600...1200. И ещё чтобы не перегреть плату на старте пока cpufreqd не подключится. Один хрен в пасиве работает 90% времени, а это 800, иногда 1000. Плюс будет потом куда оверклокнуть когда веб ещё больше ожиреет.

kirill_rrr ★★★★★
()

Но хранить файлы в tmpfs это странно как минимум, потому что файлы с диска кэшируется и так, если только оперативки 128G, но флешка 2G. Лучше починить часто дёргающий диск софт или заранее в фоне с очень низким приоритетом читать с диска в /dev/null чтобы потом из кэша читалось.

drl
()
Ответ на: комментарий от piyavking

Если они аудио пины на гребёнке оставили - да и на здоровье.

В АЦП/ЦАП GPIO малинки никогда не умел. Все пины – или питание, или цифровые сигналы. Сомневаюсь, что в Pi 5 что-то изменилось.

Остается вешать аудиокарту на гребенку, USB, PCIe либо чем-то ловить цифровой звук с HDMI.

Vidrele ★★★★
()
Ответ на: комментарий от kirill_rrr

А чего нельзя-то? Вентилятор же надевают проводом на гребёнку, чего б аудиовыход не надеть. И вывести эту фистулу в корпус, хошь на морду, хошь... эээ... вбок. Где дырдочку в корпусе провертишь - туда джеком и тыкаться. Да так и трушней даже получится.

piyavking ★★★★★
() автор топика
Ответ на: комментарий от Vidrele

Так не надо никакой аудиокарты, насколько я понял из https://raspberrypi.stackexchange.com/questions/49600/how-to-output-audio-sig... и https://forums.raspberrypi.com/viewtopic.php?t=359183 . Там просто линейный выход, просто он выведен не на отдельный разъём, а на контакты GPIO. Если в PI5 ничего не поменялось - значит так там и осталось. Значит, не надо мудрить ни с какой активной обвеской, а просто вывести эти контакты в удобное место на корпусе и прикрутить к ним джек.

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

piyavking ★★★★★
() автор топика
Последнее исправление: piyavking (всего исправлений: 3)
Ответ на: комментарий от kirill_rrr

видеокарта может быть в итоге пободрее

Doom3 ultra settings Rockchip RK3588s:

https://www.youtube.com/watch?v=rE9iFeoKbEg

Doom3 medium settings Raspberry Pi 5:

https://www.youtube.com/watch?v=uu_GwWHxpsY

поддержкой софта

https://www.opennet.ru/opennews/art.shtml?num=62752

В Vulkan-драйвере PanVK для GPU ARM Mali на базе архитектуры V10, таких как Mali-G610 и Mali-G310, реализована поддержка API Vulkan 1.1. PanVK включён в список драйверов, доступных для использования в Mesa по умолчанию. На системах ARM сборка PanVK включена по умолчанию.

Goat ★★★
()
Ответ на: комментарий от drl

файлы с диска кэшируется и так

Не спорю. Наверно, что-то такое есть. Но кешируются они так себе, это воочию видно по индикатору дисковой активности до операции и после неё.

piyavking ★★★★★
() автор топика
Ответ на: комментарий от anonymous

У меня нет друзей, друг мой. Не, до такой степени погружения я ещё не дорос. Это уже не оволосение, это уже ороговение какое-то. Воздержусь пока, тише едешь - дальше будешь бггг.

piyavking ★★★★★
() автор топика
Последнее исправление: piyavking (всего исправлений: 1)