LINUX.ORG.RU

USE флаги «static,static-libs» в генту

 , , , ,


0

1

Уважаемые форумчане.После двух дней компиляции и редактированием конфигов установил себе, вполне работающую,двухъядерную машину.НО появилась 1 проблема - система заметно тормозит, чем в арче.Я прописал в «make.conf» USE=static static-libs.Может быть из-за него система тормозит???????????
Кстати на всякий случай привожу сюда свой «make.conf»

# These settings were set by the catalyst build script that automatically
# built this stage.
# Please consult /usr/share/portage/config/make.conf.example for a more
# detailed example.
#-------------------------------------------------------------------------------------------------------------------------
CFLAGS="-march=core2 -mcpu=core2 -O2 -pipe -msse4.1 -mcx16 -mno-sse3 --param l1-cache-size=32 --param l2-cache-size=6144
-fomit-frame-pointer"
CXXFLAGS="${CFLAGS}"
CHOST="x86_64-pc-linux-gnu"
MAKEOPTS="-j5"
FEATURES="ccache fail-clean candy parallel-fetch parallel-install metadata-transfer"
ACCEPT_KEYWORDS="amd64 ~amd64"
ACCEPT_LICENSE="*"
EMERGE_DEFAULT_OPTS="-av --jobs=2 --keep-going --alphabetical"
#-------------------------------------------------------------------------------------------------------------------------
LINGUAS="en ru"
VIDEO_CARDS="nvidia"
INPUT_DEVICES="evdev keyboard mouse"
CCACHE_SIZE="8G"
GRUB_PLATFORMS="pc"
#-------------------------------------------------------------------------------------------------------------------------
CCACHE_DIR="/build/ccache"
DISTDIR="/build/distfiles"
PKGDIR="/build/packages"
PORTAGE_TMPDIR="/tmp"
#-------------------------------------------------------------------------------------------------------------------------
SYSTEM="static static-libs python networkmanager zeroconf zlib holidays oss dhcp gpm fbcon nls symlink usb unicode videos cups foomaticdb dbus openrc ssse3 mmx sse4_1 sse sse2"
SYSTEM_NOT_USE="-bluetooth -gps -gnome"
MULTIMEDIA="a52 aac aalib mad matroska pdf subversion theora mng mp3 mpeg cdr dvdr wavpack gphoto2 ipod css djvu ffmpeq flac dvd encode"
OTHER="bzip2 geoip gzip lzo icq"
USE="${SYSTEM} ${SYSTEM_NOT_USE} ${MULTIMEDIA} ${OTHER}"
#-------------------------------------------------------------------------------------------------------------------------
GENTOO_MIRRORS="http://gentoo.bloodhost.ru/ http://mirror2.corbina.ru/gentoo-distfiles/ http://gentoo.wheel.sk/
 http://gentoo-euetib.upc.es/mirror/gentoo/ http://ftp.df.lth.se/pub/gentoo/"
SYNC="rsync://rsync.ru.gentoo.org/gentoo-portage"

Может быть из-за него система тормозит???????????

Нет, не может!!!!!!!!!!

CFLAGS наркоманские

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

Не понял «ССЗБ».В смысле: монолитно собери.?????
P.S. Я начинающий гентушник поэтому задаю глупые вопросы))))

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

Тк мой процессор не подерживает sse3 , поэтому отключил их(проверял с помощью «cat /proc/cpuinfo»).
mcpu это синоним mtune

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

Тк мой процессор не подерживает sse3 , поэтому отключил их(проверял с помощью «cat /proc/cpuinfo»).

4.2
пруф - грепни сабж на pni :3
курни малость http://optimization.hardlinux.ru/?page_id=34

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

mcpu это синоним mtune

я тебя спросил зачем устаревший использовал, не?
и вообще - по умолчанию mtune равен march, если не задано иное значение
короче, ссылку дал, кури

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

Нагуглил и узнал,что благодаря «статика» производительность повышается, поэтому прописал их.Тк библиотеки встраиваются в программы и соотвественно запуск будет быстрым.

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

и вообще - по умолчанию mtune равен march, если не задано иное значение


Не знал!

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

а что не понятно?

 grep pni /proc/cpuinfo
по ссылке сходил?
там же написано про sse3

megabaks ★★★★
()

какой у тебя процесор?

CFLAGS="-march=core2 -mcpu=core2 -O2 -pipe -msse4.1 -mcx16 -mno-sse3 --param l1-cache-size=32 --param l2-cache-size=6144

-fomit-frame-pointer"

поменяй этот ужас на

"-march=native -mtune-generic -O2 -pipe"

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

Тк мой процессор не подерживает sse3 , поэтому отключил их(проверял с помощью «cat /proc/cpuinfo»).

Проверь еще раз. В твоем процессоре есть поддержка pni: это и есть sse3 http://ru.wikipedia.org/wiki/SSE3

И вообще убери все эти «тюнилки» компилятора в CFLAGS, оставь только march . Особенно если ты начинающий. Там 10000 нюансов с этими всеми флагами.

По USE флагам: ты можешь обосновать зачем тебе каждый флаг? Особенно такие как foomaticdb, python, zeroconf ? Если ты не знаешь как будешь использовать конкретный функционал или хотя бы не уверен - не трогай. В профиле (ты ведь его установил, да?) уже есть большинство из того, что тебе нужно. Поверь, если системе будет чего-то нехватать, она сама тебе об этом скажет.

P. S. Это касается и флагов static и static-libs .

Kroz ★★★★★
()

После двух дней компиляции

Или прекрати собирать кеды/гномы/прочее говно, либо купи уже новый компьютер. Я на фре всё (clisp/sbcl/X/stumpwm/firefox/VirtualBox/gimp/maxima/mpd/evince/mplayer/world/kernel) за полдня собираю

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

Настройл cflags :

CFLAGS="-march=core2 -O2 -pipe -msse4.1 -mcx16 --param l1-cache-size=30 --param l2-cache-size=6000 -fomit-frame-pointer"

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

перейду на фряху)))

Абсолютно побарабану, где компилять - на фряке или в генте. Я про то, что 2 дня там собирать нечего

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

Я понял,что «sse3» надо всегда использовать.Или я не прав??????

Компилятор сам знает, какие инструкции твой код поддерживает, нефиг отключать чего-либо вручную.

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

Не используй ничего, если не уверен. В gcc мульён опций и смысла их использовать нет. Вот это не используй, sse всё равно будет использоваться. Безо всяких опций gcc голое x87 gcc у меня не использует.

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

Не стесняйся читать маны:

-mfpmath=unit Generate floating point arithmetics for selected unit unit. The choices for unit are: 387

Use the standard 387 floating point coprocessor present majority of chips and emulated otherwise. Code compiled with this option will run almost everywhere. The temporary results are computed in 80bit precision instead of precision specified by the type resulting in slightly different results compared to most of other chips. See -ffloat-store for more detailed description. This is the default choice for i386 compiler. sse

Use scalar floating point instructions present in the SSE instruction set. This instruction set is supported by Pentium3 and newer chips, in the AMD line by Athlon-4, Athlon-xp and Athlon-mp chips. The earlier version of SSE instruction set supports only single precision arithmetics, thus the double and extended precision arithmetics is still done using 387. Later version, present only in Pentium4 and the future AMD x86-64 chips supports double precision arithmetics too. For the i386 compiler, you need to use -march=cpu-type, -msse or -msse2 switches to enable SSE extensions and make this option effective. For the x86-64 compiler, these extensions are enabled by default.

The resulting code should be considerably faster in the majority of cases and avoid the numerical instability problems of 387 code, but may break some existing code that expects temporaries to be 80bit.

This is the default choice for the x86-64 compiler.

Both, ясен пень, опция просто говно.

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

Пожалуйста, прочти ман:

-march=cpu-type Generate instructions for the machine type cpu-type. The choices for cpu-type are the same as for -mtune. Moreover, specifying -march=cpu-type implies -mtune=cpu-type.

Тебе советую убрать всё и оставить -O2. gcc не дурак и сам всё сделает, более того, у этих опций есть значение 'native'. Используй его, если не уверен.

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

хз - умвр

Может ограничения на IP? У меня финский.

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

Тогда не жалуйся, что твой комп стоит дорого. Возьми в кредит, бле%ть ;)

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

я поклонник штеуда

А, ты из этих.. Ну тогда продай почку, купи i7-3970X

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

Но я хочу узнать какие опции gcc выставляет при native.

For what purpose? К тому же, как я понимаю, это сама по себе самодостаточная опция, а не как -Ox, которые влекут за собой кучу других.

Да и в конце концов, сделай на бинарнике objdump и посмотри, чем оптимизированный код лучше неоптимизированного. Для тебя это не проблема, ведь так?

Не понимаю, чего ты хочешь добиться. Прироста 1% производительности? Зачем это тебе?

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