Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
SU und Optimierungen
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

Goto page Previous  1, 2, 3  
Reply to topic    Gentoo Forums Forum Index Deutsches Forum (German)
View previous topic :: View next topic  
Author Message
c07
Veteran
Veteran


Joined: 25 Oct 2002
Posts: 1091

PostPosted: Mon Oct 20, 2003 10:25 pm    Post subject: Reply with quote

hoschi wrote:
deswegen nochmal:
wurde dort oben mit sse2 kompiliert?

Probier es halt einfach mit was aus, wo es einen Unterschied macht:
Code:
~/tmp $ echo "int main() { return 9.9 * rand(); }" > t.c
~/tmp $ gcc -O3 -march=pentium4 -o a.out t.c
~/tmp $ gcc -O3 -march=pentium4 -mno-sse2 -o b.out t.c
~/tmp $ diff a.out b.out
Files a.out and b.out differ
Back to top
View user's profile Send private message
deepthought
Guru
Guru


Joined: 04 Apr 2003
Posts: 321
Location: icbm://5131''N:0710''E

PostPosted: Tue Oct 21, 2003 3:27 pm    Post subject: Reply with quote

Donnergurgler wrote:
Ich würde den CFLAGS noch "-s" hinzufügen.

man gcc:
-s Remove all symbol table and relocation information from the exe-
cutable

Meine Flags:
CFLAGS="-s -march=k6-3 -O2 -pipe -m3dnow -mmmx"
CXXFLAGS="${CFLAGS}"

Just my 2 zsents.


Das ist (für alles, was mit emerge gebaut wird) überflüssig. portage/emerge entfernen sowieso alle Debug-Symbole aus dem Objektcode (es rauscht als "stripping <irgendwas" an einem vorbei). Man kann das Gleiche auch mit
Code:
strip --strip-debug

erreichen.

Viele Grüße,
Alexander
_________________
Out of loyalty to its disregarded comrades, this message feels free to ignore the reader.
Registered Linux User #317705
Back to top
View user's profile Send private message
hoschi
Advocate
Advocate


Joined: 19 Jul 2003
Posts: 2517
Location: Ulm, Germany, Europe

PostPosted: Tue Oct 21, 2003 4:43 pm    Post subject: Reply with quote

c07 wrote:
hoschi wrote:
deswegen nochmal:
wurde dort oben mit sse2 kompiliert?

Probier es halt einfach mit was aus, wo es einen Unterschied macht:
Code:
~/tmp $ echo "int main() { return 9.9 * rand(); }" > t.c
~/tmp $ gcc -O3 -march=pentium4 -o a.out t.c
~/tmp $ gcc -O3 -march=pentium4 -mno-sse2 -o b.out t.c
~/tmp $ diff a.out b.out
Files a.out and b.out differ


er gibt mir nach diff keine antwort, sind die datein damit gleich :D

übrigens: danke für den genialen tipp
_________________
Just you and me strogg!
Back to top
View user's profile Send private message
c07
Veteran
Veteran


Joined: 25 Oct 2002
Posts: 1091

PostPosted: Tue Oct 21, 2003 4:54 pm    Post subject: Reply with quote

Wenn die Dateien gleich sind, kann das natürlich auch nur heißen, dass gcc sowieso keine Veranlassung gesehen hat, SSE2 zu benutzen. Deshalb in diesem Fall -msse2 und -mno-sse2 gegenchecken und gegebenenfalls die Testdatei ein bisschen komplizierter machen, bis es da einen Unterschied gibt. Das geht natürlich analog mit allen anderen Optionen.
Back to top
View user's profile Send private message
foxtrott
n00b
n00b


Joined: 23 Oct 2003
Posts: 2

PostPosted: Thu Oct 23, 2003 10:58 pm    Post subject: Reply with quote

Ich möchte mein System von stage1 aus komplett selber ertstellen.
Nun haben mich die Diskussionen hier über die CFLAGS ein wenig verunsichert, welche ich nehmen soll. Also habe ich mal in ein fertiges stage2 bzw. stage3 Archiv, das man sich von www.gentoo.org herunterladen kann, angeschaut. In der dortigen make.conf werden die CFLAGS so angegeben:
Code:
CFLAGS="-O3 -march=pentium4 -funroll-loops -fprefetch-loop-arrays -pipe"

Und da das runterladbare stage-Archiv ausdrücklich auf stbilität konfiguriert wurde, kann ein O3 doch nicht so verkehrt sein, oder?

Meine geplanten CFLAGS sind:
Code:
CFLAGS="-O3 -march=pentium4 -funroll-loops -fprefetch-loop-arrays -fomit-frame-pointer -falign-functions=4 -fforce-addr -pipe"


Irgendwelche Einwände, oder Tips von Leute die mehr Erfahrung mit Gentoo haben als ich?

mfg aus MeckPom
Back to top
View user's profile Send private message
hoschi
Advocate
Advocate


Joined: 19 Jul 2003
Posts: 2517
Location: Ulm, Germany, Europe

PostPosted: Sun Feb 22, 2004 12:11 pm    Post subject: Reply with quote

ich würde die nehmen, erhebe aber keine garantie:

CFLAGS="-O2 -march=pentium4 -fomit-frame-pointer -pipe"

O2=kleinerer code (da freut sich der cpu-cache), kürzerer compiler zeit, theoretische chance auf weniger compiler-fehler
O3=braucht länger zum kompilieren, soll manchmal leicht instabil werden können (ist glaub ich sehr subjektiv), größerer code

-march=pentium4 x86-686 +mmx +sse +sse2

funroll und pipe sind einfach, äh, "beliebt" :D


-funroll-all-loops, wäre noch erwehnenswert, manachmal hilfts, aber normaller weiße wird der code nur größer...
das problem beim selber kompilieren ist, das fast jedes packet eigentlich andere settings benötigen würde (die müsste man aber erst wissen und lernen und zweitens ständig ändern) :?

edit: bissel spät dran :roll:
_________________
Just you and me strogg!
Back to top
View user's profile Send private message
arkanlor
n00b
n00b


Joined: 06 Jan 2004
Posts: 30

PostPosted: Mon Feb 23, 2004 11:01 am    Post subject: Reply with quote

hatte mit -O3 und gcc 3.2.3 probleme, segfault bei xchat-2. dito bei cdrecord und anderen progs.
Back to top
View user's profile Send private message
gentoo_neuling
n00b
n00b


Joined: 20 Feb 2004
Posts: 32

PostPosted: Tue Feb 24, 2004 2:06 pm    Post subject: Reply with quote

hi,

ich bin immernoch am sourcen zusammenziehn werde aber hoffentlich am we anfangen können mit installation.
habe unter
http://gentoo.slinky.surrey.sfu.ca/cflagcollect/results.php
ne liste gefunden mit optimierungen.
kann mir jemand sagen wie sinnvoll unten das ist ?

Code:

-march=athlon-xp -mmmx -msse -m3dnow -freorder-blocks -fprefetch-loop-arrays -O3 -pipe


prozessor ist athlon xp 2100+
besser -O2?

ich wollte mein erstes gentoo nich gleich unstabil haben, deshalb frag ich lieber noch mal nach
Back to top
View user's profile Send private message
amne
Bodhisattva
Bodhisattva


Joined: 17 Nov 2002
Posts: 6378
Location: Graz / EU

PostPosted: Tue Feb 24, 2004 3:17 pm    Post subject: Reply with quote

Ich fürchte, keiner wird dir mit 100%iger Sicherheit sagen können, ob deine Flags immer funktionieren werden. Entweder du probierst es mal aus :twisted: oder du hälst dich an die sicheren Flags (siehe Link auf Seite 1 dieses threads) von freehackers.org. Mit denen treten meines Wissens wirklich nur ganz selten Probleme auf.
Back to top
View user's profile Send private message
Gekko
l33t
l33t


Joined: 29 Oct 2002
Posts: 773

PostPosted: Tue Feb 24, 2004 5:07 pm    Post subject: Reply with quote

Dem kann ich mich hier nur voll und ganz anschliessen,
mit den Flags von Freehackers hatte ich noch nie Probleme.
Ich habe mehrere Stage1 auf verschiedenen Architekturen hinter mir, und nur bei einem Rechner Probleme gehabt - das allerdings aufgrund eines defekten Hauptspeichermoduls.

LG, Gekko
Back to top
View user's profile Send private message
hoschi
Advocate
Advocate


Joined: 19 Jul 2003
Posts: 2517
Location: Ulm, Germany, Europe

PostPosted: Tue Feb 24, 2004 11:14 pm    Post subject: Reply with quote

CHOST="i686-pc-linux-gnu"

# Host and optimization settings
# ==============================
#
#......
........
.........
#
# Decent examples:
#
#CFLAGS="-mcpu=athlon-xp -O3 -pipe"
CFLAGS="-march=athlon-xp -O2 -pipe -fomit-frame-pointer"

# If you set a CFLAGS above, then this line will set your default C++ flags to
# the same settings.
CXXFLAGS="${CFLAGS}"


bei cxxflags brauch ich ja nichts mehr wegen $, habs nimmer ganz in erinnerung (doch schon länger her :oops: )

edit:
wie blöd kann man sein, da stehts doch :lol:
_________________
Just you and me strogg!
Back to top
View user's profile Send private message
gentoo_neuling
n00b
n00b


Joined: 20 Feb 2004
Posts: 32

PostPosted: Wed Feb 25, 2004 8:55 am    Post subject: Reply with quote

jau dann werd ich erstmal die experimente lassen.
freehackers ist im moment tot aber vieleicht kommen die ja im laufe des tages wieder on

mfg gentoo_neuling
Back to top
View user's profile Send private message
Michael_B
n00b
n00b


Joined: 04 Mar 2004
Posts: 9
Location: Germany

PostPosted: Sun Mar 07, 2004 6:32 pm    Post subject: Reply with quote

Es gibt nicht "die besten Flags ueberhaupt".

Ich habe af meinem Via C3 Nehemiah zum Beispiel weder -O2 noch -O3 im Einsatz, sonder -Os. Das gibt den kleineren Code und daher bei so wenig Cache das insgesamt schnellere Programm. Mit -O2 ist der Unterschied sehr gering, aber bei -O3 ist alles wesentlich langsamer. Ursache dabei ist das loop unrolling. Dabei kommt es dann halt oefter mal vor, dass die "ausgerollte" Schleife nicht mehr komplett in den Cache passt. Das kostet dann natuerlich jede Menge Strafzyklen.

Also, immer den Prozessor im Auge behalten, wenn man ueber die Flags nachdenkt. Bei kleinerem Cache eher an -Os oder -O2 denken. Bei Mega-Caches ist aber wohl -O3 die erste Wahl.
_________________
=======================
Via Epia M10000 Nehemiah
Gentoo 1.4 mit Kernel 2.4.24-epia1
Back to top
View user's profile Send private message
sarahb523
Guru
Guru


Joined: 10 Mar 2004
Posts: 423
Location: Berlin

PostPosted: Wed Mar 17, 2004 8:04 pm    Post subject: suche flags Reply with quote

tja leider ist mein system jetzt schon fertig kompiliert und ich hab doch sowas wie die flags vergessen :cry:

Ich habe von der ganzen optimierung noch nich so den plan. Ich denke das ich bei meinem Rechner noch einiges rausholen kann.

cpu: Dual 433 MHz Celeron (die alten celerons)

Kann mir jemand sagen wie dazu das --march=? flag ist und wie man generelle smp unterstützung reinkompiliert?

thx
sarah
[/b][/quote]
Back to top
View user's profile Send private message
reyneke
Guru
Guru


Joined: 09 Jan 2004
Posts: 542
Location: Augsburg / Germany

PostPosted: Fri Apr 09, 2004 3:50 pm    Post subject: Reply with quote

Hi,
bin auch eher Noob, was CFLAGS angeht, deshalb würde mich interessieren, ob diese Flags für einen "Mobile Intel(R) Pentium(R) 4 - M CPU 2.20GHz" (/proc/cpuinfo) Sinn machen:
Quote:

CFLAGS="-march=pentium3 -mcpu=pentium4 -O2 -finline-functions -falign-jumps=5 -falign-loops=5 -falign-functions=64 -pipe"

Ich hab sie aus dem Howto von pi-cubic für seinen Toshiba-Lappie, der die gleiche CPU wie meiner haben dürfte. Bislang fahre ich eigentlich ganz gut damit, obwohl etwas Geschwindigkeit nicht schlecht wäre (allerdings nicht auf Kosten der Stabilität). Wäre es deshalb vielleicht besser, sich auf ein
Quote:

CFLAGS="-march=pentium3 -mcpu=pentium4 -O2|3 -pipe"

zu beschränken?

Ich nehme an, "-march=pentium4" ist noch immer nicht zu empfehlen?

Gruß,
reyneke.
Back to top
View user's profile Send private message
darksaidin
Apprentice
Apprentice


Joined: 04 Oct 2003
Posts: 150

PostPosted: Sat Apr 10, 2004 12:33 pm    Post subject: Reply with quote

Michael_B wrote:
Ich habe af meinem Via C3 Nehemiah zum Beispiel weder -O2 noch -O3 im Einsatz, sonder -Os. Das gibt den kleineren Code und daher bei so wenig Cache das insgesamt schnellere Programm.


Hast du das mal getestet? Wir sollten für die Uni vor kurzem ein paar Parameter vergleichen (gehörte zu einer Übung...) und was bei -Os rauskam war alles andere als schneller - wobei das natürlich nicht auf einem C3 war.
Wir hatten dazu ein simplen Primzahlgenerator geschrieben und der war mit -O etwa doppelt so schnell wie mit -Os. -O2 oder -O3 machten kaum messbare Unterschiede zu -O. Natürlich ist das kein sehr realitätsnaher Benchmark, aber trotzdem sollte das Ergebnis tendeziell richtig sein - zumindest für meine AthlonXp :D
Back to top
View user's profile Send private message
Stone
Guru
Guru


Joined: 11 Mar 2003
Posts: 352

PostPosted: Wed May 26, 2004 9:40 pm    Post subject: Reply with quote

kann mir mal wer kurz die unterschiede von Os, O2 und O3 erklären?
ich verwende -march=athlon-xp -Os -funroll-loops -pipe -fomit-frame-pointer.
cpu ist ein amd xp 1600+ palio kern
Back to top
View user's profile Send private message
sirro
Veteran
Veteran


Joined: 20 Jul 2003
Posts: 1472
Location: aachen.nrw.de.eu

PostPosted: Wed May 26, 2004 9:43 pm    Post subject: Reply with quote

Stone wrote:
kann mir mal wer kurz die Unterschiede von Os, O2 und O3 erklären?

:arrow: man gcc?
Back to top
View user's profile Send private message
ian!
Bodhisattva
Bodhisattva


Joined: 25 Feb 2003
Posts: 3829
Location: Essen, Germany

PostPosted: Sun Jun 06, 2004 4:55 pm    Post subject: Reply with quote

detached
_________________
"To have a successful open source project, you need to be at least somewhat successful at getting along with people." -- Daniel Robbins
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Deutsches Forum (German) All times are GMT
Goto page Previous  1, 2, 3
Page 3 of 3

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum