LINUX.ORG.RU

Ненормальные оптимизации: LTO при сборке ядра

 , ,


1

2

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

Хочу пересобрать с максимальными оптимизациями, -O3 --march и прочие заходят отлично, а с LTO — проблемы.
Ядро, понятное дело, LTO и не возьмет, но модули может.

Собственно, проблема: при линковке модулей, ar не подхватывает плагин из /usr/lib/bfd-plugins/, как для всей остальной системы.
Куда положить плагин чтобы он его видел или какие опции передать?

★★★★★

Ответ на: комментарий от mersinvald

Производительность надо повышать там, где она низкая, а не там, куда руки дотягиваются.

60% проблем производительности - это кривые приложения, и еще 20% — кривые тулкиты.

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

Да, вот только LTO действительно позволяет выжать до 50% больше производительности даже из софта, уже собранного с -O3 и --march=native --mtune=native

Яркий пример — apache2

mersinvald ★★★★★
() автор топика
Последнее исправление: mersinvald (всего исправлений: 1)
Ответ на: комментарий от mersinvald

Ну так это, чего сидишь? Иди помогай индустрии держать темпы закона Мура, иначе твоя затея обречена.

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

90% проблем производительности — это выполнение не связаных с решением задачи действий. Твое разделение верно лишь для оставшихся 10%.

Для десктопа будет даже ближе к 99% и 1%.

t184256 ★★★★★
()
Последнее исправление: t184256 (всего исправлений: 1)
Ответ на: комментарий от mersinvald

На какой еще лад тебе сказать «делом займись»?

То, что у тебя там есть какой-то вопрос я и вовсе не заметил — слишком толстая перед ним провокация.

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

Не без того, но вопрос вполне четкий: где линковщик ищет свои плагины в дереве ядра?

P.S. А люди совсем разучились понимать сарказм

mersinvald ★★★★★
() автор топика
Последнее исправление: mersinvald (всего исправлений: 1)

В zen-kernel есть патч, позволяющий использовать любые CFLAGS при сборке ядра на свой страх и риск

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

Так даже кривой кутэ будет шустрее работать с оптимизациями.

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

Это то хорошо, но у меня тоже есть такой патч и он называется KBUILD_CFLAGS опцией make :)
Это не помогает, с zen-pathes всплывет та же проблема с отсутствием плагина

mersinvald ★★★★★
() автор топика

Лучше PGO прикрути, от LTO пользы мало (а с O3 он и вовсе замедляет исполнение и раздувает бинарники).

anonymous
()

Нет модулей — нет проблемы.

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

Уж не обижайся, но ты никто. И такие заявления тебе авторитета вовсе не добавляют. Даже я в курсе о куче многочисленных регрессий в GCC в целом и подсистеме LTO в частности, и представлять её как серебряную пулю... Ну, даже не знаю, право.

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

Мой опыт утверждает что LTO действительно дает профит производительности.
Себе я доверяю как-то больше, чем всяким анонимусам

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

Да, заняться мне конкретно нечем, есть такое дело.

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

Ну раз ты прямо-таки уверен в собственной правоте и непогрешимости — мне с тобой не о чем разговаривать. Подобные кадры нам отлично знакомы, увы.

// Сам-то нонейм из интернета для окружающих. Не задумывался? Почему ты считаешь себя лучше других?

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

Почему я должен слушать суждения того, у которого не то что имени, даже ника нет?

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