RAMzSWAP (сжатый своп без использования диска)

Re: RAMzSWAP (сжатый своп без использования диска)

Postby Ajax » 10 May 2011, 10:22

Далаю так..Все монтируется и все равно какие бы ни были параметры трансмиш вылетает через 10-15 минут с зависанием плеера хотя на swaps загрузка ramzswap около 50%..и есть еще включенный третьим приоритетом свап на диске..Без ramzswap трансмиш работает как часы с двумя..тремя торрентами..Может 2.12 не вполне корректно работает с сжатым свапом...Или только у меня такая трабла с трансмиш..
Ajax
 
Posts: 96
Joined: 03 Mar 2011, 16:29

Re: RAMzSWAP (сжатый своп без использования диска)

Postby Ajax » 11 May 2011, 13:10

Удалось победить поставив disksize 10240 ..Во всех случаях запуск двух тяжелых приложений - просмотр BD Rip и transmission приводило к зависону..Сейчас все нормально..Только я думаю не маловат ли размер если рекомендуется по умолчанию 25% RAM..
Ajax
 
Posts: 96
Joined: 03 Mar 2011, 16:29

Re: RAMzSWAP (сжатый своп без использования диска)

Postby Sergy » 19 May 2011, 14:42

может стоит добавить RAMzSWAP в MoS? ;)
ASUS O!Play HDP-R1, Linux AMP12 2.6.12.6-VENUS #AMP12.5, скин VRT
Sergy
 
Posts: 18
Joined: 12 May 2011, 11:13

Re: RAMzSWAP (сжатый своп без использования диска)

Postby Solim » 19 May 2011, 15:11

Sergy wrote:может стоит добавить RAMzSWAP в MoS? ;)

В Мос3 уже есть. Думаю, когда Мос3 отшлифуют, то поставят в прошивки вместо Мос2.
viewtopic.php?f=16&t=694#p10662
TL-WR741ND (50 Mb\s) + asus R1 (AMP_R11-HD2 skin) + Verbatim 1TB (usb 2.0 ntfs) and WD 2TB + wi-fi notebook (win xp)
User avatar
Solim
 
Posts: 433
Joined: 24 Mar 2011, 12:32
Location: Украина, Ровно

Re: RAMzSWAP (сжатый своп без использования диска)

Postby Ajax » 19 May 2011, 21:19

У меня все же остаются вопросы по поводу этой программы..Или у меня плеер работает как то не так..Отзовотесь те, кто на R1 или 3 может при использовании ramzswap и стоящим по умолчанию disksize 32768 запустить трансмиш с хотябы двумя торрентами и просмотреть какой нибудь рип...Сколько будет времени до зависона..Думаю минут10...У меня так..Хотя при обычном свопе на диск такого никогда не бывает..Не буду спорить отзывчивость оперы при сжатом свопе несомненно лучше..Sekator500 несколько лукавил говоря выше что это приложение не отъедает оперативу..это не так..Даже пусть идеальная степень сжатия всех страниц свопа будет50%-60% чтобы сжать 32768 нужно будет хотябы 10 мбайт оперативы которой может и не хватить Но степень сжатия разная - 30-20% а есть еще и не сжимаемые страницы и в этом случае программа увеличивает объем оперативки чтобы уместить прописанный 32768 что и приводит к зависону как на моем плеере..Да ремсвап динамично меняет свой размер в зависимости от сжатия страниц любой ценой стараясь уместить 32768..Для 128 метровой оперативки я думаю это не приемлемо...Думаю нужно прописывать не размер сжимаемых страниц а максимальный размер сжатого которое помещается в оперативной памяти..
Со своей стороны для оптимизации свапа и работы оперативной памяти могу посоветовать увеличить размер swappiness( 90 по умолчанию) поставив на 100
echo 100 > /proc/sys/vm/swappiness ( можно прописать в rcS для постоянной загрузки) и уменьшить размер оперативной памяти выделяемой под кэш вплоть до 10 ( 100 по умолчанию) echo 10 > /proc/sys/vm/vfs_cache_pressure ( прописав там же) Можно также поэкспериментировать с параметром dirty_ratio ( по умолчанию 40) -сброс буфера если приложение суммарно займет в нашем случае 40% памяти.
Ajax
 
Posts: 96
Joined: 03 Mar 2011, 16:29

Re: RAMzSWAP (сжатый своп без использования диска)

Postby Solim » 19 May 2011, 21:26

Ajax wrote:Отзовотесь те, кто на R1 или 3 может при использовании ramzswap и стоящим по умолчанию disksize 32768 запустить трансмиш с хотябы двумя торрентами и просмотреть какой нибудь рип...Сколько будет времени до зависона..Думаю минут10...

4-5 минут ;)
TL-WR741ND (50 Mb\s) + asus R1 (AMP_R11-HD2 skin) + Verbatim 1TB (usb 2.0 ntfs) and WD 2TB + wi-fi notebook (win xp)
User avatar
Solim
 
Posts: 433
Joined: 24 Mar 2011, 12:32
Location: Украина, Ровно

Re: RAMzSWAP (сжатый своп без использования диска)

Postby Ajax » 19 May 2011, 21:48

Программа неоднозначная..Вот почему происходит ускорение оперы- оперативная память динамически разделяется между всеми запущенными службами...Ramzswap тоже отъедает определенную часть пирога...Например опере не хватает памяти и часть данных сбрасывается в свап..В случае ramzswap это все таже оперативная память...Происходит некий обман и процесс занимает больше оперативки чем он бы занял в естественных условиях..и не особо важно сжимаются страници или нет..Дело в лишнем куске оперативной памяти под названием ramzswap...Вот и ускорение..Но беда втом что свап этот динамичен и стараясь уместить прописанный размер попадая в условия когда может быть много несжимаемых или плохо сжимаемых данных он раздувается в оперативке а поскольку не имеет строгих границ расширения ( повторяю- ОН ДИНАМИЧЕН) и не может сбросить данные ( прописано как закон-32768) переполняется оперативка и плеер умирает...Программа хороша в условиях хорошо сжимаемых данных и я не очень разделяю восторги по ее поводу по крайней мере в условиях 128 мегабайтной и практически под завязку забитой оперативы.. ;)
Ajax
 
Posts: 96
Joined: 03 Mar 2011, 16:29

Re: RAMzSWAP (сжатый своп без использования диска)

Postby Virtual » 19 May 2011, 21:52

Ajax
продолжайте тестить :).... да модуль неоднозначен,
и факт что он часто очень даже помогает,
но тоже факт что он иногда уменьшает стабильность

:(.... осталось найти золотую середину.
марсы: HDS7 (смотрелка AMP скин vrt уже без вариантов)
HDR12 AMP (обычно сервер с RAM 256 и возможностью подключить 2 SATA диска 2T+)
XTR PRO(AMP, HTTP(S) NFS SMB FTP сервер +trans2.90 + 2 SATA диска 2T+
сатурны: XTR Prodigy, R6S(512Mb_NAND), HD900A(_MD*) прошивка
User avatar
Virtual
 
Posts: 6449
Joined: 01 Oct 2010, 17:17
Location: UFA RU

Re: RAMzSWAP (сжатый своп без использования диска)

Postby inoremap » 20 May 2011, 08:50

Solim wrote:
Ajax wrote:Отзовотесь те, кто на R1 или 3 может при использовании ramzswap и стоящим по умолчанию disksize 32768 запустить трансмиш с хотябы двумя торрентами и просмотреть какой нибудь рип...Сколько будет времени до зависона..Думаю минут10...

4-5 минут ;)
на wl500g.info для повышения стабильности работы требовательных к памяти программ советуют увеличить параметр min_free_kbytes до 10-16МБайт

echo 10240 > /proc/sys/vm/min_free_kbytes

кто-нибудь проверял влияние этого параметра на работу transmission на плеере?
User avatar
inoremap
 
Posts: 33
Joined: 20 Oct 2010, 12:08

Re: RAMzSWAP (сжатый своп без использования диска)

Postby Sekator500 » 20 May 2011, 09:57

Чего лукавит, я имел ввиду что память не выделается под указаний размер можно хоть 512мб поставить :)

Согласен в нужную сторону копаете, но все-таки упорно игнорируете мануал по ramz (http://compcache.googlecode.com/hg/sub- ... l?r=defrag а также смотрим http://code.google.com/p/compcache/wiki ... ndUsingNew) и основные понятия выделения памяти, в том что происходит OOM ramz невиноват.

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

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

Например если так:

echo 100 > /proc/sys/vm/swappiness (свопимся больше)
echo 2 > /proc/sys/vm/overcommit_memory (запрет на алокацию более чем ratio)
echo 25 > /proc/sys/vm/overcommit_ratio (в целом это % от памяти + размер свопа в нашем случаи 25% + 32мега = порядка 64мег)

Плеер постоянно использует примерно 82м памяти для прошивки A+V и учитывая базовую загрузку даже если не вся память используется это 10мег в итоге мы имеем не менее 32мег памяти на все наши нужды включая интерфейс плеера, но при таких зажимах dvdplayer просто не запустится ибо требует больше памяти. Однако можно применить эти параметры после запуска и у меня даже вышло впервые пройти сжатие за 4 минуты с помошью upx на уровне 8 (причем бегунок даже не тормозил а шел уверено) что ранее было невозможно ибо без зажимов алокация была критичной и сам процесс растягивался на 10 и более минут с жутким торможением, причем всегда прерывался с OOM.

Тестировал следующим образом файл жертва php ~12mb лежал на флешке, сжимался на встроенную флешку плеера примерно следующей командой:

./upx -8 /tmp/usbmounts/sda1/php -o /usr/local/etc/karamba

Файлы для теста (среда в которой тестировалось это новая pohd чистая версия с убранным budylink + используется только yaffs Никаких squash)
test.7z
(2.78 MiB) Downloaded 166 times



В общем надо более детально курить тему памяти ибо все очень неоднозначно ;)



P.S. Что касается других параметров:

min_free_kbytes - это немного из другой оперы а имено: This is used to force the Linux VM to keep a minimum number of kilobytes free. The VM uses this number to compute a pages_min value for each lowmem zone in the system. Each lowmem zone gets a number of reserved free pages based proportionally on its size.

vfs_cache_pressure - это тоже знаетели лучше не трогать: Controls the tendency of the kernel to reclaim the memory which is used for caching of directory and inode objects. At the default value of vfs_cache_pressure=100 the kernel will attempt to reclaim dentries and inodes at a "fair" rate with respect to pagecache and swapcache reclaim. Decreasing vfs_cache_pressure causes the kernel to prefer to retain dentry and inode caches. Increasing vfs_cache_pressure beyond 100 causes the kernel to prefer to reclaim dentries and inodes.
User avatar
Sekator500
 
Posts: 457
Joined: 11 Nov 2010, 00:13
Location: Киев

PreviousNext

Return to Разработка

Who is online

Users browsing this forum: No registered users and 1 guest