GNU/Make > GCC konfigurieren, dass er automatisch j3 nimm

Warum Debian und/oder eine seiner Spielarten? Was muss ich vorher wissen? Wo geht es nach der Installation weiter?
Antworten
AD-Admin
Beiträge: 102
Registriert: 28.08.2006 02:33:58

GNU/Make > GCC konfigurieren, dass er automatisch j3 nimmt

Beitrag von AD-Admin » 16.12.2006 14:47:07

Hi Leute,

wenn ich Kernel kompiliere mit dem "kernel-package" nimmt Debian ja Make und den GCC.

Wo kann ich make konfigurieren? Ich würde gerne, dass Debian automatisch "j3" also 3 Jobs macht bei einem 2 Prozessor System. per Default scheint Debian immer nur einen job also j1 zu machen, wenn ich mit dem Kernel Package Kernel kompiliere.

Es wäre super, wenn ihr mir sagen könnt, wo ich make so konfigurieren kann, dass debian dann automatisch mit j3 läuft.

Bei Gentoo stellt man dies in /etc/make.conf ein (j3) aber wo geht das bei Debian?

Besten Dank.
Gruß
AD-Admin
Debian Server

gms
Beiträge: 7798
Registriert: 26.11.2004 20:08:38
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von gms » 16.12.2006 18:53:12

bei Debian sollte das so funktionieren

Code: Alles auswählen

gms@gms1:/usr/src/linux$ CONCURRENCY_LEVEL=3 make-kpkg ...
oder

Code: Alles auswählen

gms@gms1:/usr/src/linux$ export CONCURRENCY_LEVEL=3 
gms@gms1:/usr/src/linux$ make-kpkg ...
eventuell kannst du dieses Setting auch in /etc/kernel-pkg.conf eintragen, aber das ist weder dokumentiert, noch habe ich das jemals getestet

Gruß
gms

AD-Admin
Beiträge: 102
Registriert: 28.08.2006 02:33:58

Beitrag von AD-Admin » 16.12.2006 22:22:11

Besten Dank.

Ich werde es testen.
Gruß
AD-Admin
Debian Server

meti
Beiträge: 559
Registriert: 19.12.2004 14:00:47
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von meti » 17.12.2006 04:51:48

Bei mir funktioniert das aber leider nicht beim übersetzen der Module ... wobei das bzImage aber mit mehreren Instanzen übersetzt wird.

gms
Beiträge: 7798
Registriert: 26.11.2004 20:08:38
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von gms » 17.12.2006 14:55:04

meti hat geschrieben:Bei mir funktioniert das aber leider nicht beim übersetzen der Module ... wobei das bzImage aber mit mehreren Instanzen übersetzt wird.
kann ich nicht nachvollziehen:

make bzImage:

Code: Alles auswählen

root@gms2:~# ps -ef | grep make
root     20585 17966  0 14:50 pts/1    00:00:00 sh -c make-kpkg --append_to_version -v-1 -revision 0.0  kernel_image 2>&1 | tee -a '/mnt/dataxgen4/software/x86_64/linux/kernel/2.6.19.1-v-1/build.log'
root     20586 20585  0 14:50 pts/1    00:00:00 /usr/bin/make -f debian/rules DEBIAN_REVISION=0.0 APPEND_TO_VERSION=-v-1 kernel_image
root     22352 20586  0 14:50 pts/1    00:00:00 /usr/bin/make -j3 EXTRAVERSION=.1-v-1 ARCH=x86_64 bzImage
root     26276 22352  0 14:51 pts/1    00:00:00 /usr/bin/make -f scripts/Makefile.build obj=drivers
root     28900 22352  0 14:51 pts/1    00:00:00 /usr/bin/make -f scripts/Makefile.build obj=net
root     29791 22352  0 14:52 pts/1    00:00:00 /usr/bin/make -f scripts/Makefile.build obj=lib
root     30395 28900  0 14:52 pts/1    00:00:00 /usr/bin/make -f scripts/Makefile.build obj=net/ipv4
root     31034 26276  0 14:52 pts/1    00:00:00 /usr/bin/make -f scripts/Makefile.build obj=drivers/i2c
make modules:

Code: Alles auswählen

root@gms2:~# ps -ef | grep make
root     20585 17966  0 14:50 pts/1    00:00:00 sh -c make-kpkg --append_to_version -v-1 -revision 0.0  kernel_image 2>&1 | tee -a '/mnt/dataxgen4/software/x86_64/linux/kernel/2.6.19.1-v-1/build.log'
root     20586 20585  0 14:50 pts/1    00:00:00 /usr/bin/make -f debian/rules DEBIAN_REVISION=0.0 APPEND_TO_VERSION=-v-1 kernel_image
root      1420 20586  0 14:53 pts/1    00:00:00 /usr/bin/make -j3 EXTRAVERSION=.1-v-1 ARCH=x86_64 modules
root      1596  1420  1 14:53 pts/1    00:00:00 /usr/bin/make -f scripts/Makefile.build obj=fs
root      1674  1596  0 14:53 pts/1    00:00:00 /usr/bin/make -f scripts/Makefile.build obj=fs/cifs
root      1882  1420  1 14:53 pts/1    00:00:00 /usr/bin/make -f scripts/Makefile.build obj=crypto
Gruß
gms
Zuletzt geändert von gms am 17.12.2006 14:58:16, insgesamt 1-mal geändert.

Benutzeravatar
ello
Beiträge: 13
Registriert: 13.12.2006 14:42:56
Wohnort: Eberswalde
Kontaktdaten:

Beitrag von ello » 17.12.2006 14:56:04

meti hat geschrieben:Bei mir funktioniert das aber leider nicht beim übersetzen der Module ... wobei das bzImage aber mit mehreren Instanzen übersetzt wird.
Wenn ich jetzt nicht total daneben liege, wirst du daran so leicht auch nichts ändern können. Da es wohl eher am Makefile liegt als an den GCC-Einstellungen. Und im Grunde genommen, ist es auch egal, da man ja nicht jeden Tag 30 Kernel mit allen Modulen kompilieren muss. :wink:

MfG ello

AD-Admin
Beiträge: 102
Registriert: 28.08.2006 02:33:58

Beitrag von AD-Admin » 17.12.2006 23:48:27

Danke nochmals für die Info.

So konnte ich einen dicken Debian Kernel (2.6.20 RC1) mit 2.6.18 (Etch Konfiguration) in sage und schreibe ca. 10 Minuten kompilieren.

Auf einem INTEL C2D E6600 welcher mit 3 GHz taktet...

Auf nem P4 dauert das gute 1-2 Stunden. Und durch den Befehl um mit 3 Jobs die CPU´s voll auszunutzen kann der C2D das jetzt richtig schnell durchhauen.

Danke nochmal.
Gruß
AD-Admin
Debian Server

Antworten