Мультипоточная компиляция приводит к зависанию компьютера

vasek
zRam конечно неплох, не спорю, но один общеизвестный минус у него все-таки имеется - увеличение нагрузки на процессор во время сжатия данных, хотя это мелочь и проявляется в основном когда zRam начинать захлебываться и не справляться со своей задачей.
как видно из тестовой сборки выше на zram даже меньше заняло времени чем на tmpfs, разница в 7 сек в пределах погрешности.
так что это даже не мелочь, а ничто.

vasek
Но я от него отказался по другой причине — когда памяти уж совсем мало, намного меньше чем нужно приложению, он не спасает.
тогда и tmpfs не спасет!!!
Псевдографический инсталлятор Arch Linux ver. 3.8.2
Благодарности принимаются на ЯД 410012815723874
Зависание компьютера может быть еще и не из-за нехватки памяти, а по причине большой загрузки ЦПУ, около 100% - нужно смотреть кто виновник - нехватка памяти или полная загрузка ЦПУ. Если причина в загрузке ЦПУ — то ее можно ограничить.
Ошибки не исчезают с опытом - они просто умнеют
Был не прав, мой косяк.
Время компиляции ведра 3.18.3
без zram - 4m16.965s
c zram - 4m16.900s
Но и включенный он не использовался. То есть сброса данных в свап не было.

Zram полезен, когда можешь случайно забить всю оперативу. Может и поможет "спастись" вовремя.
Но, считаю, бесполезен для "увеличения" объема оперативной памяти, т.к. неизвестно на сколько точно она увеличится.
Проще уж отключить /tmp от tmpfs и включить нормальный swap.

И еще. Только что наблюдал ситуацию. в свапе 950 мб В оперативе 850 мб.
Делаю systemctl stop systemd-swap. После вытеснения свапа занято 1,2 гб оперативы.
Это нормально?

nafanja
тогда и tmpfs не спасет!!!
а должно?
Lupus pilum mutat, non mentem.
jim945, ну смотри, ничего не теряя и не чем не жертвуя, приобретается полезное свойство при интенсивной работе с /tmp.

jim945
И еще. Только что наблюдал ситуацию. в свапе 950 мб В оперативе 850 мб.
Делаю systemctl stop systemd-swap. После вытеснения свапа занято 1,2 гб оперативы.
Это нормально?
я не понял про какую ситуацию говоришь, если когда /tmp в zram-е и он не пустой, то датчики покажут что память куда то делась, но стоит удалить не нужное из /tmp и свободной памяти станет больше.
а сколько потребляет tmpfs датчики не считают, например тот же free.
Псевдографический инсталлятор Arch Linux ver. 3.8.2
Благодарности принимаются на ЯД 410012815723874
nafanja
я не понял про какую ситуацию говоришь
Я говорю, что сначала памяти в сумме потреблялось в полтора раза больше, чем после отключения zram через секунду.
nafanja
когда /tmp в zram-е и он не пустой, то датчики покажут что память куда то делась
nafanja
а сколько потребляет tmpfs датчики не считают
То есть tmpfs в памяти не считается, а в свапе вдруг считается?
Где логика?
nafanja
ничего не теряя и не чем не жертвуя, приобретается полезное свойство при интенсивной работе с /tmp
Вот если бы была общая статистика расхода памяти (Сжатый свап + tmpfs + несжатые данные), тогда да - ни чем не жертвуя.
Нет, интересная идея сжатия данных в оперативе, но как-то неудобно все это. Да еще и нагрузка на проц без дела.
Lupus pilum mutat, non mentem.
jim945
Нет, интересная идея сжатия данных в оперативе, но как-то неудобно все это. Да еще и нагрузка на проц без дела.
Насчёт нагрузки на проц, это на так уж очевидно. В любом случае используется какая-то ФС, да ещё и с кэшем, а это всё ведь тоже жрёт проц. Так что какой процент к этому добавит сжатие - кто его знает. Может, и небольшой.

К слову. В IBM OS/2 сжатие кэша было встроено в систему и насколько я знаю, было неотключаемым. И сжатие бинариков тоже было встроено в систему (опционально).
Ещё к слову. В стародавние времена под ДОСом я сравнивал время сборки большой программы на Borland Pascal на реальном диске, и на сжатом диске Stacker. В обоих случаях FAT16 + NortonCache. Так вот, на сжатом диске время было где-то в 2.5 раз меньше. Но там экономия была, конечно, за счёт уменьшения обмена с диском.
jim945, у свапа другая жизнь чем у памяти, и никому уже не нужные данные там валяются и место занимают пока не под чистятся, а чистка происходит не сразу. поэтому в сумме память + свап получается больше чем на самом деле.
как я понял у тебя свап тоже на zram?

jim945
Да еще и нагрузка на проц без дела.
как ты мог выше заметить нагрузка только теоретическая, а на практике не заметна. да и /tmp не так часто нагружается. но когда он нагружается экономится память если в /tmp сжимаемые данные.
Псевдографический инсталлятор Arch Linux ver. 3.8.2
Благодарности принимаются на ЯД 410012815723874
nafanja
как ты мог выше заметить нагрузка только теоретическая
я же писал, что пока свап не используется, ннагрузки со стороны zram нет. Но, когда начинает интенсивно использоваться, полностью загружается одно или два ядра.
nafanja
как я понял у тебя свап тоже на zram?
Включил на попробовать.
Итог.
При 2гб + старый двухядерник - большая нагрузка на процессор.
При 16гб + новый проц - бесполезная вещь.
Lupus pilum mutat, non mentem.
jim945
Включил на попробовать.
так мы о разных вещах и случаях говорим.

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

я говорю только о /tmp на zram (юнит который давал выше), там память не увеличивается, а экономится.

подчеркну я сравниваю /tmp на zram vs /tmp на tmpfs.
Псевдографический инсталлятор Arch Linux ver. 3.8.2
Благодарности принимаются на ЯД 410012815723874
vasek
Зависание компьютера может быть еще и не из-за нехватки памяти, а по причине большой загрузки ЦПУ, около 100% - нужно смотреть кто виновник - нехватка памяти или полная загрузка ЦПУ. Если причина в загрузке ЦПУ — то ее можно ограничить.

Ограничить для make?
 
Зарегистрироваться или войдите чтобы оставить сообщение.