Verbessert das Kompilieren von Anwendungen aus dem Quellcode die Geschwindigkeit und/oder den RAM?

Verbessert das Kompilieren von Anwendungen aus dem Quellcode die Geschwindigkeit und/oder den RAM?

Ich verwende Linux seit einigen Monaten und verwende derzeit Arch auf einem alten Desktop. Ich habe großartige Dinge über das Kompilieren von allem aus dem Quellcode gehört, zum Beispiel, dass Gentoo und andere ähnliche Distributionen rasend schnell sind. Ich habe es noch nie verwendet und habe auch nicht vor, es in naher Zukunft zu tun. Ich möchte jedoch möglicherweise meine täglichen Anwendungen beschleunigen. Ich frage mich auch, ob ich GCC oder den C-Compiler von Intel verwenden sollte. Normalerweise verwende ich höchstens 2 GB RAM, aber ich habe einen alten und langsamen Prozessor. Soll ich alle meine Anwendungen aus dem Quellcode kompilieren oder weiterhin Binärdateien verwenden?

Danke!

Antwort1

Die Antwort ist ja. Spürbar? Fast nie.

Abhängig von der Hardware, auf der Sie es ausführen, „könnte“ die Geschwindigkeit verbessert werden, da Sie alle Optimierungen nutzen können, die Ihre CPU bietet. Beachten Sie jedoch, dass eine Anwendung die meiste Zeit nur Bibliotheken verwendet. Um diese Vorteile zu nutzen, sollten Sie beispielsweise vollständig auf Gentoo umsteigen.

Lohnt sich der Aufwand? Wahrscheinlich nicht, es sei denn, Sie verwenden ziemlich alte Hardware oder müssen viel Rechenarbeit leisten oder etwas, das so oft pro Sekunde ausgeführt wird, dass jeder Befehl zählt.

Die aktuelle Hardware ist im Grunde die meiste Zeit im Leerlauf, und das ist eine Tatsache, die Dinge wie SETI@home, Folding@home, Great Mersenne Prime Search usw. ermöglicht.

Bei älterer Hardware hilft die Konfiguration möglicherweise mehr als eine Neukompilierung (die ihre eigenen Probleme mit sich bringt, beispielsweise Wartung, Sicherheitsfixes und Abhängigkeitsverfolgung).

Beispielsweise ist es bei Systemen mit wenig Arbeitsspeicher sehr hilfreich, Firefox so zu konfigurieren, dass nur ein oder zwei parallele Inhaltsprozesse verwendet werden. Wenn die CPU Ihr Problem ist, sollten Sie bestimmte Dienste oder Hintergrundaufgaben deaktivieren oder manuell ausführen. Tumblerd kann einen alten Computer leicht zum Absturz bringen, ebenso wie updatedb.

Immer auf der Konfigurationsseite können Sie neu kompilieren, um nicht benötigte Bibliotheken/Dienste zu deaktivieren oder andere Felder anzupassen. Beispielsweise beim Erstellen von LibreOffice mit --disable-pdfimport. In diesem allgemeinen Fall wäre es immer noch besser, die in Ihrem System verwendeten Quellpakete (nicht Upstream) herunterzuladen und diese zu optimieren. Es gibt nicht viel zu gewinnen, aber viel zu lernen.

Beachten Sie auch, dass die Geschwindigkeit einer Anwendung in manchen Fällen durch die E/A-Geschwindigkeit der Festplatte oder des Netzwerks begrenzt sein kann. In diesen Fällen ist nicht zu erwarten, dass die Kompilierung der Software aus dem Quellcode die Leistung verbessert.

verwandte Informationen