Уменьшение времени запуска программ
aluk 8 Августа, 2006 - 13:30
Тема максимальной оптимизации своего дистрибутива не чужда всем пользователям Gentoo. Предлагаю вашему вниманию интересную статью Optimizing Linker Load Times. В ней рассматриваются четыре способа оптимизации GNU linker'а:
- The -Wl,-O1 Linker Options
- -Bdirect Linking
- dynsort
- Precomputed Hash Values
»
- Для комментирования войдите или зарегистрируйтесь
-Wl значит, что
-Wl значит, что следующие параметры будут передаваться линковщику. Надо полностью: -Wl,-O1
_________________
(define (brainfucking brain)
(brainfucking brain))
Что-то у меня -Wl
Что-то у меня -Wl был отвергнут. Мол, неизвестная опция.
Лучше поделитесь LD_FLAGS, кто успешно применил советы статьи.
LDFLAGS="-Wl,-O1
LDFLAGS="-Wl,-O1 -Wl,--sort-common"
Что-то после
Что-то после этих опций firefox падать при запусе стал, и epiphany при попытке зайти на некоторые сайты.
Каких именно
Каких именно опций? Я слышал тока о проблемах с некоторыми версиями emacs.
Приношу свои извинения
CFLAGS="-O2 -march=athlon-xp -pipe -ftree-vectorize -fno-guess-branch-probability -fsched-spec-load -funroll-loops -fprefetch-loop-arrays -msse -mmmx -Bdirect"
LDFLAGS="-Wl,-O1 -Wl,--sort-common"
Впрочем я, видимо, ошибся: firefox падает по какой-то другой причине - ибо я его даже пересобрал с CFLAGS="-O2 -march=athlon-xp -pipe" и LDFLAGS="". Даже gcc назад 3тий ставил. Даже предыдущую версию собрал.
Не стоит, окоянный, опадает! :-( :-( :-(
http://gentoo-wiki.com/HOWTO_Hashstyle
вообщето вот руководсво к действию для того что вам надо :)
Там отражен
Там отражен лишь один вариант оптимизации из четырех - hashvalue
Не совсем
Не совсем верно. Этот вариант объединяет 2:
Опция -Wl,-O1 и так стандартная.
Опция -Bdirect нарушает структуру elf.
Quote:Опция -Bdirect
А можно с этого места по-подробнее? Какие возможны побочные эфекты и т.п.?
Объясните, куда
Объясните, куда эти опции вписывать надо?
*
а я не знаю
В LDFLAGS="..."
В
/etc/make.conf
вставитьLDFLAGS="..."
с нужными опциями.Если написать
Если написать -Wl, то на этапе configure говорится, что компилятор не может создавать запускаемые файлы.
А если написать -zdynsort -hashvals, то говорит, что опции неопознанны :(. Чего я не так делаю?