{"id":24347,"date":"2026-07-26T12:12:50","date_gmt":"2026-07-26T10:12:50","guid":{"rendered":"https:\/\/linux-bibel.at\/?p=24347"},"modified":"2026-07-26T13:11:44","modified_gmt":"2026-07-26T11:11:44","slug":"performance-und-tools","status":"publish","type":"post","link":"https:\/\/linux-bibel.at\/index.php\/2026\/07\/26\/performance-und-tools\/","title":{"rendered":"Performance und Tools"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">Plaudern wir heute ein bisschen \u00fcber Performance und die Tools. Wie bekommt man eine \u00dcbersicht wie es meinem System denn so geht. Seit Urzeiten wird in Unix-Systemen und dazu z\u00e4hlt auch Linux, die beiden alten Grunds\u00e4tze angewandt:<\/p>\n\n\n\n<ol class=\"wp-block-list\">\n<li>Regel  Alles ist ein File.<br>Nun der Satz hat mit Performance an und f\u00fcr sich \u00fcberhaupt nichts am Hut, bis man zum Memory kommt. Das &#8222;File&#8220; Ram wird als Datei behandelt. Die Tastatur ist ein File, man kann davon lesen. Die TCP-Verbindung ist ein File man kann schreiben und lesen. Das Bildschirm &#8222;File&#8220; kann man beschreiben. <br><br>Und damit ist auch schon klar, welches Interface immer besonderer Betrachtung w\u00fcrdig ist.  I\/O ist das A und O  im diesem Bereich. <br><\/li>\n\n\n\n<li>Regel: Alles wird so schnell erledigt wie es geht.<br>Wenn ein Programm etwas anfordert bekommt es alles was der Kern hat. Z.B. CPU-Zeit. Gleichzeitig wird es bestraft. 100% CPU sind 100 Strafpunkte. Je weniger Strafpunkte ich habe desto eher bekomme ich CPU-Zeit. Detto beim Speicher. Jemehr Speicher ich will, desto fr\u00fcher geht er in den Page-Out Bereich. Nat\u00fcrlich gibt es dann noch Aktionen die dem widersprechen.<\/li>\n<\/ol>\n\n\n\n<h2 class=\"wp-block-heading\"> Performance-Messung.<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Wenn man diese beiden Regeln beherzigt, dann wird einem etn paar Sachen klarer.   Nun schauen wir uns ein Paar Tools an. Ich lasse alle Tools die unter einer grafischen Oberfl\u00e4che au\u00dfer acht und stelle als erstes Tool<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">top<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">vor. Top wird mit jedem Debiansystem mitinstalliert und zeigt die aktuellen Auslastungswerte an. Eine Historie gibt es nicht und somit auch keine nachtr\u00e4gliche Auswertung. Man beobactet das System im jeweiligen Zustand. <\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"781\" height=\"496\" src=\"https:\/\/linux-bibel.at\/wp-content\/uploads\/2026\/07\/zitrone_002.png\" alt=\"\" class=\"wp-image-24350\" srcset=\"https:\/\/linux-bibel.at\/wp-content\/uploads\/2026\/07\/zitrone_002.png 781w, https:\/\/linux-bibel.at\/wp-content\/uploads\/2026\/07\/zitrone_002-150x95.png 150w, https:\/\/linux-bibel.at\/wp-content\/uploads\/2026\/07\/zitrone_002-300x191.png 300w, https:\/\/linux-bibel.at\/wp-content\/uploads\/2026\/07\/zitrone_002-768x488.png 768w\" sizes=\"auto, (max-width: 781px) 100vw, 781px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Ihr bekommt so ein Bild, dass sich in kurzer Zeit jeweils angepasst wird. mit dem Buchstaben h bekommt ihr eine Hilfe, was ihr einstellen k\u00f6nnt. Ich m\u00f6chte mich jetzt auf den oberen Teil konzentieren und mit load beginnen. <br><br>Der load gibt die Anzahl der Prozesse die auf eine CPU warten an. Jeweils den Durchschnitt der letzten Minute, der letzten 5 Minuten und der letzten 15 Minuten.  von meinen 253 Prozessen, wollten im Durchschnitt mehr als 2 immer etwas tun. <br>Das sagt nicht aus, dass meine CPU  ausgelastet sind, sondern das Taskwechsel daf\u00fcr anstehen. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Im n\u00e4chsten Kasten sind besonders die Werte us sy und wa von Interesse. us zeigt wieviel cpu-Zeit von Anwenderprozessen verbraucht wird. sy ist der Wert des Kern und der loadable Module.  Die loadable Module sind jene Kernkomponenten die beim boot zum Kern dazugeladen werden. (Viedo, Audio, Netzwerk Festplatten u.v.m) Das Programm &#8222;lsmod&#8220; zeigt euch diese an. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">F\u00fcr die Performance k\u00f6nnte der wa-Wert ausschlaggebend sein. WA ist der Wert f\u00fcr &#8222;wait for E\/A&#8220; also wieviel Prozent der CPU f\u00fcr Inpu\/Output verwendet wird. In meinem Fall gehen ca. 6% auf solche Operationen. Ein Indiz dass mein armer alter Lappi etwas zu tun hat.  <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Die n\u00e4chsten beiden Felder HI und SI sind die Interrupt Indikatoren in % der CPU-Zeit. HI f\u00fcr Hardware-Interrupt, SI f\u00fcr Software Interrupt. Wenn ein Iterrupt auftritt dann muss der Kern sofort reagieren, und unterbricht das laufende Programm und h\u00e4ndelt den Interrupt. Dazu kommt es zu einem Taskwechsel, und jede Menge von Aktionen laufen dabei ab. (z.B. Registerettung, Recovery\/Wiederholung etc. ) Nehmen wir einen Plattenfehler beim Schreiben. Dann wird der Block als bad-gekennzeichnet, ein Reserveblock gesucht, der Block als g\u00fcltig gekennzeichnet, die Verkettung im Filesystem durchgef\u00fchrt und der Schreibauftrag auf den Block wiederholt.<br><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ein hoher HI-Wert deutet darauf hin, das die CPU viel Zeit f\u00fcr Hardware-Interrupt verbraucht. Ggf kann ein Hardwaredefekt vorliegen. Normale Werte sind f\u00fcr beide Felder gegen 0. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Der letzte Block zeigt uns den Speicherverbrauch real und im Swap. Den Swap schauen wir und n\u00e4her an. Was an realen Speicher z.Z nicht  gebraucht, wird ls Buffer vorgemerkt und f\u00fcr Plattencache, Programmchache verwendet. <\/p>\n\n\n\n<h3 class=\"wp-block-heading\">vmstat <\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">isr das zweite Programm das mitgeliefert wird. vmstat kann mit 2 Paparameter gestartet werden. der erste gibt die Zeitdauer zwischen 2 Ausgabezeilen und der Zweite die Anzahl der Wiederholungen. Also vmstat  6 10 liefert alle 6 Sekunden 10 mal Messungen \u00fcber die Auslastung.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"789\" height=\"233\" src=\"https:\/\/linux-bibel.at\/wp-content\/uploads\/2026\/07\/zitrone_003.png\" alt=\"\" class=\"wp-image-24353\" srcset=\"https:\/\/linux-bibel.at\/wp-content\/uploads\/2026\/07\/zitrone_003.png 789w, https:\/\/linux-bibel.at\/wp-content\/uploads\/2026\/07\/zitrone_003-150x44.png 150w, https:\/\/linux-bibel.at\/wp-content\/uploads\/2026\/07\/zitrone_003-300x89.png 300w, https:\/\/linux-bibel.at\/wp-content\/uploads\/2026\/07\/zitrone_003-768x227.png 768w\" sizes=\"auto, (max-width: 789px) 100vw, 789px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><br><br><\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Wir sehen wieder unsere werte nur diesmal in einer liste und wir k\u00f6nnen diese auch speichern z.B  vmstat x y &gt;\/tmp\/ausgabe.csv<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Daf\u00fcr kommen ein paar Spalten hinzu. Swap liefert wieviele Prozesse\/Bl\u00f6cke in den Swap-Bereich geschrieben bzw gelesen werden und io liefert die Bl\u00f6cke f\u00fcr Ein- und Ausgabeaktivit\u00e4ten.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">SWAP<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Der heilige Gral oder wie gro\u00df darf er sein? Stellen wir einmal die Frage was ist der SWAP und wof\u00fcr brauche ich ihn.<br>Der Swap ist jener Bereich auf der Platte in dem Programme\/-teile ausgelagert werden d\u00fcrfen, wenn sie im realen Speicher keinen Platz mehr haben. Wenn mein Programm 100 MB gro\u00df ist, ich aber nur mehr 50MB freien Speicher habe, werden vom Kern andere 50 MB auf die Platte geschrieben und mein Programm kann geladen werden. Das bezeichnet man als swapout der umgekerteFall das swapin erfolgt dann wenn diese wieder ben\u00f6tigt werden, daf\u00fcr werden dann andere Teile ausgelagert. <br>Swap in oder out ist ein eindeutiges Indiz f\u00fcr eine etwas schlechtere Performance. Jeder Block ruft einen Vorgang auf der HDD\/SSD hervor und der dauert.  <br>der Vorteil ist auch wenn ich viele Programme gestartet habe, geht mein Speicher nicht aus.<br><br>Einige Stimmen sagen, brauche ich nicht, ich habe 64 GB Ram und swappe nie.  Du Gl\u00fccklicher &#8230;. Aber und hier kommt das Aber.  Ruhezustand, <em>Hibernation<\/em> oder&nbsp;&#8222;Suspend to Disk&#8220; speichert den Zustand des Rechners wohin?  Richtig in den SWAP<br>Also seid nicht gierig und g\u00f6nnt eurem PC die Speichgr\u00f6\u00dfe * 1,5 als SWAP.<br><br>Und wenn wir schon dabei sind, ihr wollt ja wieder aufwachen. Der SWAP sollte entweder in einer eigenen Partition auf einer Platte die schon beim boot erreichbar ist oder im Root-Filesystem liegen. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Viel Spass ab jetzt bei den Suspend-Funktionen. Den Swap kann man mit dem Programm &#8222;free&#8220; \u00fcberpr\u00fcfen, <\/p>\n\n\n\n<h2 class=\"wp-block-heading\">CPU-Last und Performance<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Sagen wir ich habe 2 CPU in meinen Rechner und ich starte ein Programm das wie der Teufel rechnet. Merke ich etwas davon? Nat\u00fcrlich nicht die 2 CPU rekelt sich in der Gegend. Ich starte das Programm ein zweites mal. Nat\u00fcrlich merke ich &#8230;.. Nichts.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ein 3, und ein 4. mal. Optisch merke ich immer noch nichts. Jedes dieser Programme wird bestraft, weil es seinen Timeslot voll ausn\u00fctzt. Die Programme werden jedes f\u00fcr sich zwar l\u00e4nger dauern, aber Programme die Zeit abgeben werden daf\u00fcr belohnt und bekommen mehr Slotanteile und Timeslices. F\u00fcr dich schaut es so aus, als w\u00fcrde sich nichts \u00e4ndern. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Steuern kann ich es von der shell aus mit dem nice\/renice Kommando. Das Kommando &#8222;man renice&#8220; gibt eine \u00dcbersicht \u00fcber die Befehle. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Du willst es ausprobieren? Dann m\u00fcssen wir etwas programmieren. <\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>#include &lt;stdio.h&gt;\n#include &lt;errno.h&gt;\nint main() {\n  long i=0;\n  int a=0;\n  while ( a != 10 ) {\n     while (i != 10000000000) {\n      i++;\n     }\n     printf(\"Durchlauf %d \\n\",a);\n      a++;\n  }\n}\n\n<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">diese Datei m\u00fcssen wir speichern unter &#8222;jipi.c&#8220; Danach tippen wir den Befehl <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">make jipi<br><br>und wie haben ein Programm. ein Start mittels &#8222;.\/jipi &amp;&#8220; wird dieses Programm im Hintergrund laufen lassen. top zeigt es uns an mit entsprechend hoher Auslastung. Wenn ich jetzt das Programm mehrmals starte wird sich die CPU Auslastung um jeweils eine CPU vergro\u00dfern.  Bei 2 CPU muss ich das Programm 2 c starten bei 4 CPU 4 mal. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Merkt ihr an der Performance etwas? <br>Bei voller Auslastung passiert sehr wenig, was ihr merkt. <br>Wir k\u00f6nnen jetzt den Durchlauf mit der Erg\u00e4nzung &#8222;time .\/jipi &amp;&#8220; starten. Nach dem 10. Durchlauf bekommt ihr eine Aufstellung \u00fcber Gesamt-Zeit, Kern- und User-zeit die das Programm verbraucht hat. Die Gesamt-Zeit wird bis zur Nutzung aller CPU nicht wesentlich ver\u00e4ndern danach steigt sie wesentlich an. Also bei 2 CPU wird sich nach dem 3. Start die Durchlaufzeit um 33% erh\u00f6hen. Bei 4 Programmen verdoppelt sich die Laufzeit. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Ein Frontend Programm hat aber keine wesentliche Einschr\u00e4nkungen. Diese Programme, die brav ihren Timeslot abgegeben haben, werden belohnt und bekommen fr\u00fcher wieder eine CPU zugewiesen. <br><br>Wann der Kern nicht mehr mit den Taskwechsel und -verwaltung nicht mehr nachkommt, habe ich in der Praxis noch nicht erlebt. <\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Der ewige Engpass, der Speicher<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Ja das ist er. Jedes moderne Programm benutzt Shared-Libaries. Dies sind Dateien, in denen Programm-Routinen gelagert werden. Unter Windows kennt man sie als *DLL, unter Unix\/Linux werden sie \u00fcblicherweise mit der Endung .so abgelegt. Zum Unterschied von statischen Liberies ( .a Dateien) m\u00fcssen sie im System mindestens einmal vorhanden. <br>Statische Libaries werden beim make-Lauf in das Programm &#8222;kopiert&#8220; und sind damit  fixer Bestandteil des Programmes. <br>Beides hat Vor- und Nachteile ich will da gar keine Partei ergreifen. <br> <br>Speicher kann ich auf einer Vielzahl von Arten benutzen. Jetzt versucht der Kern auch den Speicher so optimal wie m\u00f6glich zu organisieren.Nicht ben\u00f6tigte Bereiche werden auf die Festplatte ausgelagert (Swap). Diesen Vorgang l\u00e4uft unter dem Begriff pageout. Es soll so Programmierer geben die f\u00fcr eine Telefonnummer mit 10 Zeichen, den Speicher f\u00fcr 1 MB anfordern, dann werden 1.048.566 Bytes  nicht genutzt \ud83d\ude09 Sollte die Telefonnummer doch l\u00e4nger sein erfolgt ein pagein und der Speicher kann genutzt werden.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Nun ein pageout ist nicht schlimm, viele pageout sind viele Plattenzugriffe. Wenn ich viele Programme mit vielen statischen Libaries laufen habe, dann sind die Programme auch entsprechend gross und ben\u00f6tigen auch entsprechen Platz im Speicher. <br>Das kann ich im Nornalfall nicht beeinflussen, den solche \u00c4nderungen sind aufwendig test- und zeit-intensiv.  Hier kann ich mir nur mit einer Hardware behelfen. Hohe Pageout und Swap Werte schreien nach Speicher.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Wenn ich selbst programmiere oder programmieren lasse, dann kann man sich diese Werte gezielt anschauen. Auch dazu gibt es eine Unmenge an Tools wie perf oder sar. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">ein File ist ein File ist ein File<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">und damit verlasse ich die k\u00fcnstlerische Ecke. Und widme mich dem I\/O. Da nahezu alles \u00fcber einen Filedescriptor abgebildet ist, kann man auch mit einfachen Mittel darauf zugreifen. Ob man es tun sollte lasse ich einmal dahingestellt. Aber ich kann mit dem vim Editor auf \/dev\/mem zugreifen und auch speichern. Ein System-Halt ist ziemlich sicher vordefiniert.  Aber ein &#8222;cat \/proc\/meminfo&#8220; gibt mir viele Informationen. (Vielleicht ein n\u00e4chster Artikel).  <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Aber zur\u00fcck zu unserem I\/O. Da h\u00e4tten wir den Unterschied zwischen einem 1 Byte-Auftrag und einem 4 MB Auftrag. Ein Schreibauftrag \u00fcber 1 Zeichen ist genau so aufwendig ein Auftrag \u00fcber 4 MB. Ab einer bestimmten Gr\u00f6\u00dfe bringt aber ein gr\u00f6\u00dferer Buffer nichts mehr, weil dann die Hardware nicht mehr mit kann. Bei den meisten Systemen wird das so um die 4MB sein.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Nun top bzw vmstat liefern uns die I\/O-Wert als Gesamtes. Wenn ich es etwas genauer wissen will, dann kann ich es mir mit <strong>&#8222;iotop&#8220; <\/strong> es etwas genauer anschauen. <\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"816\" height=\"520\" src=\"https:\/\/linux-bibel.at\/wp-content\/uploads\/2026\/07\/KuR-SC-robert@schleppi-_003.jpg\" alt=\"\" class=\"wp-image-24422\" srcset=\"https:\/\/linux-bibel.at\/wp-content\/uploads\/2026\/07\/KuR-SC-robert@schleppi-_003.jpg 816w, https:\/\/linux-bibel.at\/wp-content\/uploads\/2026\/07\/KuR-SC-robert@schleppi-_003-150x96.jpg 150w, https:\/\/linux-bibel.at\/wp-content\/uploads\/2026\/07\/KuR-SC-robert@schleppi-_003-300x191.jpg 300w, https:\/\/linux-bibel.at\/wp-content\/uploads\/2026\/07\/KuR-SC-robert@schleppi-_003-768x489.jpg 768w\" sizes=\"auto, (max-width: 816px) 100vw, 816px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><br> Ein weiteres &#8222;File&#8220; ist das Netzwerk. Auch hier fallen mittlerweile ziemlich viele I\/O-Operationen an.  Um die Auslastung des Netzwerks zu beobachten gibt es ein kleines Programm <strong>iptraf<\/strong> bzw<strong> iptraf-ng<\/strong>. Das Programm muss allerdings nachinstalliert werden.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"816\" height=\"520\" src=\"https:\/\/linux-bibel.at\/wp-content\/uploads\/2026\/07\/KuR-SC-robert@schleppi-_004.jpg\" alt=\"\" class=\"wp-image-24423\" srcset=\"https:\/\/linux-bibel.at\/wp-content\/uploads\/2026\/07\/KuR-SC-robert@schleppi-_004.jpg 816w, https:\/\/linux-bibel.at\/wp-content\/uploads\/2026\/07\/KuR-SC-robert@schleppi-_004-150x96.jpg 150w, https:\/\/linux-bibel.at\/wp-content\/uploads\/2026\/07\/KuR-SC-robert@schleppi-_004-300x191.jpg 300w, https:\/\/linux-bibel.at\/wp-content\/uploads\/2026\/07\/KuR-SC-robert@schleppi-_004-768x489.jpg 768w\" sizes=\"auto, (max-width: 816px) 100vw, 816px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"816\" height=\"520\" src=\"https:\/\/linux-bibel.at\/wp-content\/uploads\/2026\/07\/KuR-SC-robert@schleppi-_005.jpg\" alt=\"\" class=\"wp-image-24424\" srcset=\"https:\/\/linux-bibel.at\/wp-content\/uploads\/2026\/07\/KuR-SC-robert@schleppi-_005.jpg 816w, https:\/\/linux-bibel.at\/wp-content\/uploads\/2026\/07\/KuR-SC-robert@schleppi-_005-150x96.jpg 150w, https:\/\/linux-bibel.at\/wp-content\/uploads\/2026\/07\/KuR-SC-robert@schleppi-_005-300x191.jpg 300w, https:\/\/linux-bibel.at\/wp-content\/uploads\/2026\/07\/KuR-SC-robert@schleppi-_005-768x489.jpg 768w\" sizes=\"auto, (max-width: 816px) 100vw, 816px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\"><br>Besonders wenn ihr Glasfaser bis zum Endger\u00e4t benutzt, ist ein Blick vielleicht n\u00fctzlich um einen weiteren Engpass auszuschlie\u00dfen.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Mit diesen Werkzeugen k\u00f6nnt ihr einmal feststellen, ob und wo im System Schwachstellen liegen. Damit ist einmal der erste Schritt getan. Ob man sie einfach beheben kann, steht auf einem anderen Blatt.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Nun gibt es ein paar Kommands um diese Performance etwas zu manipulieren. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Da w\u00e4re die <strong>nice<\/strong>-Befehle, nice erh\u00f6ht\/vermindert der CPU Anforderungen. Das Programm ist dann so nice und fordert mehr\/weniger CPU an. Es l\u00e4uft dann halt l\u00e4nger\/k\u00fcrzer. &#8222;man nice&#8220; gibt mehr Info. <strong>ionice<\/strong> macht das Gleiche mit den IO-Anforderungen. Es empfehlt sich auch hier ein Blick in die &#8222;man ionice&#8220; zu werfen.  <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Dann gib es noch <strong>ulimt<\/strong>. Ulimit gibt einen Prozess nur bestimmte Resourcen und muss VOR dem Start des Programmes gesetzt werden. <\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"816\" height=\"425\" src=\"https:\/\/linux-bibel.at\/wp-content\/uploads\/2026\/07\/KuR-SC-robert@schleppi-_006.jpg\" alt=\"\" class=\"wp-image-24427\" srcset=\"https:\/\/linux-bibel.at\/wp-content\/uploads\/2026\/07\/KuR-SC-robert@schleppi-_006.jpg 816w, https:\/\/linux-bibel.at\/wp-content\/uploads\/2026\/07\/KuR-SC-robert@schleppi-_006-150x78.jpg 150w, https:\/\/linux-bibel.at\/wp-content\/uploads\/2026\/07\/KuR-SC-robert@schleppi-_006-300x156.jpg 300w, https:\/\/linux-bibel.at\/wp-content\/uploads\/2026\/07\/KuR-SC-robert@schleppi-_006-768x400.jpg 768w\" sizes=\"auto, (max-width: 816px) 100vw, 816px\" \/><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">bzw beim Start. Ein Befehl &#8222;ulimit -n 10 mein-programm&#8220; erlaubt dem Programm maximal 10 Dateien zu \u00f6ffnen. So kann man auf CPU-Zeit, Speicher und vieles mehr einengen. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\">besonders wenn man neue Programme und Versionen hat kann man mit dieser Methode den Bedarf der Programme feststellen. Ja es ist aufwendig und man sollte die Werte auch auf Testsystemen herausfinden.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Solltet ihr an einem Thema Interesse finden und tiefer hinein wachsen wollen, bitte eine R\u00fcckmeldung was euch interessiert.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Und zum Schluss<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Alle Programme und Tools wurden auf Debian 13.6 Trixi ausgef\u00fchrt. Einzelne Funktionen k\u00f6nnen auf anderen Distributionen \/Versionen etwas anders lauten\/gespeichert sein. <\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Plaudern wir heute ein bisschen \u00fcber Performance und die Tools. Wie bekommt man eine \u00dcbersicht wie es meinem System denn so geht. Seit Urzeiten wird in Unix-Systemen und dazu z\u00e4hlt auch Linux, die beiden alten Grunds\u00e4tze angewandt: Performance-Messung. Wenn man diese beiden Regeln beherzigt, dann wird einem etn paar Sachen klarer. Nun schauen wir uns [&hellip;]<\/p>\n","protected":false},"author":52,"featured_media":24431,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1,646,539,48,1443,70,17,601,102],"tags":[235,1552,7,6,1680],"class_list":["post-24347","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-allgemein","category-debian","category-dienstprogramme","category-entwicklung","category-grundlagen","category-hardware","category-system","category-systemmonitor","category-tipps-system","tag-kernel","tag-performance","tag-shell","tag-terminal","tag-tools"],"_links":{"self":[{"href":"https:\/\/linux-bibel.at\/index.php\/wp-json\/wp\/v2\/posts\/24347","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/linux-bibel.at\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/linux-bibel.at\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/linux-bibel.at\/index.php\/wp-json\/wp\/v2\/users\/52"}],"replies":[{"embeddable":true,"href":"https:\/\/linux-bibel.at\/index.php\/wp-json\/wp\/v2\/comments?post=24347"}],"version-history":[{"count":18,"href":"https:\/\/linux-bibel.at\/index.php\/wp-json\/wp\/v2\/posts\/24347\/revisions"}],"predecessor-version":[{"id":24435,"href":"https:\/\/linux-bibel.at\/index.php\/wp-json\/wp\/v2\/posts\/24347\/revisions\/24435"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/linux-bibel.at\/index.php\/wp-json\/wp\/v2\/media\/24431"}],"wp:attachment":[{"href":"https:\/\/linux-bibel.at\/index.php\/wp-json\/wp\/v2\/media?parent=24347"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/linux-bibel.at\/index.php\/wp-json\/wp\/v2\/categories?post=24347"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/linux-bibel.at\/index.php\/wp-json\/wp\/v2\/tags?post=24347"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}