Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Verständnisfrage CLFAG CHOST
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

 
Reply to topic    Gentoo Forums Forum Index Deutsches Forum (German)
View previous topic :: View next topic  
Author Message
sessa
n00b
n00b


Joined: 06 Apr 2008
Posts: 6

PostPosted: Sun Apr 06, 2008 5:01 pm    Post subject: Verständnisfrage CLFAG CHOST Reply with quote

Hallo,

ich bin gentoo newbie und lese bereits einiger Zeit nur hab ich noch immer nicht zu 100 % verstanden wie die beiden genau zusammenhängen.

Wenn ich das richtig verstanden habe ist wird mit der CLFAG der Compiler angewiesen welche Optimierungen genutzt werden.
z.B. CFLAGS="-Os -march=athlon64 -pipe -fomit-frame-pointer"
Was ja bedeutet das alle Athlon64 Optimierungen genutzt werden und wenn dann die CHOST
z.B. CHOST="i586-pc-linux-gnu"
so aussieht, die 32 Bit Architektur verwendet wird und auf dem I586 läuft aber auch 3DNOW 3DNOWEXT SSE SSE2 unterstützt wird.

Somit kann ich doch nach erfolgreichem neukompilieren der Quellen ohne weiteres den CHOST auf pentium-m (ist der mit den meisten funktionen und halt SSE2) ändern und muss nur emerge -avt gcc und emerge -avt python ausführen.

Hab ich das so richtig verstanden und wenn ja bringt das überhaupt einen Geschwindigkeitsvorteil?

Danke im voraus für die Hilfe.

Gruß sessa
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: Sun Apr 06, 2008 5:10 pm    Post subject: Reply with quote

CHOST sollte man eigentlich gar nicht ändern.
http://www.gentoo.org/doc/en/change-chost.xml wrote:
Changing the CHOST is a big issue that can seriously screw up your system


Wenn du auf Pentium M wechseln willst, könntest du zuerst auf -march=i686 gehen und dann wenn der Pentium M eingebaut ist die entsprechende march setzen.
Back to top
View user's profile Send private message
Max Steel
Advocate
Advocate


Joined: 12 Feb 2007
Posts: 2272
Location: My own world! I and Gentoo!

PostPosted: Sun Apr 06, 2008 5:14 pm    Post subject: Reply with quote

Moment, die CHost sollte man nie ändern, sie beschreibt die Architektur des Systems.
Was du mit auf pentium-m ändern womöglich meinst ist die CFlag Variable. und da -march, allerdings macht es auch PRobleme wenn die CPU ein AMD Athlon 64.

Also CHost nicht anfassen, außer du weißt was du tust und [1] beachtest.

Allerdings wäre es viel einfacher eine neuinstallation zum ändern der CHost zu machen.

die CFlags kannst du immer ändern, auch hier gibt es sicheres und unsicheres wobei ich dashier empfehle [2]

CHost beschreibt die Architektur des Systems

CFlags dagegen wie du schon richtig beschriebst die Optimierungen für den Compiler die er anwendet, es gibt Optimierungen die bringen etwas, schon allein hier im deutschen Teil gibt es massig Diskussionsthreads darüber.
Wobei ich für einen Athlon 64 dashier empfehle:
Code:
-O2 -march=athlon64 -pipe -fomit-frame-pointer


Wenn du auf einen Pentium-m wechselst (warum auch immer) dann würde ich erst auf i686 runter gehen mit den Optimierungen und nach dem einbau, bzw, umzug aufs Laptop oder sonstwas auf die aktuelle CPU upgraden.
Laut [2]
Code:
-march=pentium-m -O2 -pipe -fomit-frame-pointer


Aber da würde ich immer selber nachschauen und auch cat /proc/cpuinfo zu rate ziehen.

[1] http://gentoo-wiki.com/HOWTO_change_CHOST_relatively_safely
[2] http://gentoo-wiki.com/Safe_Cflags

PS: Da war einer schneller.


//Endgültige Fassung!
_________________
mfg
Steel
___________________

Heim-PC: AMD Ryzen 5950X, 64GB RAM, GTX 1080
Laptop: Intel Core i5-4300U, 16GB RAM, Intel Graphic
Arbeit-PC: Intel i5-1145G7, 16GB RAM, Intel Iris Xe Graphic (leider WSL2)


Last edited by Max Steel on Sun Apr 06, 2008 5:27 pm; edited 2 times in total
Back to top
View user's profile Send private message
sessa
n00b
n00b


Joined: 06 Apr 2008
Posts: 6

PostPosted: Sun Apr 06, 2008 5:18 pm    Post subject: Reply with quote

wow schnelle antwort

@ sirro
Ok, das hatte ich auch gelesen, nur ging es mir darum, wenn ich eh alle Packete mit march-Athlon64 erstellt hab und bei der Architektur bei 32 bit bleiben möchte kann ich doch auch den CHOST ändern. i586 Dient dann nur noch zur abwärtskompatibilität und der pentium-m ist der 32 Bit Prozessor ist der am meisten funktionen meines Athlon64 hat.

@ max steel
Wenn ich das jetzt richtig verstanden hab ist der CHOST immer der kleinste gemeinsame nenner und die CFLAGS sind Erweiterungen. Dann brauch ich auch den CHOST nicht ändern wenn eh das vom CFLAGS immer mit dabei ist.

Ich dachte nur es wäre für die Performance besser wenn ich eh mit den CFLAGS kompiliere den CHOST mit den meisten Erweiterungen nehme die der Ahtlon64 eh alle integriert hat. Die Anleitung hatte ich gelesen, ich hab nur nirgends eine Erklärung gefunden wie beide zusammenhängen. nach ca. 2,5 Std. Suche dachte ich, ich frag einfach.

Danke und gruß sessa


Last edited by sessa on Sun Apr 06, 2008 5:29 pm; edited 1 time in total
Back to top
View user's profile Send private message
s.hase
Apprentice
Apprentice


Joined: 19 Nov 2004
Posts: 293

PostPosted: Sun Apr 06, 2008 5:25 pm    Post subject: Reply with quote

sessa wrote:

Ok, das hatte ich auch gelesen, nur ging es mir darum, wenn ich eh alle Packete mit march-Athlon64 erstellt hab und bei der Architektur bei 32 bit bleiben möchte kann ich doch auch den CHOST ändern. i586 Dient dann nur noch zur abwärtskompatibilität und der pentium-m ist der 32 Bit Prozessor ist der am meisten funktionen meines Athlon64 hat.

Wozu möchtest Du den die CFLAGS ändern? Wenn Du einen Athlon64 hast lass das so, was willst Du dann mit CFLAGS für nen Pentium-M? Der CHOST sollte bei Dir außerdem eigentlich so aussehen:
Code:

CHOST="i686-pc-linux-gnu"

Oder hast Du irgendwie vor den Prozessor zu tauschen? Wenn ja ist der Weg über die CFLAGS von nem Pentium-M eigentlich auch unnötig. Alle neueren Prozessoren sollten damit auch zurecht kommen.
Back to top
View user's profile Send private message
sessa
n00b
n00b


Joined: 06 Apr 2008
Posts: 6

PostPosted: Sun Apr 06, 2008 5:33 pm    Post subject: Reply with quote

Hi, ich wollte den Pentium-M als CHOST nutzen, da der fast alle Erweiterungen des Athlon64 hat aber noch 32 bit nutzt.
Back to top
View user's profile Send private message
schmidicom
Veteran
Veteran


Joined: 09 Mar 2006
Posts: 1978
Location: Schweiz

PostPosted: Sun Apr 06, 2008 5:48 pm    Post subject: Reply with quote

Ich finde es irgendwie unsinnig ein 32bit System zu bauen wenn man die gelegenheit hat sich ein 64bit System zu bauen.

Das ist als ob man einen alten Knacker hinter das Steuer eines Rennautos setzt und dieser dann nur die Mindestgeschwindigkeit fährt.
_________________
Lenovo - ThinkPad P16s Gen 2 - 21K9CTO1WW
Back to top
View user's profile Send private message
s.hase
Apprentice
Apprentice


Joined: 19 Nov 2004
Posts: 293

PostPosted: Sun Apr 06, 2008 6:15 pm    Post subject: Reply with quote

sessa wrote:
Hi, ich wollte den Pentium-M als CHOST nutzen, da der fast alle Erweiterungen des Athlon64 hat aber noch 32 bit nutzt.

Pentium-M gibt es nicht als CHOST, außerdem ist "i686-pc-linux-gnu" auch 32-bit. Guck doch bitte noch einmal genauer in den schon geposteten Link. Übernimm die Einstellung für 32-bit und fertig.
Back to top
View user's profile Send private message
sessa
n00b
n00b


Joined: 06 Apr 2008
Posts: 6

PostPosted: Sun Apr 06, 2008 6:41 pm    Post subject: Reply with quote

Hi,

danke nochmal für die Hilfe.

Sorry stimmt es gibt kein pentium-m als CHOST, da hat mein Gehirn wohl irgendwie nach dem ganzen suchen und lesen alles durcheinander geworfen :oops: . So ergibt das jetzt auch alles viel mehr sinn. :idea:

Ich habe mich für 32 bit und nicht für 64 bit entschieden, da ich eh keine 4Gb RAM hab und ich so keine Vorteile sehe die 64 Bit Version zu verwenden.

Also sollte es so richtig sein für SSE und 3dnow erweiterungen und 32 Bit
CFLAGS="-Os -march=athlon64 -pipe -fomit-frame-pointer"
CHOST="i686-pc-linux-gnu"

gruß sessa
Back to top
View user's profile Send private message
Max Steel
Advocate
Advocate


Joined: 12 Feb 2007
Posts: 2272
Location: My own world! I and Gentoo!

PostPosted: Mon Apr 07, 2008 1:13 pm    Post subject: Reply with quote

richtig allerdings würde ich dir empfehlen statt -Os, das man normalerweise für kleinere Rechner (Festplattenplatz/LEistung) oder embedded Systeme verwendet, -O2 verwenden.

Außerdem für sse 3dnow 3dnowext sse2 mmx mmxext weiß der Geierr gibt es als allgemeine Useflags die in die USE kommen.
siehe dazu:
/usr/portage/profiles/use.desc
/usr/portage/profiles/use.local.desc
_________________
mfg
Steel
___________________

Heim-PC: AMD Ryzen 5950X, 64GB RAM, GTX 1080
Laptop: Intel Core i5-4300U, 16GB RAM, Intel Graphic
Arbeit-PC: Intel i5-1145G7, 16GB RAM, Intel Iris Xe Graphic (leider WSL2)
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
Page 1 of 1

 
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