Оптимизируем Gentoo до посинения (делимся опытом)

Sabayon, Calculate, Funtoo, Exherbo

Модератор: /dev/random

printf

Оптимизируем Gentoo до посинения

Сообщение printf »

Хочется посмотреть на чужие make.conf. По рунету много таких тем, но там в основном идут советы и разборки. А суть этой темы - выложить свой make.conf и собсна больше ничего. Думаю, это будет очень полезно для новичков в Gentoo, таких как я, например. Мой:
CFLAGS="-march=athlon-xp -m3dnow -msse -mfpmath=sse -mmmx -O3
-pipe -fforce-addr -fomit-frame-pointer -funroll-loops -frerun-cse-after-loop
-frerun-loop-opt -falign-functions=4 -maccumulate-outgoing-args -ffast-math
-fprefetch-loop-arrays"

CHOST="i686-pc-linux-gnu"
CXXFLAGS="${CFLAGS}"

MAKEOPTS="-j2"
USE="-qt -kde gtk gnome opengl alsa -oss -arts"
Спасибо сказали:
Аватара пользователя
ddc
Бывший модератор
Сообщения: 3535
Статус: OpenBSD-compatible
ОС: OpenBSD -current

Re: Оптимизируем Gentoo до посинения

Сообщение ddc »

(/etc/make.conf) писал(а):CFLAGS="-O3 -march=k8 -msse -msse2 -m3dnow -mmmx -mfpmath=sse -pipe -fomit-frame-pointer"
CHOST="x86_64-pc-linux-gnu"
CXXFLAGS="${CFLAGS}"
USE="a52 aac aalib acl acpi apache2 arts bash-completion -berkdb bluetooth bzip2 clamav cdr curl dga dri dvd dvdr dvdread -eds -emboss exif fbcon ffmpeg flac flash -foomaticdb -fortran ftp gmp -gnome -gtk hal iconv ieee1394 imagemagick imlib ithreads -java jikes kerberos lcms -mad mime ming mng mplayer nptl nptlonly ocaml offensive ogg oggvorbis pcmcia pda pic -quicktime samba slang sse subversion svg tetex theora threads tidy truetype unicode vorbis wifi wmf xine xinerama xml xml2 xvid"
MAKEOPTS="-j2"
PORTDIR_OVERLAY=/usr/local/portage
AUTOCLEAN="yes"
LINGUAS="ru"
ALSA_CARDS="atiixp"
ACCEPT_KEYWORDS="~amd64"
Спасибо сказали:
Аватара пользователя
clx
Сообщения: 3121
Статус: Think Different !
ОС: Mac OS X

Re: Оптимизируем Gentoo до посинения

Сообщение clx »

Код: Выделить всё

 cat /etc/make.conf
CFLAGS="-march=athlon-xp -O3 -pipe -fomit-frame-pointer"
CHOST="i686-pc-linux-gnu"
LDFLAGS="-Wl,-O1 -Wl,--enable-new-dtags -Wl,--sort-common"
CXXFLAGS="${CFLAGS}"
MAKEOPTS="-j2"
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
PORTDIR_OVERLAY="/usr/local/portage/"
USE="-xmms icq 3dnow hal win32codecs sse dvdr -mmx -esd alsa -oss -arts gnome -kde -ipv6 nvidia mp3 opengl ntl nptlonly mmap -mmx2 nls pic pie dvd pthreads threads userlocales unicode disablexmb"
LINGUAS="ru en"
VIDEO_CARDS="nvidia"
ALSA_CARDS="intel8x0"


А также советую поюзать поиск на forums.gentoo.org
iMac 20" Core Duo.
Спасибо сказали:
Аватара пользователя
cubique
Сообщения: 25
ОС: mac os x 10.5.2 on mb

Re: Оптимизируем Gentoo до посинения

Сообщение cubique »

Код: Выделить всё


CFLAGS="-O3 -march=athlon64 -falign-functions=64 -fomit-frame-pointer -pipe"
CHOST="x86_64-pc-linux-gnu"
CXXFLAGS="${CFLAGS}"
MAKEOPTS="-j2"
USE="kde qt bash-completion kerberos arts win32codecs rss jabber irc icq imap pop3 vlc mpeg vorbis alsa oss mpd mp3 xine xinerama oggvorbis avi -gnome  -gtk -gtk2 ogg truetype dvd mplayer wmv nls"
ACCEPT_KEYWORDS="~amd64"
LINGUAS="de"
Спасибо сказали:
Аватара пользователя
KiWi
Бывший модератор
Сообщения: 2521
Статус: статус, статус, статус

Re: Оптимизируем Gentoo до посинения

Сообщение KiWi »

Код: Выделить всё

CHOST="i686-pc-linux-gnu"
CFLAGS="-march=pentium4 -O2 -fomit-frame-pointer -pipe"
CXXFLAGS="${CFLAGS}"
ACCEPT_KEYWORDS="~x86 ~overlay"

PORTDIR_OVERLAY="/usr/local/overlay/misc /usr/local/overlay/bmg-main  /usr/local/overlay/fluidportage \
/usr/local/overlay/gentoo.de  /usr/local/overlay/gentopia \
/usr/local/overlay/php /usr/local/overlay/zugaina"
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
MAKEOPTS="-j2"
AUTOCLEAN="yes"
FEATURES="sandbox ccache"
GENTOO_MIRRORS="ftp://10.0.0.60/pub/Linux/Gentoo ftp://mirror.aiya.ru/pub/gentoo \
ftp://ftp.citkit.ru/pub/Linux/gentoo ftp://ftp.heanet.ie/pub/gentoo"

USE="-* X a52 aac aalib acpi aim apache2 apm arts audiofile avi alsa \
        bash-completion bcmath berkdb bzip2 caps cdr crypt ctype curl curlwrappers \
        dba divx4linux dvd dvdr dvdread encode ffmpeg fftw ftp \
        gd gdb gdbm gif gpm gtk2 iconv icq imagemagick imap \
        jabber jpeg kde kdeenablefinal libg++ libwww lm_sensors \
        memlimit mime mmx mng mpeg ncurses nls nptl nptlonly \
        ogg oggvorbis opengl pam pcntl pcre pdflib perl png posix python \
        qt real readline sdl slang session sharedext sharedmem simplexml sndfile sockets sse sse2 svga symlink \
        tcltk tcpd theora unicode vcd vorbis win32codesc xml2 xpm xv xvid zlib \
        nomotif logrotate cdrom 7zip utf8 firefox c++ smtp logitech-mouse jpeg2k subversion \
        cpulimit live dhcp openssl ssl irc rss fbsplash bitmap-fonts zip samba xsl"
LINGUAS="ru"

10.0.0.60 -- сетевой никсовый сервер...
overlay -- посмотрите на gentoo-wiki.com, там был список...
Спасибо сказали:
Аватара пользователя
William Henry Gates
Сообщения: 493
Статус: ё-моё!!
ОС: jaunty

Re: Оптимизируем Gentoo до посинения

Сообщение William Henry Gates »

у меня так вот
CFLAGS="-O2 -march=pentium3 -fomit-frame-pointer -mmmx -msse -mfpmath=sse"
CHOST="i686-pc-linux-gnu"
CXXFLAGS="${CFLAGS}"
ACCEPT_KEYWORDS="x86"
MAKEOPTS="-s -j2"
FEATURES="nodoc noinfo nosandbox"
USE="X cdr dvd xvid divx4linux v4l v4l2 -alsa -arts -cups -mysql gpm -debug -ipv6 mmx sse -mad -matroska -aalib
-foomaticdb -fortran -gdbm -motif -qt -kde nvidia gtk gtk2 -xmms -radius
win32codecs -apm userlocales nls"


GENTOO_MIRRORS="/home/gentoo/distfiles-old/ /mnt/cdrom/distfiles/ http://ftp.linux.ee/pub/gentoo/distfiles/ http://src.gentoo.pl ftp://mirror.aiya.ru/pub/gentoo/ http://ftp.citkit.ru/pub/Linux/gentoo"
LINGUAS="en ru"
DISTDIR="/home/gentoo/distfiles"
#PKGDIR="/home/gentoo/packages-2005.0"
#PORTDIR="/home/gentoo/portage-2005.0"
You are registered as user #384224 with the Linux Counter. jaunty jackalope & aspire 3650
Спасибо сказали:
Yuriy
Сообщения: 33

Re: Оптимизируем Gentoo до посинения

Сообщение Yuriy »

Ну раз пишите свой make.conf то может надо писать хотябы какой процессор стоит у вас. Тогда будет немного понятнее. Ну и ещё было бы интересно для чего вы используете машину... как сервер или десктоп?
Спасибо сказали:
Аватара пользователя
KiWi
Бывший модератор
Сообщения: 2521
Статус: статус, статус, статус

Re: Оптимизируем Gentoo до посинения

Сообщение KiWi »

Yuriy писал(а):
10.11.2005 18:33
Ну раз пишите свой make.conf то может надо писать хотябы какой процессор стоит у вас.

это понятно из CFLAGS -march

как сервер или десктоп?

те, кто будет ставить сервер, не нуждаются в этой теме ВООБЩЕ
Спасибо сказали:
Аватара пользователя
LilFox
Сообщения: 137
Статус: ^^.,
ОС: Gentoo Linux

Re: Оптимизируем Gentoo до посинения

Сообщение LilFox »

Перед применением данного в действие будьте предупреждены, что авторы не несут ответственности за то, что если ваша система станет неработоспособной (то есть ваш Gentoo скончается), так как данный оверлей, на базе которого устанавливается Gentoo не является официальным и поддерживаемым Gentoo Организацией.
От себя добавлю - читать внимательно, чтобы не запороть систему, лично я сам собирал одну с нуля (то есть со стэйджей), вторую переставлял (то есть, уже установленную систему перекомпилировал на toolchain_ovelay) - работает ^_^

Перед проделыванием кстати не забудьте забэкапить ваш glibc с помощью qpkg.

Синее оптимизирование:
Берем layman:

Код: Выделить всё

emerge layman

Затем правим его конфиг, добавляем это:

Код: Выделить всё

overlays  : http://www.gentoo.org/proj/en/overlays/layman-global.txt
          http://correo.alumnos.unican.es/uc29363/overlays.xml

Для тех кто использует eix строго рекомендовано параметр make_conf поставить в такой вариации:

Код: Выделить всё

make_conf : /etc/make.conf

Для тех, кто не использует eix - используйте

Скачиваем списки:

Код: Выделить всё

layman -fL

и добавляем toolchain_overlay:

Код: Выделить всё

layman -a toolchain_overlay

Так как svn тулчэйнов проходит через http:// то особо не паникуйте, если с первого раза у вас оно не закачается, у меня только на повторный запуск layman -a toochain_overlay скачал необходимые ebuild'ы и соответственно все что с ними связано, в чем бага я не стал раскапывать, так что будьте предупреждены
Далее подредактируем /etc/make.conf и добавим в переменную PORTDIR_OVERLAY свежеустановленный overlay:

Код: Выделить всё

 PORTDIR_OVERLAY="$PORTDIR_OVERLAY
/usr/portage/local/layman/toolchain_overlay"

далее нужно размаскировать sys-devel/binutils-2.17.50.0.3:
в /etc/portage/package.keywords добавим:

Код: Выделить всё

 =sys-devel/binutils-2.17.50.0.3 -*

Вернемся в наш /etc/make.conf и добавим в переменную USE hastyle:

Код: Выделить всё

USE="hashstyle"

Нужен для того чтобы собрать toolchain_overlay собственно для оптимизации всей системы.
далее ставим sys-devel/binutils-config:

Код: Выделить всё

emerge sys-devel/binutils-config

И наш размасированный sys-devel/binutils:

Код: Выделить всё

emerge =sys-devel/binutils-2.17.50.0.3

После того как поставится, проверяем список установленных и активных binutils на целевой машине

Код: Выделить всё

binutils-config -l

Если активный binutils отличный от свежеустановленного, выберете утилитой binutils-config свежеустановленный.

Далее нужно ставить собственно glibc из overlay'я, на сегодняшний момент это 2.4-r4, будьте внимательны при флагах nptl оно еще требует mips-headers, (Если требовать не будет, значит уже исправили) вернее у меня требовало, хотя у меня обычная x86 платформа, просто удалите из ebuild файла ненужную оставив в переменной DEPEND следущее:

Код: Выделить всё

DEPEND="    nptl? ( || (  >=sys-kernel/linux-headers-${NPTL_KERNEL_VERSION} ) )
"

Далее сгенерируйте все суммы для пакетов, иначе emerge просто откажется ставить его, сетуя на то что ebuild не подходит по файловой сумме с манифестом:

Код: Выделить всё

ebuild /usr/portage/local/layman/toolchain_overlay/sys-libs/glibc/glibc-2.4-r4.ebuild digest


Смотрим будет ли включен в установку hashstyle для glibc:

Код: Выделить всё

emerge -pv =glibc-2.4-r4

и собственно ставим его, если нет, убедитесь что в make.conf в переменной USE все прописано корректно.
После вот таких вот нехитрых операций добавляем в /etc/make.conf новую переменную - переменную линковки исполнимых файликов и библиотек LDFLAGS:

Код: Выделить всё

LDFLAGS="-Wl,-O1 -Wl,--hash-style=both"

Собственно данная линковка и будет обеспечивать оптимизацию Далее все просто нужно пересобрать весь мир ( всего то ), для того чтобы оптимизация была везде и всюду, в официальном howto советует сначала пересобрать всю систему, а только затем весь мир, чтобы быть уверенным в том, что все прошло без каких либо видимых нарушений, я сделал в принципе много проще (дабы не мучать лишними действиями свой мозг)
делаем список устанавливаемого софта:

Код: Выделить всё

emerge -pev world| grep ebuild | awk '{print "="$4}' > /root/tomerge

Так официальном howto сказано собирать glibc, binutils без нужной нам линковки (LDFLAGS) настоятельно рекомендую удалить из списка /root/tomerge binutils и glibc, так как незачем их еще раз собирать (по причине того, чтобы не запороть систему ну и потому, что время лишнее тратить не охота :) )
ну и чтобы поставить это все достаточно набрать:

Код: Выделить всё

emerge `cat /root/tomerge`

Не исключено то, что не все пакеты поставятся сразу же (у меня по непонятным причинам не собрался jack-audio-connection-kit-0.100-r3, к примеру).
Лично не знаю как вы, но я определял последний несобранный пакет довольно просто:

Код: Выделить всё

ls /var/tmp/portage/

Далее чистил /root/tomerge до несобранного пакета и старался разрешить проблему (некоторые пакеты можно было просто исключить, или собрать в самую крайнюю очаредь, чем я и занимался, если они выпадали на этапе компиляции)

Вот, если все удачно вышло - радуйтесь, у вас свежесобранная оптимизированная система, к сожалению этот оверлей не официальный и авторы предупреждают, то что если вы что-то сделаете не так, то они не отвечают за последствия. В худщем случае вам придется переустанавливать gentoo заново (в лучшем просто откатиться с backup'а)

Далее, если вы расчитываете обновлять toolchain своей системы (то есть binutils и glibc) из данного оверлея, будьте внимательны:
1) Собирайте их без LDFLAGS="-Wl,-O1 -Wl,--hash-style=both", просто коментируйте в make.conf файле переменную LDFLAGS до начала сборки binutils и glibc
2) Технология является развивающейся, так что полезно читать что пишет разработчик, в случае новых качественных усовершенствований вам придется пересобирать все, для того, чтобы все работало в соответствии с новыми спецификациями или вобще работало.
3) следите также за официальным howto, неофициальной ветки toolchain HOWTO_Hashstyle, возможно там появится что-то новенькое

Собственно и все, что касается прироста лично для меня он есть, вот, для тех кто хочет почитать подробнее про оптимизацию - читать тут

P.S
вроде ничего не забыл :)
Best Wishes. LilFox
Won't someone help me find my little Clare.
Спасибо сказали:
Аватара пользователя
TuLiss
Сообщения: 1611
Статус: 01100
ОС: Gentoo,Ubuntu,MacOS X

Re: Оптимизируем Gentoo до посинения

Сообщение TuLiss »

я все понимаю. Все можно посмотреть в доках, узнать итд.
Но если пишите, то пищите хотя бы разъеснение, что вы этим добились итд итп.
Чтение man'нов в слух ещЁ никому не помогало!...
kernel 4.2
chmod -x `which chmod`
War, war never changes...
Спасибо сказали:
Аватара пользователя
Thoth
Сообщения: 432
Статус: Хорошему коту и в декабре март.
ОС: gentoo only !!!

Re: Оптимизируем Gentoo до посинения

Сообщение Thoth »

хм тема классная мне нравится :

Код: Выделить всё

tehuty@black ~ $ cat /etc/make.conf
CFLAGS="-march=athlon-xp -mtune=athlon-xp -O2 -fomit-frame-pointer -fprefetch-loop-arrays -pipe -mmmx -msse -momit-leaf-frame-pointer"

CXXFLAGS="${CFLAGS} -fvisibility-inlines-hidden"

CHOST="i686-pc-linux-gnu"

MAKEOPTS="-j1"
LDFLAGS="-Wl,-O1 -Wl,--sort-common -s"

ALSA_CARDS="intel8x0"
INPUT_DEVICES="keyboard mouse"
VIDEO_CARDS="nvidia"
LINGUAS="en_US il ru he"
LC_ALL="en_US.UTF-8"

USE="-arts -cups -eds -esd -fortran -gnome -gstreamer -gtk -gtk2 -ipv6 no-seamonkey -oss -spell /
aac amuled aotuv apache2 asf audiofile bidi bjam bzip2 cli ctype curl dba dbus /
directfb dvd dvdread /
ffmpeg firefox flac emacs gd gif hal java jpeg jpeg2k kdehiddenvisibility /
latex lm_sensors /
mad matroska mikmod mp3 musepack /
nptl nptlonly nsplugin nvidia /
offensive ogg pcre pdf pdo-external php pic png postgres qt4 real remote /
session sql sqlite sqlite3 subversion svg symlink /
tetex theora threads truetype thunderbird unicode userlocales /
vcd vim-with-x visualization vorbis win32codecs /
xcomposite xine xml xml2 xscreensaver xsl xvid zip"

ACCEPT_KEYWORDS="~x86"

FEATURES="parallel-fetch ccache sandbox"
GENTOO_MIRRORS="http://pandemonium.tiscali.de/pub/gentoo/"

SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"

AUTOCLEAN="yes"
EMERGE_DEFAULT_OPTS="--alphabetical"

CCACHE_SIZE="4G"

CC="gcc"
CXX="g++"

<_<

LilFoxик привет .
ГГГента vanilla-sources + some patchs, kde real-base only,GNU emacs
Юзаю gentoo патаму шта он рудит нипадецки, а всё астальное ацтой.
лапоть: OpenSuse-10.2
Спасибо сказали:
Аватара пользователя
Arceny
Сообщения: 378
ОС: Debian Lenny/Sid

Re: Оптимизируем Gentoo до посинения

Сообщение Arceny »

Код: Выделить всё

cat /etc/make.conf
# These settings were set by the catalyst build script that automatically built this stage
# Please consult /etc/make.conf.example for a more detailed example
CFLAGS="-O3 -march=nocona -pipe"
CHOST="i686-pc-linux-gnu"
CXXFLAGS="${CFLAGS}"
ACCEPT_KEYWORDS="~x86"
MAKEOPTS="-j3"

#GENTOO_MIRRORS="
#ftp://10.102.12.6
#ftp://10.106.0.190
#"

DISTDIR="/drive1/gentoo/distfiles"

USE="tiff ffmpeg rcc X -qt -kde nptl nptlonly djvu dvd dvdread truetype xv opengl dvdr png xcomposite thunar-vfs panel-plugin thumbnail gtk unicode mmx mmxext sse sse2 alsa xmms aac a52 avi dvdread divx4linux dv encode fame mpeg ogg quicktime subtitles vorbis xvid x264 nvidia"
LINGUAS="ru"

PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
PORTAGE_TMPDIR=/drive2/tmp
VIDEO_CARDS="nvidia vesa vga vmware"
Спасибо сказали:
shrikes
Сообщения: 126
ОС: Gentoo Linux

Re: Оптимизируем Gentoo до посинения

Сообщение shrikes »

printf писал(а):
22.10.2005 17:17
Хочется посмотреть на чужие make.conf. По рунету много таких тем, но там в основном идут советы и разборки. А суть этой темы - выложить свой make.conf и собсна больше ничего. Думаю, это будет очень полезно для новичков в Gentoo, таких как я, например. Мой:

CFLAGS="-march=athlon-xp -m3dnow -msse -mfpmath=sse -mmmx -O3
-pipe -fforce-addr -fomit-frame-pointer -funroll-loops -frerun-cse-after-loop
-frerun-loop-opt -falign-functions=4 -maccumulate-outgoing-args -ffast-math
-fprefetch-loop-arrays"

CHOST="i686-pc-linux-gnu"
CXXFLAGS="${CFLAGS}"

MAKEOPTS="-j2"
USE="-qt -kde gtk gnome opengl alsa -oss -arts"


Ничего себе новичек, столько опций CFLAGS, вот только вопрос -- все ли они безопасны? Не нарушиться ли стабильность
Спасибо сказали:
shrikes
Сообщения: 126
ОС: Gentoo Linux

Re: Оптимизируем Gentoo до посинения

Сообщение shrikes »

Код: Выделить всё

USE="jpeg -hardened -selinux X509 softquota opensslcrypt shaper sguil mysqli snortsam aspell svga rcc hal firefox dvd nvidia -gdbm berkdb bzip2 firebird acl mp3 slang extensions -symlink radius gd mppe-mppc userlocales urandom nptl nptlonly X -sdl gtk openssl -gnome imap maildir -mbox -sasl kde qt opengl -gtk2 alsa arts xmms -samba -cups ssl crypt tcpd vhosts ncurces zlib mysql mysqli big-tables -postgres mmx sse x86 libwww libg++ gpm -ipv6 pcre session -pear png -gif -authdaemond -gtk2 -apache unicode apache2"
CHOST="i686-pc-linux-gnu"
CFLAGS="-march=pentium4 -O3 -pipe -funroll-loops -fomit-frame-pointer"
CXXFLAGS="${CFLAGS}"
ACCEPT_KEYWORDS="~arch"
PORTDIR=/usr/portage
DISTDIR=/var/ftp/distfiles/
PORTDIR_OVERLAY=/usr/local/portage

SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
MAKEOPTS="-j3"
GENTOO_MIRRORS="ftp://distro.ibiblio.org/pub/linux/distributions/gentoo/ http://gentoo.mirrored.ca/"
LINGUAS="ru"
VIDEO_CARDS="nvidia"


Вот мой
Спасибо сказали:
loginex
Сообщения: 15

Re: Оптимизируем Gentoo до посинения

Сообщение loginex »

Ноут Asus A7R00D
Я бы еще кинул config ядра(там куда интереснее), но это было бы уже слишком :)

Код: Выделить всё

cat /etc/make.conf
# These settings were set by the catalyst build script that automatically built this stage
# Please consult /etc/make.conf.example for a more detailed example
CFLAGS="-O3 -march=k8 -fomit-frame-pointer -mfpmath=sse -pipe"
CHOST="x86_64-pc-linux-gnu"
CXXFLAGS="${CFLAGS}"
MAKEOPTS="-j2"
LINGUAS="ru"
ACCEPT_KEYWORDS="~amd64"
CONFIG_PROTECT="-*"
USE="x86_64 acpi usb hotplug pci nptl nptlonly reiserfs fbcon aalib crypt cups encode gif imlib jpeg libg++ libwww nceuses nls oggvorbis png tiff python quicktime readline slang spell svg svga zlib oss alsa samba xml xml2 -mga X opengl gtk gtk+ gtk2 tcltk dvd flash xmms tk vorbis freetype ogg audiofile avi mpeg threads -doc dvdr cdr dvdread xvid ffmpeg network xine -motif -athena qt kde lirc -static -ldap -arts -artswrapersuid apache2 -ipv6 -gnome dvd theora win32codecs firefox 7zip icq irc jabber x264 aac bzip2 zip mysql iconv hash ftp socks5 userlocales acpi cvs pascal php ruby sql bootstrap fat jfs ntfs reiser4 xfs wma gphoto2 nsplugin xscreensaver mplayer rar mikmod ieee1394 udev bluetooth irda java amr directfb openal cdparanoia libcaca unicode"
VIDEO_CARDS="radeon"
ALSA_CARDS="hda-intel"
INPUT_DEVICES="keyboard mouse synaptics"
LIRC_DEVICES="sir"
CONFIG_PROTECT="-*"
GENTOO_VM=blackdown-jdk
PORTDIR_OVERLAY="/usr/local/portage/"
FETCHCOMMAND="/usr/bin/getdelta.sh \${URI}"
#FETCHCOMMAND="cp -p ${URI} /usr/portage/distfiles"
#GENTOO_MIRRORS="/mnt/files/distfiles"
Linux: Gentoo ~x86 kernel: 2.6.16-gentoo-r9 gcc:gcc-4.1.1
Спасибо сказали:
akurgan
Сообщения: 2
ОС: gentoo

Re: Оптимизируем Gentoo до посинения

Сообщение akurgan »

Народ! У меня есть вопрос: кто нибудь собирал gentoo для проца athlon64 в 32-бит варианте и 64-бит варианте и сравнивал производительность этих сборок? Какой вариант в каком случае будет быстрее?
Спасибо сказали:
loginex
Сообщения: 15

Re: Оптимизируем Gentoo до посинения

Сообщение loginex »

akurgan писал(а):
04.10.2006 03:11
Народ! У меня есть вопрос: кто нибудь собирал gentoo для проца athlon64 в 32-бит варианте и 64-бит варианте и сравнивал производительность этих сборок? Какой вариант в каком случае будет быстрее?

если ты соберешь просто в 32битной версии, но с поддержкой всех возможных функций, типа ммх, 3днау, ссе1,2,3, то логично, что быстрее будет 32битная версия в 80 процентах приложений, остальные - те, что с плавающей точкой, медленней, и наоборот, если соберешь в 64битной версии, то приложениях с "плавающей точкой" будут быстрее.
Linux: Gentoo ~x86 kernel: 2.6.16-gentoo-r9 gcc:gcc-4.1.1
Спасибо сказали:
Аватара пользователя
helicopter
Сообщения: 324
Статус: Комсомолец
ОС: Gentoo Linux

Re: Оптимизируем Gentoo до посинения

Сообщение helicopter »

(loginex @ Oct 4 2006, в 23:14) писал(а):и наоборот, если соберешь в 64битной версии, то приложениях с "плавающей точкой" будут быстрее.

И оперативки 64-битный код будет кушать вдвое больше :P
Выбирая Linux, вы развиваете цивилизацию. Выбирая windows, вы набиваете кошелёк забугорному буржую...
Спасибо сказали:
shrikes
Сообщения: 126
ОС: Gentoo Linux

Re: Оптимизируем Gentoo до посинения

Сообщение shrikes »

ddc писал(а):
22.10.2005 18:36
CFLAGS="-O3 -march=k8 -msse -msse2 -m3dnow -mmmx -mfpmath=sse -pipe -fomit-frame-pointer"

Я бы еще добавил -msse3 -msseexp -mmmxext
Спасибо сказали:
loginex
Сообщения: 15

Re: Оптимизируем Gentoo до посинения

Сообщение loginex »

shrikes писал(а):
05.10.2006 12:44
ddc писал(а):
22.10.2005 18:36

CFLAGS="-O3 -march=k8 -msse -msse2 -m3dnow -mmmx -mfpmath=sse -pipe -fomit-frame-pointer"

Я бы еще добавил -msse3 -msseexp -mmmxext

вроде в k8 все это входит и так, в том числе msse -msse2 -m3dnow -mmmx
Linux: Gentoo ~x86 kernel: 2.6.16-gentoo-r9 gcc:gcc-4.1.1
Спасибо сказали:
Аватара пользователя
GunMan
Сообщения: 38
ОС: Gentoo

Re: Оптимизируем Gentoo до посинения

Сообщение GunMan »

У меня вот семпронина 2500,

CFLAGS="-march=athlon-xp -mtune=athlon-xp -O2 -fomit-frame-pointer -fprefetch-loop-arrays -pipe -mmmx -msse -momit-leaf-frame-pointer"

может чего лишнее, чожет чего добавить, в общем - ругайте.
rm / -rf
Спасибо сказали:
newguy
Сообщения: 9

Re: Оптимизируем Gentoo до посинения

Сообщение newguy »

У меня вопрос: никто не пользовался такой прогой как acovea для проверки, что же лучше для производительности ?
А то я поставил её и прогнал по тестам и оказалось, что тот же fomit-frame-pointer дает только падение скорости выполнения. И так еще много опций, которые советуют везде добавлять в CFLAGS, а они по этим тестам не дают прироста.
Спасибо сказали:
Christina
Сообщения: 1
ОС: Gentoo

Re: Оптимизируем Gentoo до посинения

Сообщение Christina »

# These settings were set by the catalyst build script that automatically built this stage
# Please consult /etc/make.conf.example for a more detailed example
#CFLAGS="-O2 -march=i686 -pipe"
CFLAGS="-march=athlon-mp -O3 -fomit-frame-pointer -falign-functions=32 -falign-labels=32
-falign-loops=32 -falign-jumps=32 -mfpmath=sse -m3dnow -mpreferred-stack-boundary=2 -pipe
-s- -msse -mmmx -fforce-addr -funroll-loops -frerun-cse-after-loop -frerun-loop-opt
-maccumulate-outgoing-args -ffast-math -fprefetch-loop-arrays"
CHOST="i686-pc-linux-gnu"
CXXFLAGS="${CFLAGS}"
MAKEOPTS="-j2"
#ACCEPT_KEYWORDS=""
USE=" 3dnow 3dnowext 7zip S3TC X a52 aac acpi alsa apache2 apm aqua_theme arts asf audiofile
automount avi -berkdb bitmap-fonts bmp bzip2 cdr chroot cle266 cli crypt ctype -cups dba
directfb djvu dvd dvdr dvdread -dxr3 eds elibc_glibc emboss encode -esd ethereal exif expat
fam fastbuild fat ffmpeg firefox flac flash foomaticdb force-cgi-redirect fortran ftp gd
-gdbm gecko-sdk gif glut glx gmail gmailtimestamps gmp gnome gpm gstreamer gtalk gtk gtk2
gtkhtml guile icq id3 idn imlib ipv6 jabber joystick jp2 -jpeg -jpeg2k kde kernel_linux
lame lcms libg++ libwww -lirc lm_sensors mad matroska memlimit mikmod -mjpeg mmx mmxext
mng motif mozilla mp3 mpeg mpeg2 mplayer ncurses nls nptl nptlonly ntfs nvidia ogg oggvorbis opengl -oss
pam pcre pda pdf pdflib perl player png posix python -qt quicktime -rar readline reiser4
reiserfs samba sblive sdl session simplexml slang soap sockets spell spl sse sse-filters
ssl tcltk tcpd tiff tokenizer truetype truetype-fonts type1-fonts udev usb userland_GNU
v4l v4l2 vcd vfat vidix vorbis win32codecs wma wma123 x11vnc x86 xine xinerama xml
xml2 xmms xscreensaver xsl xv xvid xvmc zip zlib"

LINGUAS="ru ua"
#PKGDIR=/usr/portage/ALL/

#GENTOO_MIRRORS="ftp://gentoo.linux.kiev.ua/pub/Linux/Gentoo/"
RSYNC_RETRIES="3"
#GENTOO_MIRRORS="ftp://gentoo.linux.kiev.ua/pub/Linux/Gentoo/"
#SYNC="rsync://gentoo.linux.kiev.ua/gentoo-portage"
#SYNC="rsync://rsync.gentoo.org.ua/gentoo-portage"

VIDEO_CARDS=nvidia
LIRC_DEVICES="all"
ALSA_CARDS="emu10k1"
ALSA_TOOLS="ac3dec as10k1 ld10k1 qlo10k1"

CC=gcc
CXX=g++
#CFLAGS="-mcpu=athlon-xp -O2 -pipe"
#CFLAGS="-march=pentium3 -O3 -pipe"
#CFLAGS="-march=athlon-xp -O3 -pipe -fomit-frame-pointer -mmmx -m3dnow -msse
#-mfpmath=sse -ffast-math"
ACCEPT_KEYWORDS="~x86"

#PORTDIR_OVERLAY=/usr/local/portage

MAKEOPTS="-j2"

PORTAGE_NICENESS=3

FEATURES="candy"

FETCHCOMMAND="/usr/bin/getdelta.sh \${URI}"



такой у меня :)

я вообще не очень понимаю значение этих опций всех. может кто обьяснит?
Спасибо сказали:
Аватара пользователя
LilFox
Сообщения: 137
Статус: ^^.,
ОС: Gentoo Linux

Re: Оптимизируем Gentoo до посинения

Сообщение LilFox »

Кстати насчет USE="" опции в /etc/make.conf, советую не злоупотреблять и не добавлять все что показывает

Код: Выделить всё

emerge -pv package


Для этого существует /etc/portage/package.use

Это тоже в какой-то степени разгон тачки (избавление от ненужных бывает порой вот таких дефолтных флагов)

ACCEPT_KEYWORDS="~x86" - означает, что система приемущественно будет собрана из testing пакетов ( в дебиане это зовётся unstable ) Чего собственно не рекомендую я делать тем, кто не настолько искушён в настройке и сопровождении Linux системы - надорветесь :)

мой FEATURES:

Код: Выделить всё

FEATURES="ccache digest candy -metadata-transfer"


привлекательный флаг кстати в нем это -metadata-transfer. Дело в том что emerge --sync выкачивает не только снэпшоты, профайлы, лицензии и прочее, но еще и metadata, которая собственно и весит прилично, да еще emerge metadata в конце установки делается - то есть смысл использования сильно падает
Его можно убить в трех местах - выкачивание metadata, но собственно пример через /etc/make.conf

2 Christina, вот кстати такие USE'ы при таком ACCEPT_KEYWORDS собирают довольно много проблем ^_^
Best Wishes. LilFox
Won't someone help me find my little Clare.
Спасибо сказали:
shrikes
Сообщения: 126
ОС: Gentoo Linux

Re: Оптимизируем Gentoo до посинения

Сообщение shrikes »

LilFox писал(а):
12.10.2006 11:49
ACCEPT_KEYWORDS="~x86" - означает, что система приемущественно будет собрана из testing пакетов ( в дебиане это зовётся unstable ) Чего собственно не рекомендую я делать тем, кто не настолько искушён в настройке и сопровождении Linux системы - надорветесь :)

А что тогда здесь нужно прописать для stable?
Спасибо сказали:
Аватара пользователя
solshark
Сообщения: 439
Статус: Монархист
ОС: Gentoo ~amd64

Re: Оптимизируем Gentoo до посинения

Сообщение solshark »

shrikes писал(а):
12.10.2006 13:12
А что тогда здесь нужно прописать для stable?

Ничего не прописывать :) Если ACCEPT_KEYWORDS не установлен в ~arch, то используется стабильная ветка.

Кстати, с тов. LilFox не согласен. Можно смело использовать тестовую ветку. Да, баги иногда появляются, но их как правило быстро фиксят. Ну и главное преимущество - все время свежий софт.
Ceterum censeo Carthaginem esse delendam
Marcus Porcius Cato
Мой блог про KDE4 и рыбу в томате
Спасибо сказали:
Аватара пользователя
LilFox
Сообщения: 137
Статус: ^^.,
ОС: Gentoo Linux

Re: Оптимизируем Gentoo до посинения

Сообщение LilFox »

Как говорят многие howto - советую использовать свежие версии, собственно ~arch, потому как в более стабильных могут и не пристутствовать новые фичи (features) аля возможности.
Но имхо ЭТО для тех, кто подкован в этом деле, к примеру я могу использовать ~arch, я использую, но только часть ;), а вот новичкам не советую или советую читать howto'es manuals подробно, а желательно еще и вдумчиво ^_^

Еще раз подчеркну, для людей, кто в linux'е не особо подкован - лучше не пытаться прыгнуть выше головы и использовать, следить, сопровождать такое :)

P.S
/me как писал выше - использует вобще hashstyle, который опаснее testing'а ^_^
Best Wishes. LilFox
Won't someone help me find my little Clare.
Спасибо сказали:
-lexx
Сообщения: 1
ОС: Gentoo!

Re: Оптимизируем Gentoo до посинения

Сообщение -lexx »

Код: Выделить всё

CFLAGS="-O2 -march=i686 -pipe"
CHOST="i686-pc-linux-gnu"
CXXFLAGS="${CFLAGS}"
USE="doc unicode slang dvd dvdread mmxext mmx 3dfx sse2 3dnow 3dnowext real nvidia
     alsa apache2 apm arts avi cups eds emboss encode esd
     foomaticdb gdbm gif gnome gpm gstreamer gtk gtk2 imlib jpeg kde
     libg++ libwww mad mikmod mppe  motif mp3 mpeg nptl ogg opengl oss pdflib
     png qt quicktime sdl samba spell truetype udev vorbis X xml xmms xv"
LINGUAS=ru
- почему бы и не выложить за компанию :D
Спасибо сказали:
Аватара пользователя
rezident
Сообщения: 34

Re: Оптимизируем Gentoo до посинения

Сообщение rezident »

CFLAGS="-march=athlon-xp -m3dnow -msse -mfpmath=sse -mmmx -O3
-pipe -fforce-addr -fomit-frame-pointer -funroll-loops -frerun-cse-after-loop
-frerun-loop-opt -falign-functions=4 -maccumulate-outgoing-args -ffast-math
-fprefetch-loop-arrays"

CHOST="i686-pc-linux-gnu"
CXXFLAGS="${CFLAGS}"

MAKEOPTS="-j2"
USE="-qt -kde gtk gnome opengl alsa -oss -arts"


Можно вопрос... все это хозяйство прописывается после или до установки Gentoo ?
Об этом говорит в руководстве по установке пункт "редактирование make.conf" ?
"Стремитесь к знаниям от колыбели до могилы"
Спасибо сказали:
Аватара пользователя
Nightwolf_ng
Сообщения: 1483
Статус: Участнег
ОС: Женько и семёрко

Re: Оптимизируем Gentoo до посинения

Сообщение Nightwolf_ng »

RezidenT писал(а):
29.10.2006 21:46
Можно вопрос... все это хозяйство прописывается после или до установки Gentoo ?
Об этом говорит в руководстве по установке пункт "редактирование make.conf" ?

Во время установки... :P
Обо всех флагах, конечно же нет (в этом можно убедиться почитав таки этот мудрый хэндбук), но основные принципы содержимого make.conf даны...

З.Ы. Встречный вопрос - а почему возникают такие вопросы? Не проще в самом хэндбуке посмотреть, что там есть, а чего нет? :unsure:
Спасибо сказали: