PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Wieviel mehr Performance bringt mir ein selbstkompilierter Kernel ?



plueschinger
10.04.05, 22:10
Hallo

Es geht mir nicht darum , wie man einen Kernel kompiliert ,
sondern darum wiewiel schneller wird der Computer denn auf einem "nur-Desktop"-System ?

Es ist mir klar ,dass man wegen ausgefallener Technik einen Kernel kompilieren sollte ,
wegen der Module ,
aber wenn alles geht , ist der Standardkernel doch auch gut , oder ?
wieviel mehr Geschwindigkeit kriege ich durch einen selbstkompilierten ?

Beim Kernel-2.4 hiess es in einigen Zeitschriften zwischen 7% - 10% fuer den Desktop-User

Lohnt sich die Arbeit ?

Gruesse
Plueschinger

Iluminat23
10.04.05, 22:35
keine.

es bringt dir nix den einfach neu zu übersetzen. es bringt dir nur was wenn du ihn selber konfigurierst. aber auch dann nur, wenn du weißt wie. du kannst es ja einfach mal testen, da du deinen altern kernel dafür nicht löschen musst. es gibt hier im forum und im netz viele gute howtos.

mfg philipp.

MrPubes
10.04.05, 22:36
Meiner Meinung nach: Nein.
Du kannst natürlich selbst testen, wie groß die Leistungsschübe sind.
Wenn du deine Seti WUs ein bißchen schneller haben möchstest, viel mit großen Bildern/Videos/Musikdateien arbeitest, rentiert es sich _vielleicht_.


just my 2 cents

plueschinger
10.04.05, 22:51
Hallo

Gibt es fuer die Leistungsschuebe Kontrollprogramme
oder brauche ich ein Stopuhr ?

Gruesse
Plueschinger

tictactux
10.04.05, 22:59
oder brauche ich ein Stopuhr?
genau die (in Hard- oder Software :) )
Bei interaktiver Desktopbenutzung wirst Du keine Unterschiede merken,
falls Dein Distributionskernel sehr konservativ verglichen mit Deinem Prozessor
ist (z.B. 386-Befehlssatz und P4) wirst Du bei CPU-intensiven Operationen
(und wie MrPubes sagte vielleicht Multimedia, z.B. mplayer, DVD-Kodierung) wohl
Unterschiede sehen/messen können.

Gruss,
Wolfgang

plueschinger
10.04.05, 23:37
Hallo

Also werde ich den ersten Kernel so lassen ,
und am zweiten mal rumexperimentieren ,
auch wenn es keinen sichtbaren Erfolg bringt .

Danke fuer die Antworten .

Gruesse
Plueschinger

MiGo
11.04.05, 06:22
Der wohl grösste Vorteil eines selbergebauten Kernels ist der, dass dich nie wieder ein Treiber auf die Jagd nach passenden Headerdateien schickt :)

eruhenon
11.04.05, 07:08
des weiter spart man etwas speicherplatz.
und hat wie schon gesagt wniger probs mit treibern...
wobe der bootvorgang is merkenswert schneller.
weniger sicherheitsprobleme sind auch noch inzuzufügen (vorrausgesetzt man macht es richtig)

ssn
15.04.05, 21:00
also für mich als gentoo möchtegern user is ein selberkompilierter kernel sowieso pflicht. ich versprech mir davon natürlich einen performanceschub (wenn auch keinen großen) außerdem weiß man was man hat ;)
aber wenn du auf speed ausbist dann kommts auch drauf an wie du dein restliches system konfigurierst, als ich noch debian genutzt hab da wollten soviele unnötige sachen mitstarten, das kann ned gut sein.
allerdings bezweifle ich ehrlich gesagt auch dass der leistungsschub 10% beträgt, und alles drunter is eigentlich nicht so richtig spürbar.
also musst du wissen ob es dir die arbeit wert ist...
kommt halt auch aufs sys an, auf meinem server hab ich die ersten installationen auch ned unbedingt nen eigenen kernel gebacken

taylor
15.04.05, 21:08
des weiter spart man etwas speicherplatz.

Wohl kaum ;)


florian:~$ du -sh /usr/src/linux-2.6.10/
227M /usr/src/linux-2.6.10/

Ein selbstgebauter Kernel bringt keine(tm) Performance-Vorteile.

frankpr
15.04.05, 21:24
Nur den Kernel selbst kompilieren, bringt in den meisten Fällen keine spürbaren Verbesserungen. Wenn, dann muß das gesamte System optimiert werden.
Viele Binärdistributionen werden, wie schon erwähnt wurde, aus Gründen der Kompatibilität sehr konservativ kompiliert, z.B. für i586. Kompiliert man jetzt das gesamte System z.B. mit Unterstützung für iSSE3, so profitieren CPU- intensive Programme auf einem aktuellen Pentium 4 mit selbiger Befehlssatzerweiterung spürbar von der Optimierung.
Lediglich den kernel zu optimieren bringt deshalb nichts, es fehlt ja die Software, die diese Optimierung auch nutzt.
Es ist also wie bei Multiprozessorsystemen, SMP nur im Kernel zu aktivieren bringt da auch nichts, die Software muß mehrere CPU's auch nutzen.

MfG

PS: zur "Speicherersparnis", sicher wird ein selbstkompilierter und optimierter Kernel immer etwas kleiner als der Distributionskernel sein, zumindest, wenn man, wie ich, die Benutzung der initrd dem festen Einkompilieren aller möglichen Treiber in den Kernel vorzieht und alles nicht benötigte radikal wegläßt. Erfahrungsgemäß ist bei aktuellen Kerneln die Größe des Kernelimages durchschnittlich 300-500KB kleiner als der Distributionskernel, bei der Speicherausstattung aktueller Desktop- PC's lächerlich wenig. Der entpackte und geladene kernel mag dann noch etwas größer sein, aber erwähnenswert ist es sicherlich nicht. Das müßten mal Nutzer von Binärdistributionen nachvollziehen/überprüfen.

fuffy
15.04.05, 21:35
Hi!


Ein selbstgebauter Kernel bringt keine(tm) Performance-Vorteile.
Nun ja, ein für K8 optimierter Kernel läuft (auf einem K8 System) schneller als ein für 386er optimierter. Nicht umsonst liefert Debian zig Kompilate mit.
Und man könnte Preempt (de)aktivieren oder diverse Scheduler-Patches einspielen, was je nach System auch Vorteile bringen kann.
Zum Glück kann man zumindest den I/O-Scheduler beim Bootvorgang frei wählen.


Lediglich den kernel zu optimieren bringt deshalb nichts, es fehlt ja die Software, die diese Optimierung auch nutzt.
Die Pakete von Dropline GNOME sind allesamt für i686 optimiert. Der Slackware-Kernel dagegen für i486. Das heißt aber nicht, dass die Anwendungen auf dem Kernel nicht laufen würden. Sonst wären auf Distributionen wie SUSE, die nur einen Standardkernel mitliefern, jegliche Optimierungsversuche seitens MPlayer & Co. vergeblich. Sind sie aber nicht.

Gruß
fuffy

eruhenon
16.04.05, 03:42
Wohl kaum ;)


florian:~$ du -sh /usr/src/linux-2.6.10/
227M /usr/src/linux-2.6.10/

Ein selbstgebauter Kernel bringt keine(tm) Performance-Vorteile.

naja ich hab doch deutliche unterschiede:

lib/modules/2.6.8$ du -sh 4,3M .

/lib/modules/2.6.8-1-386$ du -sh 38M .

/lib/modules/2.6.10$ du -sh 6,5M .

also das sind schon unterschiede... besonders wenn man eine kleine festplatte hat

plueschinger
16.04.05, 19:07
Hallo

Also was ich jetzt so raushoere ist ,

"Performance oder Kompatibilitaet"
Also in etwa "LFS oder irgendein System mit i386-RPM-Paketen"
Maßgeschneidert oder Stangenware .
Um mehr Performance zu bekommen sollte man ersteinmal die Software
fuer die eigene Prozessorarchitektur optimieren .

Ich hoffe ,das war nicht zu unqualifiziert .

Gruesse
Plueschinger

_________________________________________________
Wo jetzt "oder" steht stand vorher "gegen"

frankpr
16.04.05, 19:32
Ich hoffe ,das war nicht zu unqualifiziert .

Eher nicht zum Thema passend.
Außerdem ist "gegen" etwas deplaziert. Jeder hat halt andere Anforderungen.

MfG

eruhenon
16.04.05, 19:48
je mehr sachen du halt ausm kernel rausschmeisst desto weniger hardware läufft natürlich. die satndart kernel sind so konfiguriert das sie mit einer möglichst grossen anzahl von hardware laufen daher wird meistens halt empfolen nen neuen kernel zu backen da man dann den ganzen anderen dreck rausschmeissen kann... und das auch wieder (wenn auch wenig) performance bringt

THEReapMan
16.04.05, 23:43
naja ich hab doch deutliche unterschiede:

lib/modules/2.6.8$ du -sh 4,3M .

/lib/modules/2.6.8-1-386$ du -sh 38M .

/lib/modules/2.6.10$ du -sh 6,5M .

also das sind schon unterschiede... besonders wenn man eine kleine festplatte hat

Das sind ja aber nur die module für den kernel.
wenn ich alles fest in den kernel baue dann geht mein module-verzeichniss gegen 0.
ausagekräftig wäre modul-verzeichniss + kernel-datei

fuffy
16.04.05, 23:48
Hi!


Das sind ja aber nur die module für den kernel.
wenn ich alles fest in den kernel baue dann geht mein module-verzeichniss gegen 0.
ausagekräftig wäre modul-verzeichniss + kernel-datei

(0)[fuffy@zephyr:~]% du -chs /boot/vmlinuz-generic-2.6.10 /lib/modules/2.6.10
1.4M /boot/vmlinuz-generic-2.6.10
35M /lib/modules/2.6.10
36M total
(0)[fuffy@zephyr:~]% du -chs /boot/vmlinuz /lib/modules/2.6.11.7
1.3M /boot/vmlinuz
8.9M /lib/modules/2.6.11.7
11M total

Bei letzterem ist auch noch das NVIDIA-Kernelmodul (4.3M) dabei.

Gruß
fuffy

eruhenon
17.04.05, 00:02
selbst konfiguriert:

1,8M /boot/vmlinuz-2.6.8
4,3M /lib/modules/2.6.8
6,0M insgesamt


installation debian 3.1:

1,1M /boot/vmlinuz-2.6.8-1-386
38M /lib/modules/2.6.8-1-386/
39M insgesamt

[ai]
18.04.05, 12:07
Es ist doch ganz logisch dass ein mitgelieferter Kernel und die module viel mehr wiegen weil sie auf all-hardware-support eingestellt sind. Die performance wachst wenn du versuchst zu verstehen wass dein System braucht und das in den Kernel einbaust. Andererseits kann man naturlich den Kernel 'tunen' mit verschieden patchen, anderung der CFLAGS (highly experimental :P ), des schedulers usw. All diese Sachen brauchen aber, dass man daran arbeitet und alles selber macht. Zu sagen dass, es keine besseren Ergebnisse bringt ist idiotisch.

Child_of_Sun
18.04.05, 13:08
Es gibt zum beispiel einen Kernelpatch mit dem man die Compiler Flags einstellen kann :-) aber der führt oft zu instabilität.
Den Kernel selber backen setzt vorraus sich mit seinem System auszukennen, von der Soundkarte, über den Prozessor bis hin zu den Temperatursensoren auf dem Mainboard. Kann man alles mit Systemdiagnose Tools herausfinden unter z.B. KDE gibt des das Info Center (Weiß nicht mehr ob es genau so hieß).
Dort kannst du schon mal vieles über den PC in erfahrung bringen.

CoS