The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Споры по поводу раздела подкачки

30.05.2004 23:03

В списке рассылки linux-kernel тема оптимизации стратегии своппинга в Linux перешла к обсуждению вопроса "нужен ли раздел подкачки вообще, когда размера ОЗУ достаточно".

Con Kolivas выпустил новую версию "swappiness" патча, устанавливающего более жесткие условия попадания приложения в раздел подкачки.

  1. Главная ссылка к новости (http://kerneltrap.org/node/vie...)
  2. Autoregulated VM Swappiness Patch
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/3926-linux
Ключевые слова: linux, kernel, swap
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (15) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Andrew (??), 23:31, 30/05/2004 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Ну да, конечно... Вопрос в студию (а также авторам подобных идей): почему всегда рекомендуют делать раздел подкачки в два раза больше, чем ОЗУ?
     
  • 1.2, Insane (?), 02:14, 31/05/2004 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Попробуй открыть тифак метров эдак под 300-400 в
    гимпе..Да или хотя-бы локальным сендмейлом мессагу
    кому-нибудь отправь сильно жирную...
    ИМХО своп можно убирать (да и то с опаской)
    когда в машине не меньше 2х гектаров ОЗУ, а на
    машинах работающих с графикой вообще убирать
    нельзя, если нет желания наблюдать тот-же гимп
    или майю упавшими после 12 часовой работы
    с ошибкой типа could't allocate тырым пырым()...
     
     
  • 2.3, Norguhtar (?), 07:37, 31/05/2004 [^] [^^] [^^^] [ответить]  
  • +/
    Из веселого... У gimp'а своя подкачка =)
     

  • 1.4, Insane (?), 08:38, 31/05/2004 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Своп он (точнее менеджер памяти) юзает, факт !!!
     
  • 1.5, Lamr (?), 11:14, 31/05/2004 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    By the way, я попытался открыть KView фото из далёкого космоса (tiff 100Mb), так мне не хватило и двойного свопа, 256 метров размером. Интересно, почему? Я теперь на всяк случай буду резервировать гиг.
     
  • 1.6, Lamr (?), 11:18, 31/05/2004 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > нужен ли раздел подкачки вообще, когда размера ОЗУ достаточно

    идиотская дисскуссия. На роутере я просто включаю в ядро options NO_SWAPPING, и не парю занятым людям мозги.

    Извиняюсь, у меня FreeBSD, про линух не знаю
    Best Regards

     
  • 1.7, Lamr (?), 11:26, 31/05/2004 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    И ещё.
    Если ети хэкеры своп уберут, им придётся для форс-мажорных ситуаций прикрутить к линуху виндоус-like механизм, прикручивающий его динамически. Как винда, типа "файла свопа мало, хочещь-нехочешь, я его сделаю сама знаю какого размера, и размещу Бил Гейс знает где, нюхай у пъяного бегемота, юзер недоделанный"
      Это очень надо?
     
     
  • 2.16, Sgt.Pepper (?), 15:36, 03/06/2004 [^] [^^] [^^^] [ответить]  
  • +/
    > И ещё.
    > Если ети хэкеры своп уберут, им придётся для форс-мажорных ситуаций прикрутить к
    > линуху виндоус-like механизм, прикручивающий его динамически. Как винда, типа
    > "файла свопа мало, хочещь-нехочешь, я его сделаю сама знаю какого размера, и
    > размещу Бил Гейс знает где, нюхай у пъяного бегемота, юзер недоделанный"
    >  Это очень надо?
    Pochemu by togda ne nazvat, f.e, Solaris windows-like ? Ya vydelil swap, mne ego ne hvatilo, ya sozal file, i dobavil ego k swap area.
    Ili ne sdelal swap voobshe, i kogda on vse zhe ponadobilsya, sdelal file i swap zarabotal.
    A esli ya sdelal script, kotoryi proveryaet, hvataet li sisteme pamyati, i esli net - to sozdaet file dlya swap i dobavlyaet ego k swap space ?
    Eto vse tozhe windows-like ?

    Chem ploh mehanizm dya dinamicheskogo vydeleniya swap space pri nedostatochnom razmere pamyati ? Esli vy smozhete ego kontrolirovat (a v UNIX-sistemah eto prakticheski vsegda tak), to on tolko polezen.

     

  • 1.9, Mr.Uef (??), 12:04, 31/05/2004 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Н-да, маразм крепчал.
    Своп отключать предлагается не на машинах, где работают с графикой, а на маршрутизаторах да на встраеваемой технике. Не будешь же свопить на флэшку в 128М? Там по-любому делают swapoff. Так вот речь идет прежде всего о том, чтоб иметь возможность выкинуть из ядра ненужный код в первую очередь именно для таких случаев.
     
  • 1.10, eNemo (ok), 13:21, 31/05/2004 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    надо - включаем, не надо - не включаем. не хочется лишний код за собой таскать - так насколько я помню в последних опциях его выключить можно...
    главное - возможность, а пользоваться ей, или нет - личное дело каждого.
     
  • 1.11, Дмитрий Ю. Карпов (?), 16:51, 31/05/2004 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Делать swap  в два раза больше RAM рекомендуют потому, что делать больше нет смысла - производительность упадёт ниже некуда.

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

     
  • 1.12, Sgt.Pepper (?), 09:01, 01/06/2004 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    swap = 2*ram ne potomu, chto bolshe net smysla.
    A vsego lish potomu, chto pri kak minimum v dva raza bolshem swape paging bolee ili menee effektivno rabotaet. Kak minimum dlya old BSD i SVR3, a dalshe sovet ostalsya. Mozhno posmotret v sovremennyh open-source systems code dlya paging'a, dlya teh, kto osobo lubopyten - sravnit s BSD4.3 skazhem.

    PS: Izvinite za translit :-(

     
     
  • 2.14, Дмитрий Ю. Карпов (?), 18:40, 02/06/2004 [^] [^^] [^^^] [ответить]  
  • +/
    > pri kak minimum v dva raza bolshem swape paging bolee ili menee effektivno rabotaet.

    Насколько я понимаю, в swap выпихиваются только данные или изменённый код - статический код и RO данные подкачиваются из запускаемых и библиотечных файлов. Но механизм-то тут практически один и тот же - различия только в операции выделения места в swap-области (впрочем, за одно это стОит побороться).

    Объём свапа слежует расчитавать из объёма данных, которые создаются в памяти и долго не используются - например, у демонов, которые долго ждут соединения (да тот же самый Squid); или у user-end программ, если юзер имеет привычку долго курить. В этом случае более эффективным будет вытеснить данные в swap, а освободившуюся RAM испоьзовать под кэширование файлов и под код активно работающих программ.

    Но почему именно "два объёма RAM" - не понимаю.

     

  • 1.13, Sgt.Pepper (?), 09:06, 01/06/2004 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    2Dmitry Karpov
    swapping iznachalno - eto ne to, o chem vy govorite. Swapping - eto polnoe peremeshenie oblasti processa na disk, tak bylo sdelano v staryh OS, v tom chisle i pervyh versiyah UNIX, uzhe v SVR3 eto bylo izmeneno na paging, t.e. manipulyacii stranitsami pamyati, a ne swapping vsego processa iz pamyati.
    Davaite ne putat terminy ?
    To, chto razdel nazyvaetsya swap, eshe ne oznachaet, chto chto-to tuda swappitsya.

    esli ubrat code dlya peremesheniya stranic na disk, uberetsya tolko ta ego chast, chto za swap razdel i otvetstvenna, i maping file'a v pamyat tut ne pri chem, eto sovsem raznye mehanizmy.

     
  • 1.15, Sgt.Pepper (?), 14:07, 03/06/2004 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Net. Eto iz-za algorytma. primenyaemogo v BSD-derived OS'es. Ne skazhu, otkuda imenno, Skazhem, Ultrix i SunOS4.x ispolzovali imenno takuu shemu. Esli nuzhno, mogu posmotret v sovremennyh *BSD, sprohem, eto mozhete glyanut i sami.
    Tak vot, est isluchitelno logicheskaya neobhodimost dlya swap >= 2*RAM
    Swap space vydelyaetsya srazu dlya vsey pamyati, vydelyaemoj kernelom. T.e. kogda programma zagruzhaetsya, swap dlya nee vydelyaetsya srazu zhe. Kogda programma vyzyvaet brk() li sbrk() dlya vydeleniya pamyati, opyat zhe srazu vydelyaetsya swap space pod eto. Takim obrazom, eto minimum - swap = RAM. Esli sisteme nuzhno bolshe virtual memory, to swap space dolzhen byt bolshe chem RAM.
    Sledovatelno, esli swap = 2*RAM, to virtual memory ne budet ravno 3*RAM, virtual memory = swap.
    No. Kak SysV UNIXes, tak i Linux ne ispolzuut takuu shemu, naprimer Linux voobshe ne allocate'it pamyat pri brk i sbrk, a tolko togda, kogda ona nachinaet uispolzovatsya.

    Taim obrazom, mozhno skazat, chto Linux bystree. S drugoj storony, chto BSD nadezhnee. I to i drugoe verno.

    Vot ottuda i poshlo - chto swap dolzhen byt ne menshe 2*RAM - chtoby poluchit dlya BSD sistem v dva raza bolshe virt. pamyati, chem realnaya.
    A dalshe pro prichiny zabyli, a sovet ostalsya na veka. I teper v KAZHDOM manuale sovetuyut vydelyat kak minimum 2*RAM pod swap, hotya v etom davno net neobhodimosti.

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру