
Hallo David, hallo Leute, Am Dienstag, 3. April 2012 schrieb David Haller:
Am Mon, 02 Apr 2012, Christian Boltz schrieb:
Ich weiß, dass Du bei unnötigen greps und rpm-Aufrufen allergisch reagierst ;-) - aber wenn man das Ergebnis an ein rpm -V verfüttert, dürfte der Performance-Unterschied nicht wirklich messbar sein *g*
Stimmt wohl, die meiste Zeit dürfte für's 'rpm -qa' (implizit in -Va) draufgehen, also die Abfrage aller Pakete. Der Rest ist dann weitgehend I/O. Das extra 'rpm -V' und 'grep' zu starten sollte nicht viel ausmachen.
# time rpm -Va '*[Yy][Aa][Ss][Tt]*' real 0m2.673s # time rpm -V `rpm -qa |grep -i yast` real 0m2.810s
Entweder Du hast kaum YaST-Pakete installiert oder (was ich eher vermute) die obigen Zeiten sind mit vorgewärmtem Plattencache gemessen. Sieht hier so aus: # time rpm -Va '*[Yy][Aa][Ss][Tt]*' real 1m39.836s # erster Durchlauf - Cache war vorher "leer" # time rpm -Va '*[Yy][Aa][Ss][Tt]*' real 0m3.811s # zweiter Durchlauf kurz danach - Cache hilft :-) # time rpm -V `rpm -qa |grep -i yast` real 0m4.053s # nicht schlecht, aber... # time rpm -Va '*[Yy][Aa][Ss][Tt]*' real 0m2.865s # ... speziell für diesen Befehl gecacht geht es noch schneller ;-) (wahrscheinlich lag vorher nur ein Teil der RPM- Datenbank im Cache)
Sowas ist nicht wirklich relevant.
Genau. Der wichtigste Unterschied ist, ob die RPM-Datenbank und die Dateien aller zu prüfenden Pakete schon im Cache liegen ;-) Zumindest bei letzteren ist es unwahrscheinlich - wer ruft schon zweimal hintereinander rpm -V fürs gleiche Paket auf?
Der Unterschied dürften weitgehend die Startzeiten vom extra rpm und grep sein.
Ja - aber im Vergleich zu einem rpm -V bei leerem Plattencache sind diese Zeiten eher lächerlich. Wo ich eh schon am Testen bin, noch eine Variante: Übergabe aller Paketnamen direkt beim rpm-Aufruf. Damit haben wir den Teil "Auflistung der Pakete" ausgeklammert. Jeweils die Daten vom 2. Durchlauf (vorgewärmter Cache): # time liste=$(rpm -qa '*[Yy][Aa][Ss][Tt]*') real 0m1.928s # time liste=$(rpm -qa | grep -i yast) real 0m2.033s Das zusätzliche grep kostet also 5% Performance. Weltuntergang! ;-) # time rpm -V $liste real 0m1.100s Wer will, kann diese Zahlen jetzt noch zusammenrechnen und mit den Werten von oben vergleichen ;-)
Nur: daß rpm auch selber Paketnamen "matchen" kann (vgl. rpm -qa '*kernel*') ist noch wenig bei den Anwendern angekommen.
Weiß ich ;-)
PS: Ich such mal die passende sig raus ;-)
*hrhrhr* dito.
OK, das sig-Match ist eröffnet. Ich suche nochmal ;-)
[1] / hat 8,5 GB used - wobei /tmp, /var und natürlich /home auf einer anderen (verschlüsselten) Partition liegen
Inkl. /var und /tmp lt. 'df -m': 27515M used.
27G? Da würde mich der Anteil von /var und /tmp doch interessieren. Ich hätte bei Dir ein schlankeres System vermutet ;-)
PS: hab heute mal den 3.3 aus Kernel:stable getestet, der vermurkst einem offenbar das DVB, ich bekomm da nur noch Artefakte mit ein paar Bild- und Tonfetzen. mit 3.1.9 läufts
Ich glaube, ich muss Dir die Benutzung von Bugzilla nicht erklären, oder?
(und ich dachte schon fast, meine TV-Karte verreckt schon wieder).
Ging mir bei meinem internen Cardreader mit dem Kernel der 12.1 ähnlich - nur dass der mit dem 3.3er Kernel wieder geht. Gruß Christian Boltz -- Du bist wirklich Designfetischist, oder? IMHO merkt den Unterschied später sowieso keiner. Aber deinen Arbeitseifer zu stoppen wäre ja fatal... ;-))) [Andreas Schott zu David Haller in suse-linux-faq] -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org