ソースからアプリケーションをコンパイルすると、速度やRAMが向上しますか?

ソースからアプリケーションをコンパイルすると、速度やRAMが向上しますか?

私は数ヶ月間Linuxを使用してきましたが、現在古いデスクトップでArchを実行しています。たとえば、Gentooや他の同様のディストリビューションが非常に高速であるなど、ソースからすべてをコンパイルすることについて良いニュースを聞きました。私は一度も使ったことがなく、今後も使うつもりはありません。しかし、日常的なアプリケーションのスピードを上げたいと思うかもしれません。 GCCを使うべきか、インテルのCコンパイラを使うべきかを知りたいです。私は通常最大2GBのRAMを使用しますが、プロセッサは古くて遅いです。ソースからすべてのアプリケーションをコンパイルする必要がありますか、またはバイナリを引き続き使用する必要がありますか?

ありがとうございます!

答え1

答えは「はい」です。明らかですか?ほとんどない。

実行するハードウェアによっては、CPUが提供するすべての最適化を使用できるため、速度が「向上する」ことがあります。ただし、ほとんどの場合、アプリケーションはライブラリのみを使用するため、これを利用するにはGentoo全体を使用する必要があることに注意してください。

努力する価値がありますか?かなり古いハードウェアで実行されているか、深刻な数値処理タスクを実行する場合、またはすべてのコマンドが重要な毎秒数回実行されるタスクを実行しない限り、おそらくそうではありません。

現在、ハードウェアが本質的にほとんどの時間アイドル状態にあるという事実は、SETI @ home、Folding @ home、Great Mersenne Prime Searchなどの機能を可能にします。

古いハードウェアでは、構成が再コンパイルするよりも便利です。再コンパイルすると、保守性、セキュリティ修正、依存関係の追跡などの独自の問題が発生します。

たとえば、1つまたは2つの並列コンテンツプロセスのみを使用するようにFirefoxを設定すると、メモリが不足しているシステムで大きな助けになる可能性があります。 CPUが問題の場合は、特定のサービスまたはバックグラウンドジョブを無効にするか、手動で実行する必要があります。 Tumblerdは、更新されたように古いコンピュータを簡単に殺すことができます。

常に構成の観点から不要なライブラリ/サービスを無効にしたり、他のフィールドを調整したりするために再コンパイルできます。たとえば、--disable-pdfimport を使用して libreoffice をビルドします。通常、アップストリームではなく、システムで使用されるソースパッケージをダウンロードして調整することをお勧めします。得ることはあまりありませんが、学ぶことはたくさんあります。

さらに、アプリケーションの速度は時々ディスクまたはネットワークI / O速度によって制限されることがあります。このような場合、ソースからソフトウェアをコンパイルしてもパフォーマンスは向上しません。

関連情報