LINUX.ORG.RU
ФорумTalks

[быдлокод][cache] накидайте выхлопов

 ,


0

0

что делать:
1. запускаем лису с главной лор-а и потом закрываем (с одной вкладкой с лор-ом)
2. сохраняем сие в некий файл

#!/bin/bash
firefox&
count=0
while [ $count == 0 ];do
  if [ `xwininfo -name "LINUX.ORG.RU - Русская информация об ОС Linux - Mozilla Firefox"| wc -l` != "0" ];then
    export count=1
    sleep 0.1
  fi
done
killall firefox
3.
echo 3 > /proc/sys/vm/drop_caches 
4. запускаем файл из п.2
time `sh path/to/быдлокод &>/dev/null`
5. повторяем п.4
6. ищем диру с большим кол-вом файлов, лучше всего музычку и
cp -R /var/ftp/stuff/music/Пурген/* >/dev/null
до тех пор пока кэш не будет забит максимально
7. повторяем п.4


Результаты: лучше всего выхлопы в таком вот виде:
[ megabaks@desktop ] ~ $ time `sh scripts/starttime &>/dev/null` 

real	0m8.806s
user	0m2.948s
sys	0m0.016s
[ megabaks@desktop ] ~ $ time `sh scripts/starttime &>/dev/null` 

real	0m0.587s
user	0m0.116s
sys	0m0.001s
[ megabaks@desktop ] ~ $ time `sh scripts/starttime &>/dev/null` 

real	0m2.592s
user	0m0.855s
sys	0m0.005s
[ megabaks@desktop ] ~ $

★★★★

Последнее исправление: megabaks (всего исправлений: 2)

Ответ на: комментарий от pekmop1024

кстати, ты суперфетч выключаешь, не?

блин, семерочка хрустит винтом меньше свисты, но всё равно хрустит! Бесит! Как это запретить?

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

потому что надо НЕ выгружать, а не дрочить винт по чём зря
понимаешь?
и да - либы тоже могут стать ненужными
потому всегда держать их там - чушь собачья

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

> а почему бы их оттуда вообще не выгружать?

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

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

> но не понимаю почему до сих пор нет нормальных механизмов в ядре скажем для ограничения кэша для некого софта

Потому что, если либа не используется в данный момент, она «не нужна». Зачем ее хранить в кэше?

damnemall
()
Ответ на: комментарий от stevejobs

> кстати, ты суперфетч выключаешь, не?

службу тушу, и все. Еще со времен свисты.

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

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

megabaks ★★★★
() автор топика

Ну что, толстокот, выложил наконец скрипт)

//Повторил еще раз - у меня опять не воспроизвелось.

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

ты выхлопы давай
и от тебя лично выхлопы free после сброса кэшей, после запуска софта, после забивания кэша
иначе ты лжец и девственник :3

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

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

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

>осилил и выкинул это дерьмо
почему дерьмо то? лиса и опенофис в разы быстрее запускаются с этим

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

> затем, что я могу опять её использовать?

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

damnemall
()
Ответ на: комментарий от xorik

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

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

а ты учись не влезать в беседу, если тебе сказать нечего, ок?

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

так будут тыкать в дерьмо ака cgroups или типа vfs_cache_pressure
тока оно говно, как ни крути
да - можно подкрутить и сделать кэш для файлов очень ленивым...
но это не решает проблемы

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

а фичреквест...если через кого-то (ангельский никакой) то геморно и испорченный телефон
или нужен русскоговорящий разраб - я таких не знаю

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

> а фичреквест...если через кого-то (ангельский никакой) то геморно и испорченный телефон

Так сочини на русском. Перевести - дело нехитрое.

damnemall
()

А где же «дегенераты!», «перечитай заново тему!», «иди нах**» и прочие прелести мегабаксотреда? Мну бешено негодует!

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

ты мне показал выхлоп с большим буфером
короче - жду здесь пруфов

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

кстати - у тебя чот сильно жёстко
можешь повторить после

sysctl -w vm.dirty_ratio=5 vm.dirty_background_ratio=2 vm.dirty_expire_centisecs=100 vm.dirty_writeback_centisecs=100 vm.vfs_cache_pressure=1000 vm.overcommit_memory=1
?

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

в любом
только под алкоголем(или другими веществами) я более эмоционален...точнее просто агрессивней

megabaks ★★★★
() автор топика
real    0m8.126s
user    0m1.789s
sys     0m3.236s
real    0m1.287s
user    0m0.279s
sys     0m0.380s
real    0m5.746s
user    0m1.193s
sys     0m2.197s
muzenbaher
()
time `sh ./baks &>/dev/null`

real    0m0.138s
user    0m0.003s
sys     0m0.001s
time `sh ./baks &>/dev/null`

real    0m0.003s
user    0m0.000s
sys     0m0.003s
time `sh ./baks &>/dev/null`

real    0m0.036s
user    0m0.001s
sys     0m0.003s

где я опять накосячил?

luke ★★★★★
()

скрипт говно, пришлось править. Результаты с федорки 15, 38-е ядро, фокс 4, виртуалбокс:


[ra@fedoravb ~]$ time `sh megabaks &> /dev/null`

real    0m5.891s
user    0m0.277s
sys     0m0.949s
[ra@fedoravb ~]$ time `sh megabaks &> /dev/null`

real    0m4.937s
user    0m0.223s
sys     0m0.808s
[ra@fedoravb ~]$ time `sh megabaks &> /dev/null`

real    0m5.325s
user    0m0.226s
sys     0m0.886s
[ra@fedoravb ~]$ time `sh megabaks &> /dev/null`

real    0m4.730s
user    0m0.239s
sys     0m0.738s
vsemprivet
()
Ответ на: комментарий от anon_666

не прелоад, а GO_Preload
тот делает не выгружаемыми
но это тоже крайность

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

да мне тоже по результатам так показалось. А теперь внимание, идет демонстрация результатов с макоси! Это хост, есичо, я таки выбил с него результат, ну и он на ссд, естественно:

ra-mbp:~ ra$ purge # это аналог(овый) еко 3 > /прок/сис/вм/дроп_кэшес
ra-mbp:~ ra$ time open -Wa Firefox &> /dev/null

real	0m0.336s
user	0m0.023s
sys	0m0.029s
ra-mbp:~ ra$ time open -Wa Firefox &> /dev/null

real	0m0.135s
user	0m0.022s
sys	0m0.014s
ra-mbp:~ ra$ time open -Wa Firefox &> /dev/null
# тут бессовестным образом были засраны кэши ближайшей анимехой
real	0m0.170s
user	0m0.022s
sys	0m0.020s
ra-mbp:~ ra$ purge # и еще разок, удостовериться
ra-mbp:~ ra$ time open -Wa Firefox &> /dev/null

real	0m0.308s
user	0m0.023s
sys	0m0.025s

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

вот «ещё разок» - это как раз ака линь

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

>просто редкое чтение забивает напрочь кэши. А тупняки начинаются именно после забивания кэшей, при sync'е.
Простое чтение никогда не вызовет тормозов на sync'е. Потому, что оно не сделает ни одной dirty-страницы в кэше. Учим матчасть.

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

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

Что-то типа:

Mach Virtual Memory Statistics: (page size of 4096 bytes)
Pages free:                           1724.
Pages active:                       374580.
Pages inactive:                       5068.
Pages speculative:                 1536234.
Pages wired down:                   113769.
"Translation faults":             36328533.
Pages copy-on-write:               1295198.
Pages zero filled:                13323250.
Pages reactivated:                    2389.
Pageins:                            269805.
Pageouts:                              166.
Object cache: 19 hits of 846667 lookups (0% hit rate)

это при забитом пэйджкеше либы все равно сидят в эктив

vsemprivet
()
Ответ на: комментарий от x3al

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

vsemprivet
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.