View previous topic :: View next topic |
Author |
Message |
franzf Advocate


Joined: 29 Mar 2005 Posts: 4565
|
Posted: Fri Apr 13, 2007 10:24 am Post subject: Distcc startet nicht [solved] |
|
|
Hallo,
Ich möchte meinen armen, schwachen P3 (440 MHz) entlasten beim anstehenden (ersten) world-update. Dafür wollte ich distcc verwenden. Installation auf beiden beteiligten Rechnern verlief problemlos. Starten auf meiner großen Kiste auch. Nur der kleine macht Mucken.
Die Config-Dateien auf beiden Rechnern sind identisch, nur eben unterschiedliche --allow / --listen.
Ich habe auf beiden Rechnern das log-level auf debug gestellt, der Output ist der Selbe:
Code: | /etc/init.d/distccd start
* Starting distccd ...
distccd[5297] (dcc_should_be_inetd) stdin is a tty; assuming --daemon mode
distccd[5297] (dcc_discard_root) discarded root privileges, changed to uid=240 gid=2 |
Beim großen ist alles [ ok ] beim kleinen [ !! ].
Die config:
Code: | DISTCCD_OPTS=""
DISTCCD_EXEC="/usr/bin/distccd"
DISTCCD_PIDFILE="/var/run/distccd/distccd.pid"
DISTCCD_OPTS="${DISTCCD_OPTS} --port 3632"
DISTCCD_OPTS="${DISTCCD_OPTS} --log-level debug --log-file /var/log/distcc"
DISTCCD_OPTS="${DISTCCD_OPTS} --allow 192.168.0.0/24 --allow 192.168.1.33"
DISTCCD_OPTS="${DISTCCD_OPTS} --listen 192.168.1.33"
DISTCCD_NICE="15" |
Vielleicht kann mir einer einen Tip geben.
In den Howtos auf gentoo-wiki.com / gentoo.de hab ich nichts gefunden, was mir weiterhilft.
Besten Dank
Franz
Last edited by franzf on Sat Apr 14, 2007 2:30 pm; edited 1 time in total |
|
Back to top |
|
 |
bbgermany Veteran


Joined: 21 Feb 2005 Posts: 1844 Location: Oranienburg/Germany
|
Posted: Fri Apr 13, 2007 10:28 am Post subject: |
|
|
Hi,
das sollte reichen
Code: |
DISTCCD_OPTS="${DISTCCD_OPTS} --allow 192.168.0.0/24 --allow 192.168.1.33/32 --daemon"
|
anstatt deiner ganten --allow und --listen Anweisungen.
MfG. Stefan _________________ Desktop: Ryzen 7 5800X, 32GB, 2TB, RX7700XT
Noebook: Dell XPS 13 9370, 16GB, 1TB
Server #1: Ryzen 5 Pro 4650G, 64GB, 16.5TB
Server #2: Ryzen 4800H, 32GB, 22TB |
|
Back to top |
|
 |
Gibheer Guru

Joined: 27 Dec 2004 Posts: 300
|
Posted: Fri Apr 13, 2007 11:06 am Post subject: |
|
|
ich glaube du hast da nen fehler in der config drin. Du musst doch in allow den rechner reinschreiben, der die auftraege gibt und bei listen die ip vom rechner der die auftraege annimmt. Oder irre ich mich da? |
|
Back to top |
|
 |
bbgermany Veteran


Joined: 21 Feb 2005 Posts: 1844 Location: Oranienburg/Germany
|
Posted: Fri Apr 13, 2007 11:29 am Post subject: |
|
|
Wenn der Kleine nur geben soll, dann reicht folgendes auf der Seite des P3
Code: |
# emerge -av distcc
# distcc --set-hosts "<ip-vom-großen> localhost"
# echo "FEATURES=\"distcc\"" >> /etc/make.conf
# emerge -av <deine-packete>
|
Auf der Serverseite solltest du eine --allow Regel einfügen für dein internes Netz (sofern diese im gleichen Netz stehen).
MfG. stefan _________________ Desktop: Ryzen 7 5800X, 32GB, 2TB, RX7700XT
Noebook: Dell XPS 13 9370, 16GB, 1TB
Server #1: Ryzen 5 Pro 4650G, 64GB, 16.5TB
Server #2: Ryzen 4800H, 32GB, 22TB |
|
Back to top |
|
 |
franzf Advocate


Joined: 29 Mar 2005 Posts: 4565
|
Posted: Fri Apr 13, 2007 5:25 pm Post subject: |
|
|
bbgermany wrote: | Wenn der Kleine nur geben soll, dann reicht folgendes auf der Seite des P3
Code: |
# emerge -av distcc
# distcc --set-hosts "<ip-vom-großen> localhost"
# echo "FEATURES=\"distcc\"" >> /etc/make.conf
# emerge -av <deine-packete>
|
Auf der Serverseite solltest du eine --allow Regel einfügen für dein internes Netz (sofern diese im gleichen Netz stehen).
MfG. stefan |
Danke schön, es klappt jetzt
Ich hab noch lange rumgebastelt, weil auf beiden Seiten distcc lief, aber der große nur am Anfang ein Paket abbekam, der Rest dann doch nur auf dem Kleinen lief.
Ich hatte den Fehler gemacht, dass in der hosts erst localhost, dann die IP vom Anderen stand. Umgedreht und schon macht der Große fleißig mit
Hier auf gentoo-wiki.com steht in der hosts hinter der IP mittels / ein Prozentualer Anteil, welcher den einzelnen Rechnern zugewiesen werden soll. Das klappt nicht, distcc beschwert sich es könne nicht auf 192.168.1.33/10 zugreifen. Ich würde nämlich gerne meinem Großen (AMD64 3700+ auf 32Bit) mindestens 80% geben (am liebsten alles), dem Kleinen höchstens 20 (Ist ja schon genug mit Preprozessorarbeit beschäftigt ), mit seinen 64MB läuft bei C++-Programmen immer so schnell der Speicher voll (grad schon wieder bei cmake).
Wie kann ich das denn jetzt richtig setzen?
Danke
Franz |
|
Back to top |
|
 |
bbgermany Veteran


Joined: 21 Feb 2005 Posts: 1844 Location: Oranienburg/Germany
|
Posted: Fri Apr 13, 2007 8:07 pm Post subject: |
|
|
Hi,
der Wert hinter dem Slash hat nichts mit Prozenten zu tun! Das sind die Anzahl der Prozesse, die von gcc gestartet werden sollen.
Vergiss nicht in deine make.conf
Code: |
MAKEOPTS="-j<Anzahl-der-logischen-CPUs>"
|
einzutragen. Also hast du einen P3 und einen DualCore, ist der richtige Wert eine 5. Nun kannst du via
Code: |
distcc-config --set-hosts "<ip-des-großen>/3 localhost/2"
|
den distcc zwingen, 3 GCC-Prozesse auf dem Großen und 2 GCC-Prozesse auf dem Kleinen zu starten. Bedenke jedoch, nicht jedes Paket ist distcc fähig und das Linken geschiet immer auf der Maschine, wo die den emerge Prozesse gestartet hast.
MfG. Stefan _________________ Desktop: Ryzen 7 5800X, 32GB, 2TB, RX7700XT
Noebook: Dell XPS 13 9370, 16GB, 1TB
Server #1: Ryzen 5 Pro 4650G, 64GB, 16.5TB
Server #2: Ryzen 4800H, 32GB, 22TB |
|
Back to top |
|
 |
Gibheer Guru

Joined: 27 Dec 2004 Posts: 300
|
Posted: Sat Apr 14, 2007 6:49 am Post subject: |
|
|
Also ich hab mit den kleinen Werten fast nix erreicht. Ich hab es so gemacht, das ich die Prozesse auf 48 hochgeschraubt habe, meinem P3 mit 1Ghz 4 gegeben habe und den Rest auf meinen C2D schicken lasse. So ist mein C2D und der P3 zwar nicht komplett ausgelastet ist, aber zumindest geht es so weitaus schneller. Einfach mal rumprobieren, ist ein bissel wie Chemie |
|
Back to top |
|
 |
franzf Advocate


Joined: 29 Mar 2005 Posts: 4565
|
Posted: Sat Apr 14, 2007 2:29 pm Post subject: |
|
|
Danke schön für eure Mühen.
Aber es klappt einfach nicht, wenn ich die Prozesse verteilen will (kann man dann ja auch prozentual sehen).
Wenn ich aber irgend welche Werte hinter die IP setz, werden diese ignoriert und alles läuft auf dem schwachen Rechner .
Komischerweise hat es jetzt aber auf einmal funktioniert, dass ich localhost aus der distcc/hosts rausnehm, jetzt geht das richtig ab (alles auf dem Großen) . Das hat ja vorher irgendwie nicht wollen (Fehlermeldungen beim kompilieren / alles auf dem Kleinen). Das Einzige was ich anders gemacht hab: distcc-config --set-hosts "<IP>" statt manuellem Editieren der Config...
Wenn noch jemand irgend einen Tip hat, wie ich die Verteilung doch noch regeln kann, immer her damit. Da es aber jetzt erst mal klappt, setz ich das Topic auf solved.
Grüße
Franz |
|
Back to top |
|
 |
|
|
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
|
|