Оптимизация
mgnt00 20 июля, 2005 - 12:20
Самый высокий уровень оптимизации как известно в Stage 1.
Но если ты новичок, то это просто трата времени.
Вопрос: После установки Stage 3, и постепенного изучения системы, и постепенных оптимезаций и перекомпеляций, возможно ли достич такого же уровня опримезации под железо как в Stage1?
»
- Для комментирования войдите или зарегистрируйтесь
опции компиляции находятся в /etc/make.conf - а что такое Stage 3 или 1 я вообще не знаю - поставил что было, потом правите флаги в make.conf под свою систему потом emerge --sync и emerge -uD world и все.
У меня вот какой вопрос
стоит флаг athlon-xp но xorg-x11 все равно собрался без 3dnow 3dfx - почему? хотя когда указал вручную - то и с ним собралось
какая причина что разработчики в набор флагов к athlon-xp не включили 3dnow? - подскажите
и еще - собрал с ntpl но скорость в иксах заметно не ускорилась - что еще с иксами можно придумать что-бы ресайз окошек не тормозил и вообще что-бы они быстрее отрисовывались?
Возможно :-) Берешь руками правишь /etc/make.conf там CFLAGS для компилятора и USE настраиваешь как надо, потом emerge -e world и получаешь полностью перекомпиленную систему под твои флажки. Я обновил gcc до 3.4.4, CFLAGS под pentium-m сделал, т.к. gcc 3.3.5 не знает такого процессора, и перекомпилил всю систему, летает теперь :-)
А какие флажки ставить под пень 3 - 1000Мгц? подскажите...
кроме:
mcpu=pentium3 -03 -pipe
И какие USEы?
может есть ссылочка на русский ман по оптимизации?
march=pentium3 -fomit-frame-pointer(нет дебуг инфы) -pipe -O3 -mmmx -msse(если есть) -mfpmath=sse(если есть)
USE="... mmx sse..."
_________________
Blame!
А можешь показать полностью свои флаги?
вот нарыл статейку http://ru.gentoo-wiki.com/HOWTO_Использование_CFLAGS_для_оптимизации_собранных_программ Седня ночью хочу попробовать
http://new.gentoo.ru/admin/node
1. "-О" Компилятор пытается сократить как размер кода, так и время его выполнения. И при этом не выполняет модификаций, которые могут затруднить отладку программы. Включает опции -fno-optimize-size, -fdefer-pop, -fthread-jumps, -fguess-branch-probability, -cprop-registers и-fdelayed-branch. Флаг -fomit-frame-pointer устанавливается только если применяемый отладчик способен работать без использования регистра указателя кадра стека.
2. "-О0" Действует по умолчанию. Отключает любые оптимизации размера кода и устанавливает флаг -fno-merge-constants.
3. "-О1" То же, что -О
4. "-О2" На этом уровне применяются все виды оптимизации, которые не требуют вычисления оптимального выбора между размером и скоростью кода. Кроме флагов, устанавливаемых при -О, дополнительно задействует следующие опции -foptimize-sibling-calls, -fcse-follow-jumps, -fcse-skip-blocks, -fgcae, -expensive-optimizations, -fstrength-reduce, -frerun-cse-after-loop, -frerun-loop-opt, -fcaller-aaves, -fforce-mem, -fpeephole2, -fshedule-insns, -fshedule-insns-after-reload, -fregmove, -fstrict-aliasing, -fdelete-null-pointer-checks и -freorder-blocka. Этот уровень оптимизации не разворачивает циклы, не выполняет оптимизацию подстановок (inlining) и переназначение регистров.
5. "-О3" В дополнение к опциям, включаемым при -О2, устанавливает также -finline-functions и -frename-registers.
6. "-Os" Оптимизирует размер программы. Устанавливает все опции, действующие при -О3. Устанавливает опции -falign-loops, -falign-jumps, -falign-labels и -falign-functions с параметром =1, что не допускает вставку пустого пространства для применения выравнивания.