... но не любой ценой.
-
- Сейчас уже много изменилось и на линкер возложены функции не только по сборке, но и оптимизации - Zikon(Сегодня, 17:28)
- вы наверно и про LTO не знаете ? - Zikon(Сегодня, 16:36)
- Не знаю, и пожалуй даже рад этому. Cкpипaч(68 знак., Сегодня, 16:45)
- LTO даёт 20..30%, бывает до 50% по размеру и по скорости. А работа
с $gp - это штатное использование ABI (двоичного интерфейса
приложений) для архитектуры RISC-V, хотя для косвенной адресации
может быть использован любой другой регистр. Но именно этот
регистр, по соглашению ABI, назначен глобальным указателем - для
ускорения и уменьшения количества инструкций доступа к памяти и
периферии. Nikolay_Po(91 знак., Сегодня, 16:58)
- ...а системы автоматики Siemens дают 30...35% экономии
теплоносителя. И то, и другое правда. Но почему-то раньше линкеры
выбрасывали неиспользуемые сегменты кода/данных без LTO, а теперь -
нет. - Cкpипaч(Сегодня, 17:02)
- Вы чего-то путаетесь. И без LTO, неиспользуемые секции
выбрасываются. Удавалось заставить компилятор не выбрасывать только
изменяя дефолтные настройки среды разработки. Уже более 5 лет
использую LTO во всех проектах, где работает GCC или основанные на
нём компиляторы. Не уверен, но, вроде, даже в Arduino IDE, LTE
включено по-умолчанию, хотя в первой версии среды приходилось
включать вручную, правкой файла конфигурации. - Nikolay_Po(Сегодня, 17:07)
- Сейчас - без LTO грусть. Раньше, неиспользуемые секции выбрасывались линкером без LTO. Cкpипaч(1273 знак., Сегодня, 17:42)
- Вы чего-то путаетесь. И без LTO, неиспользуемые секции
выбрасываются. Удавалось заставить компилятор не выбрасывать только
изменяя дефолтные настройки среды разработки. Уже более 5 лет
использую LTO во всех проектах, где работает GCC или основанные на
нём компиляторы. Не уверен, но, вроде, даже в Arduino IDE, LTE
включено по-умолчанию, хотя в первой версии среды приходилось
включать вручную, правкой файла конфигурации. - Nikolay_Po(Сегодня, 17:07)
- ...а системы автоматики Siemens дают 30...35% экономии
теплоносителя. И то, и другое правда. Но почему-то раньше линкеры
выбрасывали неиспользуемые сегменты кода/данных без LTO, а теперь -
нет. - Cкpипaч(Сегодня, 17:02)
- LTO даёт 20..30%, бывает до 50% по размеру и по скорости. А работа
с $gp - это штатное использование ABI (двоичного интерфейса
приложений) для архитектуры RISC-V, хотя для косвенной адресации
может быть использован любой другой регистр. Но именно этот
регистр, по соглашению ABI, назначен глобальным указателем - для
ускорения и уменьшения количества инструкций доступа к памяти и
периферии. Nikolay_Po(91 знак., Сегодня, 16:58)
- Не знаю, и пожалуй даже рад этому. Cкpипaч(68 знак., Сегодня, 16:45)