Данные о системе.
Код: Выделить всё
Процессор AMD Athlon64 3000+ 939 soc
Мат.Плата EPOX 9NDA3 nForce 3 Ultra
Память 2х265Mb Hynix, DualMode, PC3200.
uname -a
Linux gentoo 2.6.13-mm1 #1 Tue Sep 27 01:35:04 YAKST 2005 x86_64 AMD Athlon(tm) 64 Processor 3000+ AuthenticAMD GNU/Linux
cat /proc/cpuinfo
processor : 0
vendor_id : AuthenticAMD
cpu family : 15
model : 31
model name : AMD Athlon(tm) 64 Processor 3000+
stepping : 0
cpu MHz : 1808.255
cache size : 512 KB
fpu : yes
fpu_exception : yes
cpuid level : 1
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 syscall nx mmxext fxsr_opt lm 3dnowext 3dnow
bogomips : 3620.06
TLB size : 1024 4K pages
clflush size : 64
cache_alignment : 64
address sizes : 40 bits physical, 48 bits virtual
power management: ts fid vid ttp
Древо портежей от 2005 08 29
cat /etc/make.conf
CFLAGS="-O3"
CHOST="x86_64-pc-linux-gnu"
CXXFLAGS="${CFLAGS}"
USE="ntpl ntplonly"
cat /etc/make.conf.old
CFLAGS="-O2"
CHOST="x86_64-pc-linux-gnu"
CXXFLAGS="${CFLAGS}"
USE="ntpl ntplonly"
lsmod
Module Size Used by
w83627hf 27980 0
hwmon_vid 2432 1 w83627hf
eeprom 6736 0
i2c_isa 4544 1 w83627hf
iptable_nat 23068 1
ipt_state 1920 1
ip_conntrack 46192 2 iptable_nat,ipt_state
iptable_filter 2880 1
ip_tables 18240 3 iptable_nat,ipt_state,iptable_filter
uhci_hcd 29856 0
snd_mpu401 6792 1
snd_mpu401_uart 6400 1 snd_mpu401
analog 10016 0
ns558 4676 0
parport_pc 33512 0
parport 34956 1 parport_pc
floppy 65352 0
eth1394 18320 0
sundance 19680 0
mii 5120 1 sundance
emu10k1_gp 3456 0
gameport 12176 5 analog,ns558,emu10k1_gp
ohci1394 30028 0
ieee1394 348024 2 eth1394,ohci1394
nvidia 4377640 12
usbhid 36320 0
usbmouse 4992 0
forcedeth 20224 0
ehci_hcd 30600 0
ohci_hcd 18756 0
i2c_nforce2 6848 0
i2c_core 19416 4 w83627hf,eeprom,i2c_isa,i2c_nforce2
usbcore 114144 6 uhci_hcd,usbhid,usbmouse,ehci_hcd,ohci_hcd
ntfs 88320 1
unix 24440 208
Список пакетов для сборки
[ebuild N ] sys-devel/patch-2.5.9-r1
[ebuild N ] app-arch/bzip2-1.0.3-r5
[ebuild N ] app-arch/cpio-2.6-r4
[ebuild N ] sys-libs/gpm-1.20.1-r4
[ebuild N ] sys-libs/ncurses-5.4-r6
[ebuild N ] app-shells/bash-3.0-r12
[ebuild N ] sys-devel/binutils-config-1.8-r5
[ebuild N ] sys-devel/gnuconfig-20050324
[ebuild N ] sys-devel/binutils-2.15.92.0.2-r10
[ebuild N ] sys-devel/m4-1.4.3
[ebuild N ] sys-devel/bison-1.875d
[ebuild N ] sys-apps/sed-4.1.4
[ebuild N ] sys-devel/gcc-config-1.3.11-r4
[ebuild N ] sys-apps/texinfo-4.8
[ebuild N ] sys-libs/zlib-1.2.3
[ebuild N ] sys-devel/gcc-3.4.4-r1
[ebuild N ] sys-kernel/linux-headers-2.6.11-r2
[ebuild N ] sys-libs/glibc-2.3.5-r1
[ebuild N ] sys-devel/gettext-0.14.4
[ebuild N ] app-arch/gzip-1.3.5-r8
[ebuild N ] app-arch/tar-1.15.1
[ebuild N ] sys-libs/db-4.2.52_p2
[ebuild N ] sys-apps/groff-1.19.1-r2
[ebuild N ] sys-process/cronbase-0.3.2
[ebuild N ] sys-apps/man-1.6-r1
[ebuild N ] sys-devel/libperl-5.8.6-r1
[ebuild N ] dev-lang/perl-5.8.6-r5
[ebuild N ] app-admin/perl-cleaner-1.01
[ebuild N ] sys-libs/readline-5.0-r2
[ebuild N ] sys-devel/flex-2.5.4a-r6
[ebuild N ] sys-devel/bc-1.06-r6
[ebuild N ] sys-apps/diffutils-2.8.7-r1
[ebuild N ] dev-libs/openssl-0.9.7e-r1
[ebuild N ] dev-libs/expat-1.95.8
[ebuild N ] dev-lang/python-2.3.5
[ebuild N ] dev-python/python-fchksum-1.7.1
[ebuild N ] net-misc/iputils-021109-r3
[ebuild N ] dev-libs/popt-1.7-r1
[ebuild N ] sys-apps/sandbox-1.2.12
[ebuild N ] sys-apps/debianutils-2.14.1-r1
[ebuild N ] sys-apps/portage-2.0.51.22-r2
[ebuild N ] net-misc/rsync-2.6.0-r6
[ebuild N ] sys-devel/autoconf-2.13
[ebuild N ] sys-devel/autoconf-wrapper-3-r1
[ebuild N ] sys-devel/autoconf-2.59-r6
[ebuild N ] net-misc/wget-1.9.1-r5
[ebuild N ] sys-apps/sysvinit-2.86
[ebuild N ] dev-perl/Locale-gettext-1.03
[ebuild N ] sys-apps/help2man-1.33.1
[ebuild N ] sys-devel/automake-1.5
[ebuild N ] sys-devel/automake-1.9.6
[ebuild N ] sys-devel/automake-1.6.3
[ebuild N ] sys-devel/automake-1.7.9-r1
[ebuild N ] sys-devel/automake-1.4_p6
[ebuild N ] sys-devel/automake-wrapper-1-r1
[ebuild N ] sys-devel/automake-1.8.5-r3
[ebuild N ] sys-apps/coreutils-5.2.1-r6
[ebuild N ] sys-apps/baselayout-1.11.13-r1
[ebuild N ] sys-apps/file-4.13
[ebuild N ] sys-apps/findutils-4.1.20-r1
[ebuild N ] sys-apps/gawk-3.1.3-r2
[ebuild N ] sys-apps/grep-2.5.1-r8
[ebuild N ] sys-apps/kbd-1.12-r5
[ebuild N ] sys-apps/man-pages-2.07
[ebuild N ] sys-apps/net-tools-1.60-r11
[ebuild N ] sys-process/procps-3.2.5-r1
[ebuild N ] sys-devel/libtool-1.5.18-r1
[ebuild N ] sys-process/psmisc-21.6
[ebuild N ] sys-libs/cracklib-2.8.3-r1
[ebuild N ] dev-util/pkgconfig-0.17.2-r1
[ebuild N ] sys-libs/pam-0.78-r2
[ebuild N ] sys-apps/shadow-4.0.7-r3
[ebuild N ] sys-apps/pam-login-3.17
[ebuild N ] sys-apps/which-2.16
[ebuild N ] sys-devel/make-3.80-r2
[ebuild N ] sys-libs/com_err-1.38
[ebuild N ] sys-libs/ss-1.38
[ebuild N ] sys-fs/e2fsprogs-1.38
[ebuild N ] sys-apps/hotplug-base-20040401
[ebuild N ] sys-fs/udev-058
[ebuild N ] app-editors/nano-1.3.7
[ebuild N ] sys-apps/module-init-tools-3.0-r2
[ebuild N ] sys-apps/less-382-r2
[ebuild N ] sys-apps/tcp-wrappers-7.6-r8
[ebuild N ] net-misc/openssh-3.9_p1-r2
[ebuild N ] sys-apps/busybox-1.00-r4
[ebuild N ] sys-apps/hdparm-5.9
[ebuild N ] app-crypt/hashalot-0.3
[ebuild N ] sys-apps/util-linux-2.12i-r1
[ebuild N ] sys-libs/pwdb-0.62
[ebuild N ] sys-apps/linux32-1.0
Запущенные службы
rc-status
Runlevel: default
gpm [ off ]
xdm [ off ]
acpid [ off ]
local [ off ]
named [ off ]
iptables [ off ]
lm_sensors [ off ]
coldplug [ off ]
net.eth0 [ off ]
sysklogd [ started ]
netmount [ off ]
Скрипт использованный для тестирования
#!/bin/bash
/usr/portage/scripts/bootstrap.sh &>/dev/null
emerge -e system &> /dev/null
for i in 1 2 3
do
a=`time emerge -e system &> /dev/null` && echo $a
done
mv /etc/make.conf /etc/make.conf.old
cp /root/make.conf /etc/make.conf
emerge -e system &>/dev/null
for i in 1 2 3
do
a=`time emerge -e system &> /dev/null` && echo $a
done
exit 0
Тестирование проводилось в 1ой консоли, все другие были не активны, проводилось трижды для каждой опции.
Установка производилась с 1ой стадии для AMD64.Тарбол распаковывался на раздел с Reiserfs, после чего распаковывалось древо портежей, далее переход в chroot, далее запускался скрипт с выводом в файл.
А вот и собственно результаты.
Код: Выделить всё
cat /root/test
Опция -O2
real 129m31.854s
user 90m23.632s
sys 32m55.408s
real 128m24.604s
user 89m54.499s
sys 32m8.235s
real 129m23.452s
user 89m35.652s
sys 32m43.923s
Опция -O3
real 122m56.979s
user 87m26.233s
sys 32m14.798s
real 123m3.994s
user 87m25.092s
sys 32m19.702s
real 123m14.847s
user 87m26.700s
sys 32m24.891s
Конфиг ядра находиться в прикрепленном файле.
Разница не такая уж и большая, выйгрыш от использования опции - O3 составил всего 5 минут , по сравнению с -O2, учитывая общее время т.е. 2 час это не так уж и много. Вобщем выводы делать вам, я постарался в этом вам помочь. Если у ког есть какие предложения то предлагайте. На данный момент планирую тестирование вот с этими опциями
Код: Выделить всё
#CFLAGS="-O2 -march=k8 -fforce-addr -funit-at-a-time -fomit-frame-pointer -frename-registers -fprefetch-loop-arrays"
CFLAGS="-march=k8 -O3 -fforce-addr -funit-at-a-time -fomit-frame-pointer -frename-registers -fprefetch-loop-arrays -ftracer -funswitch-loops -ffast-math"
CHOST="x86_64-pc-linux-gnu"
#CXXFLAGS=" -fvisibility-inlines-hidden -frepo"
CXXFLAGS="${CFLAGS}"
#LDFLAGS="-O1 -Wl,--enable-new-dtags -Wl,--sort-common -s"
Жду ваших пожеланий и предложений.