За эти годы, используя различные Linux-боксы, я привык к ритуальному использованию prelink для ускорения загрузки приложений.
Однако преимущества запуска предварительной ссылки сводятся на нет каждый раз, когда пакет переустанавливается, так как он, все его зависимости и его зависимости должны быть повторно связаны предварительно.
Это предварительное связывание может вызвать множество проблем, и одной из них является недействительность двоичного MD5, что проблематично для вещей, которые сравнивают MD5 с вышестоящими версиями или используют MD5 для определения того, был ли изменен двоичный файл и, следовательно, не требуется его очистка при удалении пакета. ,
В последнее время компьютеры стали работать намного быстрее, а преимущество, которое дает прелинк, сейчас едва ли заметно.
Является ли использование предварительной ссылки все еще рациональной концепцией, или ее можно случайно отбросить и оставить как нечто из прошлого?
источник
Я бы не сказал, что он должен быть произвольно отброшен, однако я бы определенно сказал, что об его использовании следует подумать немного больше.
На современном высокопроизводительном компьютере, который часто обновляется, предварительная ссылка не может быть полезной оптимизацией. Тем не менее, есть еще ряд случаев, когда его стоит использовать. Например, на старых или младших компьютерах или на машинах, которые довольно статичны и не подвержены частым изменениям или обновлениям. Это также может быть полезно, если у вас много программ, запускаемых повторно (я могу вспомнить пару ситуаций, когда у вас могут быть программы, запускаемые в быстрой последовательности или параллельно, когда предварительная ссылка может повысить производительность).
В общем, вам нужно рассмотреть вашу конкретную ситуацию, а затем решить, перевесят ли преимущества дополнительную работу и усилия.
источник
Я бы сказал, что prelink определенно полезен на многопользовательских настольных серверах, таких как LTSP-серверы, используемые, например, в школах и сетевых кафе. Предварительная ссылка не только ускоряет загрузку приложений, но также улучшает использование ОЗУ и перегрузку диска из-за конфликтов между пользователями, что позволяет гораздо большему числу одновременных пользователей на сервере.
источник
Я думаю, что с падением цен предварительная связь становится менее полезной. Если вы все еще хотите немного ускорить процесс, вы можете посмотреть на предварительную загрузку .
источник
Я оставляю это решение на версию ОС. Если по умолчанию ОС выбирает регулярный вызов prelink с использованием cron, тогда хорошо, может быть, это не так полезно. Я надеюсь, что создатели дистрибутивов подумали, прежде чем выбрать вариант добавления / удаления предварительной ссылки по умолчанию. Так что я иду с ними, а не анализирую вещи снова сам.
источник
Gentoo использует прелинк. Они обходят проблему md5sum, игнорируя информацию предварительной ссылки, вычисляющую хеш.
Prelink всегда даст вам прирост скорости, хотя он может становиться все менее и менее заметным по мере ускорения работы оборудования. Единственный способ узнать наверняка на вашем оборудовании - это отключить предварительную ссылку и посмотреть, как вам нравится замедление при запуске приложений.
Sidenote: OS X также использовала форму предварительной ссылки, но она была заброшена в пользу связанного кэша, который поддерживает сама связь. Лучшее из обоих миров, без двоичных изменений и без реальных накладных расходов по сравнению с обычными ссылками. Я надеюсь, что Linux подхватит эту идею в какой-то момент :)
Обновление: я недавно попробовал предварительные ссылки на Linux , и для компиляции cscope со многими файлами и процессами я получил увеличение скорости на 5%.
источник