LINUX.ORG.RU
ФорумTalks

[opennet][красноглазие] Виртуальное увеличение памяти через хранение в ОЗУ сжатого swap-раздела

 ,


0

0

http://itbg.wordpress.com/2009/02/18/compcache-%d0%b2-linux-%d1%81%d0%be%d0%b...

Ъ: "Compcache в Linux, сожми свой SWAP" - рассказ о Compcache, интересной реализации метода виртуального увеличения фактического объема ОЗУ через хранение раздела подкачки в сжатом виде в области ОЗУ (идея в том, что в сжатый своп влезет больше данных, чем в занимаемую им несжатую память).

Кто нибудь пробовал? Насколько хорошо сжимает и насколько нагрузка на проц возрастает?

★★★★★

Интересно, интересно :)

PolarFox ★★★★★
()

в убунте 9.04 давно уже.

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

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

>в убунте 9.04 давно уже.

<посмотрел на календарь>
верни машину времени, красноглазый!

nu11 ★★★★★
()

Это как виртуально член увеличивать. Вопрос в том, что с этого толку?

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

А че, для буков она разве сильно дорогая ?

Купил недавно себе SoDIMM DDR2 2048MB 800Mhz Samsung за 1200 руб.

vasya_pupkin ★★★★★
()

"В последних версиях Ubuntu это уже активно используется."

вот кстати да, спасибо за ссылочку на статью, а то после livecd jaunty стало интересно где они брали патчи , а искать было лень

Sylvia ★★★★★
()

и кстати приведу другой пример (простите конечно...)

на dos/win3x/win9x был такой замечательный менеджер памяти EMS,
он назывался QEMM , на венде у него было расширение (как называлось не помню) для того чтобы ... сжимать данные в RAM и swap , интересно то что это реально работало и не вызывало тормозов за счет бОльшей нагрузки на процессор, а вот swapping на диск заметно снижался, объемы ОЗУ тогда были 8-64 Mb
а потом с приходом ветки NT он умер

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

Все дело в том, что память типа EMS не такая уж обычная и ставилась она с помощью платы расширения. Технически это было не что иное, как тот же своп на основе микросхем ОЗУ. Вынимаешь оттуда данные кусками по 64 кб максимум, работаешь с ними, кладешь обратно. Максимум ее могло быть 16 метров.

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

Это было больно и мучительно, но по-другому увеличить ОЗУ в машинках типа PC XT было вообще невозможно.

А умерло это чудо потому, что с повсеместным приходом 32-разрядности и возможности адресовать 4 (тогда — запредельно аж, винтов даже таких не было в малых габаритах) гигабайта ОЗУ напрямую такой своп оказался в сравнении очень неудобным.

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

>Наркоманы что ли? Память сейчас стоит 5 рублей за килограмм.

Жаль что DDR400 стоит раза в 2 дороже

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

QEMM кстати предназначался для i386 и выше
как и его "Родственник" Microsoft EMM386.exe

к тому же я не про LIMS стандарты памяти, а про то что QEMM в отличие от остальных менеджеров памяти занимался еще и ее сжатием, в особенности на MS Windows 3.x / 95

совсем как compcache, как знать, я надеюсь что Quarterdeck не являются патентными троллями и не станут иметь к compcache каких либо претензий и искать нарушения



Sylvia ★★★★★
()

compcache: Compressed swap size set to: 128000 KB
Adding 127996k swap on /dev/ramzswap0. Priority:100 extents:1 across:127996k


посмотрю как будет на ноуте, хотя наверное 128М многовато будет для буфера между дисковым свапом

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

> Там все павильно пишут, только раздел, на котором должен быть своп надо класть в tmpfs.

всмысле? с compcache сжатый раздел сразу в памяти создаётся...

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

а зачем делать swap в системе где достаточно памяти чтобы сделать в ней tmpfs ?

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

$ swapon -s
Filename Type Size Used Priority
/dev/sda5 partition 497972 133324 -1
/dev/ramzswap0 partition 65380 65380 100


stress test passed ok :)

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

> Наркоманы что ли? Память сейчас стоит 5 рублей за килограмм.

у меня в десктопной мамке два слота. стоит 2Gb, поставил бы ещё два. но.. дальше продолжать?

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

// wbr

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

> к тому же я не про LIMS стандарты памяти, а про то что QEMM в отличие от остальных менеджеров памяти занимался еще и ее сжатием, в особенности на MS Windows 3.x / 95

Интересно, что там за алгоритм использовался — так, чтобы «пациент не унюхал». Насколько я могу судить, исходя из умения читать, эта фишка даже в списке заявленных фич не значилась...

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

> я надеюсь что Quarterdeck не являются патентными троллями и не станут иметь к compcache каких либо претензий и искать нарушения

Они и не будут, так как их Symantec скушал не поморщившись.

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

точно
MagnaRAM оно называлось )

работало чтобы "пациент не унюхал" через .vxd драйвер

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

> умерло это чудо потому, что с повсеместным приходом 32-разрядности и возможности адресовать...

угу только на 386 ещё долго продолжали юзать emm вместо dos4wg того же.

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

EMM помимо EMS памяти по сравнению с XMS давало еще и UMB, за счет этого и продолжали использовать, при этом сама память EMS даже и не обязательно нужна была

DEVICE=C:\DOS\EMM386.EXE NOEMS UMB HIGHSCAN
DOS=HIGH,UMB

LOADHIGH ...

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

>DEVICE=C:\DOS...

В стародавние времена там ещё иногда использовали связку RAMDRIVE.SYS + COMBI.SYS в которой часть RAM-диска использовалась как кеш для жёсткого диска.

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

>В стародавние времена там ещё иногда использовали связку RAMDRIVE.SYS + COMBI.SYS в которой часть RAM-диска использовалась как кеш для жёсткого диска.

Как бы был smartdrive..

madcore ★★★★★
()

Боян, лет 10 назад такое даже под виндами практиковали

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

да, как бы был smartdrv.exe
а такой извращеный метод наверное был очень давно :)

Sylvia ★★★★★
()
Ответ на: комментарий от gods-little-toy

нет, просто тут есть еще совсем дети. Полагаю 20тилетние уже вполне себе это помнят, если они за компом не только игрались.

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

ну, 20 - это ты загнул. а вот 22-24 - вполне реально.

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

> Мало ты знаешь девушек :3

достаточно. но задротов среди них не замечал. может быть вам так "везет"? =)

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