Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Cflags
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

Goto page Previous  1, 2  
Reply to topic    Gentoo Forums Forum Index Deutsches Forum (German)
View previous topic :: View next topic  
Author Message
Klaus Meier
Advocate
Advocate


Joined: 18 Apr 2005
Posts: 2363
Location: Bozen

PostPosted: Fri Sep 07, 2012 9:58 am    Post subject: Reply with quote

Also im Makefile für meinen Kernel steht -O2. Und den Prozessortyp stellt man doch auch ein. Also ich glaube nicht, dass da extrem viel zu holen ist.
Back to top
View user's profile Send private message
bell
Guru
Guru


Joined: 27 Nov 2007
Posts: 430

PostPosted: Fri Sep 07, 2012 11:24 am    Post subject: Reply with quote

Ich probiere mal die gentoo-sources mit "native" zu übersetzen. Danke für den Hinweis, ich mag auch mein System optimieren.
Laut einigen Forenbeiträgen reicht es vor dem Kompilieren die variablen KCFLAGS= und KCPPFLAGS zu exportieren.
Back to top
View user's profile Send private message
Beelzebub_
Apprentice
Apprentice


Joined: 21 May 2012
Posts: 256
Location: outside/todesstern-2.01

PostPosted: Fri Sep 07, 2012 12:03 pm    Post subject: Reply with quote

Ich habe mein System mal mit O3 übersetzt. Einen Geschwindigkeitsunterschied kann ich so nicht feststellen, da mein System eh schon sehr schnell ist. Aber ich freue mich das mein Arbeitsspeicher mehr genutzt ist. Da ich 12GB RAM habe sollte es kein Problem sein. Ich denke das -O3 von Vorteil ist, wenn man wenig Anwendungen offen hat und -Os bei vielen Sinn macht.
_________________
Ich habe keine Angst vorm Sterben, ich habe nur Angst ich habe nicht genug gelebt.
Back to top
View user's profile Send private message
Christian99
Veteran
Veteran


Joined: 28 May 2009
Posts: 1015

PostPosted: Fri Sep 07, 2012 12:42 pm    Post subject: Reply with quote

franzf wrote:
Christian99 wrote:
Ich hab ne ganze weile mal zen-sources verwendet, da gabs eine Option für march=native und ich glaube auf für O2. Ich hatte das aktiviert, und hatte (deswegen) nie Probleme.

Da bringst du mich auf was...
Kann sein dass ich das auch da gesehen hab (bzw. in den pf-sources) und nicht im vanilla... Bei mir hat es aber Probleme bereitet, drum hab ich das schnell wieder ausgemacht.
Hast du denn einen Performancesprung gespürt?


nun ja, sprung würd ich es nicht nennen. außerdem hab ich zu der auch noch den brainfuckscheduler verwendet, weswegen ich nicht sagen kann was von was kam, aber ein bisschen war es schneller hätte ich gedacht.
Aber ohne genaue messungen, nur persönlicher eindruck.

Beelzebub_ wrote:
Aber ich freue mich das mein Arbeitsspeicher mehr genutzt ist.


ähm, diese aussage ist ein bisschen komisch. wenn deine Programme mehr speicher brauchen, brauchen sie auch mehr Zeit um geladen zu werden. das würd ich jetzt nicht als optimierung bezeichnen.
Back to top
View user's profile Send private message
bell
Guru
Guru


Joined: 27 Nov 2007
Posts: 430

PostPosted: Fri Sep 07, 2012 1:21 pm    Post subject: Reply with quote

So, mein Kernel ist jetzt "native".
Als Benchmark habe ich
Code:
time seq 100000
genommen (mir ist nicht besseres Eingefallen).
vorher:
Code:
real   0m1.274s
user   0m0.085s
sys   0m0.180s

nachher
Code:
real   0m1.261s
user   0m0.057s
sys   0m0.117s

"system" und "user" sind also besser geworden. "real" ist das selbe. Wie kann man diese Zahlen deuten?
Back to top
View user's profile Send private message
Klaus Meier
Advocate
Advocate


Joined: 18 Apr 2005
Posts: 2363
Location: Bozen

PostPosted: Fri Sep 07, 2012 1:57 pm    Post subject: Reply with quote

Das besagt, dass dieser "Benchmark" von der Ausgabegeschwindigkeit deines Terminals bestimmt wird. Und egal was du machst, dies ist der limitierende Faktor.
Back to top
View user's profile Send private message
Treborius
Guru
Guru


Joined: 18 Oct 2005
Posts: 540
Location: Berlin

PostPosted: Fri Sep 07, 2012 2:02 pm    Post subject: Reply with quote

bell wrote:
So, mein Kernel ist jetzt "native".
Als Benchmark habe ich
Code:
time seq 100000
genommen (mir ist nicht besseres Eingefallen).
vorher:
Code:
real   0m1.274s
user   0m0.085s
sys   0m0.180s

nachher
Code:
real   0m1.261s
user   0m0.057s
sys   0m0.117s

"system" und "user" sind also besser geworden. "real" ist das selbe. Wie kann man diese Zahlen deuten?


grob übersetzt heisst das :
das program braucht zur ausführung immernoch genausoviel zeit (real)
aber es macht in der zeit weniger (sys + user)

seq ist dafür also völlig ungeeignet, komprimier den linux kernel, oder compilier ihn, das dürfe aussagekräftiger sein
_________________
System : Intel Core2 Quad Q6600
Back to top
View user's profile Send private message
Beelzebub_
Apprentice
Apprentice


Joined: 21 May 2012
Posts: 256
Location: outside/todesstern-2.01

PostPosted: Fri Sep 07, 2012 4:07 pm    Post subject: Reply with quote

Christian99 wrote:


Beelzebub_ wrote:
Aber ich freue mich das mein Arbeitsspeicher mehr genutzt ist.


ähm, diese aussage ist ein bisschen komisch. wenn deine Programme mehr speicher brauchen, brauchen sie auch mehr Zeit um geladen zu werden. das würd ich jetzt nicht als optimierung bezeichnen.



(Die Zeit von der SSD in den RAM ist nicht so gravierend.
Wenn sie geladen sind, arbeiten sie schneller. =)
Das ist die Optimierung.
_________________
Ich habe keine Angst vorm Sterben, ich habe nur Angst ich habe nicht genug gelebt.
Back to top
View user's profile Send private message
Christian99
Veteran
Veteran


Joined: 28 May 2009
Posts: 1015

PostPosted: Sat Sep 08, 2012 1:00 am    Post subject: Reply with quote

Beelzebub_ wrote:

Wenn sie geladen sind, arbeiten sie schneller. =)


wie kommst du da drauf? weil sie mehr platz im speicher brauchen?
Back to top
View user's profile Send private message
Beelzebub_
Apprentice
Apprentice


Joined: 21 May 2012
Posts: 256
Location: outside/todesstern-2.01

PostPosted: Sat Sep 08, 2012 10:51 am    Post subject: Reply with quote

Weil der Code optimiert ist?
_________________
Ich habe keine Angst vorm Sterben, ich habe nur Angst ich habe nicht genug gelebt.
Back to top
View user's profile Send private message
mrueg
Developer
Developer


Joined: 08 Jul 2012
Posts: 30

PostPosted: Sat Sep 08, 2012 11:26 am    Post subject: Reply with quote

Lasst mich kurz raten, bei all euren "Benchmarks" habt ihr noch ein DE nebenbei laufen? Glückwunsch, damit ist das Ding höchstens für die eigene Psyche brauchbar.

Wenn ihr unbedingt auf Optimierung aus seid, schaut euch lieber http://clang.llvm.org/ an, kompiliert damit rum und produziert nebenbei ein paar sinnvolle Bugreports als irgendwelche kruden CFLAG Experimente.
Back to top
View user's profile Send private message
Klaus Meier
Advocate
Advocate


Joined: 18 Apr 2005
Posts: 2363
Location: Bozen

PostPosted: Sat Sep 08, 2012 1:06 pm    Post subject: Reply with quote

Es artet hier langsam in einen peinlichen Kindergarten aus. Es werden "Benchmarks" gemacht, wo man nur noch mit dem Kopf schütteln kann. Ein Windowsprogramm unter wine? Textausgabe in der Konsole? Es werden die Programme aufgebläht, damit der Speicher ausgelastet wird, weil ja die SSD so unglaublich schnell ist? Meine Güte, der langsamste RAM ist immer noch um den Faktor 1000 schneller als die schnellste SSD.

Bei aktuellen Desktopsystemen sind die Ladezeiten bei 99% der Anwendungen der limitierende Faktor. Als nächstes kommen die Linkzeiten. Deshalb bringt ja eine SSD mehr als hundert neue Cflags. Und das bremst man dann wieder aus, indem man die Anwendungen absichtlich aufbläht? lto wird dann der nächste Schritt sein, aber das ist noch nicht so weit. Dann gibt es im portage so etwas wie app-benchmark.

Und dann macht euch mal Gedanken über eure Messgenauigkeit. 4,5% Steigerung werden als großer Erfolg gefeiert und ich sage mal, die Messgenauigkeit ist nicht mal 10%. Wisst ihr, was Messgenauigkeit ist? Zu jedem Messwert gehört eine Angabe seiner Genauigkeit. Ich musste in meinem Studium mal so etwas angeben. Also, z.B, 10,5 plus/minus 0,2. Sollte ich da 10,5 plus/minus 2 geschrieben haben, hätte man es mir um die Ohren gehauen bekommen. Denn bei einer Fehlerbreite von 20% ist die 0,5 eine nicht vorhandene Genauigkeit. Es hätte also 10 plus/minus 2 heißen müssen. Ihr arbeiten auf einem Mulituser/Multitaskingsystem, wo viele Anwendungen im Hintergrund laufen. Ist es garantiert, dass da immer die gleichen liefen? Und ansonsten, wenn ich z.B. meinen Kernel übersetze, das ist beim ersten Mal immer am langsamsten. Warum? Weil da alles geladen werden muss. Und es beim nächsten Mal im Filecache ist.

Das ist inzwischen wie bei PC-Blöd. 100 000 Tips für ein schnelleres Windows. Glaubt ihr, sowohl bei Microsoft als auch bei Gentoo wird ein System ausgeliefert, was man absichtlich so langsam macht, dass man es mit drei Klicks merkbar schneller bekommt? In der c't werden ja öfters mal Tuningtools für Windows getestet. Ergebnis: Die besten haben gar nichts gemacht, weil sie nicht mal Administratorrechte hatten und deshalb nichts verändern konnten. Jedes Programm, was irgendetwas verändert hat, hat das System verlangsamt.
Back to top
View user's profile Send private message
Beelzebub_
Apprentice
Apprentice


Joined: 21 May 2012
Posts: 256
Location: outside/todesstern-2.01

PostPosted: Sat Sep 08, 2012 3:20 pm    Post subject: Reply with quote

Klaus Meier wrote:
Es artet hier langsam in einen peinlichen Kindergarten aus. Es werden "Benchmarks" gemacht, wo man nur noch mit dem Kopf schütteln kann. Ein Windowsprogramm unter wine? Textausgabe in der Konsole? Es werden die Programme aufgebläht, damit der Speicher ausgelastet wird, weil ja die SSD so unglaublich schnell ist? Meine Güte, der langsamste RAM ist immer noch um den Faktor 1000 schneller als die schnellste SSD.


Ich habe im betrieb fast keinen Zugriff auf meine SSD, weil ich beim Systemstart alle wichtigen/oft genutzten Programme in meinen 1000x schnelleren RAM laden lasse.

//Edit: Aber ich denke ein fatalerer Trichter ist der CPU cache. Weshalb Os eigentlich auch für moderne CPUS gut seien müsste.
_________________
Ich habe keine Angst vorm Sterben, ich habe nur Angst ich habe nicht genug gelebt.
Back to top
View user's profile Send private message
mrueg
Developer
Developer


Joined: 08 Jul 2012
Posts: 30

PostPosted: Sun Sep 09, 2012 1:23 am    Post subject: Reply with quote

Beelzebub_ wrote:

//Edit: Aber ich denke ein fatalerer Trichter ist der CPU cache. Weshalb Os eigentlich auch für moderne CPUS gut seien müsste.


Wenn du eingebettete Systeme zu Systemen mit moderner CPU zählst, hast du vllt. Recht. Aber ich vermute dein Desktop mit der SSD zählt nicht wirklich dazu.

Du kannst entweder Laufzeit oder Fläche (Speicherplatz) optimieren und -Os tut letzteres.
Es aktiviert nämlich alle Flags die mit -O2 auch aktiviert werden, ohne die, die die Größe des Kompilats erhöhen.
siehe auch: http://gcc.gnu.org/onlinedocs/gcc/Optimize-Options.html
Ergo: -Os ist im Normalfall sogar langsamer* als -O2.

Übrigens zu -O2 vs. -O3 hier ein etwas älterer (noch auf gcc-3 bezogener) Artikel:
http://freecode.com/articles/gcc-myths-and-facts
Back to top
View user's profile Send private message
Gentoo-kid
Tux's lil' helper
Tux's lil' helper


Joined: 14 Oct 2009
Posts: 83
Location: Frankfurt

PostPosted: Wed Sep 12, 2012 4:00 pm    Post subject: Reply with quote

Man sollte sich genau ueberlegen, was man mit dem Rechner anstellt:
Welche Programme man zb oft in den Speicher laed und wieder beendet,
was die Programme genau machen, ob und wie sie rechnen.
Welche Programme man zb ueber Nacht rechnen laesst, waehrend der Rechner sonst nichts tut
und wie er die Rechneungen macht, wieviel Speicher er braucht zb, wie oft welche Schleifen durchlaufen werden.

Nur dann kann man abschaetzen, ob ein "optimierter" Code was bringt und wie man ihn optimieren muss.

Soweit ich abschaetzen kann, bringt das Ganze ueberhaupt erst was auf Rechnern,
die fuer einen ganz speziellen Anwendungsbereich gedacht sind.
Und dann sollte man die Flags fuer jede binary individuell anpassen.
Global definierte flags moegen bei einer Anwendung Vorteile bringen, bei der Anderen evtl Nachteile.
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
Page 2 of 2

 
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