Ускорение запуска приложений с помощью prelink и preload


6 комментариев
Каждый пользователь знает о том, что насколько бы мощным не было компьютерное "железо", а ждать перед загрузкой нужного приложения придётся в любом случае. Однако, пользователи linux-систем могут значительно сократить описанный временной интервал с помощью двух полезных утилит: prelink и preload.

prelink

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

Для установки введите в терминале:
sudo apt-get install prelink
sudo /etc/cron.daily/prelink

Периодически будет производится "перелинковка", полезная после установки/обновления приложений.

preload

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

Установка:
sudo apt-get install preload

Конфигурация лежит по адресу /etc/preload.conf. Менять её особого смысла нет, ибо она написана для оптимального использования. Если уж очень сильно захочется экспериментов, то вот описание самых важных опций:
  • model.cycle: интервал получения данных от системы об используемых программах.
  • model.halflife: время между сбрасыванием текущей статистики.
  • model.minsize: минимальный размер элемента, обрабатываемого  preload'ом.
Статус работы можно просмотреть в файле /var/lib/preload/preload.state.

Противопоказания к использованию preload:
  • Малый объём оперативной памяти (меньше 2 ГБ). Вместо ускорения будут тормоза.
  • Питание ноутбука от батареи. Лишние процессы в ОЗУ негативно сказываются на энергопотреблении.
  • Использование нескольких DE. Бывает так, что рабочий стол одного окружения кешируется и "висит" в памяти при работе в другой оболочке.

Итоги

Конечно, моментального запуска приложений добиться невозможно. Однако, совместное использование prelink и preload значительно ускоряет время запуска приложений и делает работу за компьютером более быстрой и менее нервной. В целом выгода составляет порядка 30%, что довольно позитивно.

6 комментариев


  1. prelink в новых убунту уже не нужен и даже вреден.
    ставьте только preload.

    ОтветитьУдалить
    Ответы
    1. А можно поинтересоваться, чем именно вреден? Ничего подобного не встречал, сам ставил на 12.04, всё ОК

      Удалить
  2. Про preload все и так знают, хотя спасибо - я забыл его на ноутбук поставить, и пока искал, нашёл весёлую программу в репозиториях: faketime. Она позволяет надурить другие программы, сообщая им неправильное время. Ха-ха, ну теперь держись мой Maple :-)

    В тему: я бы написал про ZRAM. У меня всё руки не доходят его опробовать, и мне с моим новым ноутбуком и 8Гб памяти он особо не сделся. Тем не менее, для слабомощных компьютеров\нетбуков может быть полезен.

    И да, отмечаю у поста структуру - оно радует. И читать удобно.

    ОтветитьУдалить
    Ответы
    1. нашёл весёлую программу в репозиториях: faketime. Она позволяет надурить другие программы, сообщая им неправильное время.
      Интересная утилита, надо будет посмотреть её...

      В тему: я бы написал про ZRAM.
      К zram у меня особого доверия нет. Если памяти мало, то, скорее всего, и процессор не мощный. А лишняя нагрузка на него не есть хорошо

      И да, отмечаю у поста структуру - оно радует. И читать удобно.
      Просто всё на своих местах: заголовки, списки, команды установки, отступы. Даже странно, почему блоггеровский редактор не "приукрасил" стурктуру :-)

      Удалить
    2. К zram у меня особого доверия нет. Если памяти мало, то, скорее всего, и процессор не мощный.
      А зря. Фича zram в том, что распаковывать что-то в памяти куда быстрее, чем хрустеть свопом, да ещё и на каком-нибудь недоSSD с атомом впридачу.

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

      А лишняя нагрузка на него не есть хорошо
      Не нагрузишь процессор - нагрузишь винчестер. Ты точно хочешь уныло ждать ответа от HDD (точно не самого быстрого) со свопом? А память будет быстрее...

      Мне в Zram не нравится кривоногая процедура инсталляции (или мануалы попадались писанные роботами?). А так оно айс. Я гарантирую это :-)

      Удалить
    3. Эх, Михаил, против твоих аргументов не попрёшь :-)
      Попробую этот Zram, может, и правда пользы много будет...

      Удалить



Лицензия:CC BY-NC-SA 3.0 Unported (c) : "Записки линуксоида Vlsu". 2011-2021 гг.
При копировании материалов сайта ссылка обязательна!Подробнее...

Полная версия | Мобильная версия | Динамический просмотр