从源代码编译应用程序是否会提高速度和/或 RAM?

从源代码编译应用程序是否会提高速度和/或 RAM?

我已经使用 Linux 几个月了,目前在旧桌面上运行 Arch。我听说过关于从源代码编译所有内容的伟大事情,例如,Gentoo 和其他类似的发行版速度非常快。我从未使用过它,而且我不打算很快使用它。但是,我可能想加快我的日常应用程序速度。我还想知道我应该使用 GCC 还是 Intel 的 C 编译器。我通常最多使用 2 GB RAM,但我的处理器又旧又慢。我应该从源代码编译所有应用程序还是继续使用二进制文件?

谢谢!

答案1

答案是肯定的。明显吗?几乎从不。

根据您要运行它的硬件,速度“可能”会得到提高,因为您可以使用 CPU 提供的任何优化。但请注意,大多数时候应用程序只是使用库,因此为了利用它,您应该使用完整的 Gentoo。

值得付出努力吗?可能不会,除非您在相当旧的硬件上运行,或者您正在做一些严肃的数字运算或每秒运行很多次的事情,每个指令都很重要。

当前的硬件大部分时间基本上处于闲置状态,而这一事实允许诸如 SETI@home、Folding@home、Great Mersenne Prime Search 之类的东西......

在较旧的硬件中,配置可能比重新编译更有帮助(重新编译会带来一系列问题,例如可维护性、安全修复和依赖项跟踪)。

例如,将 Firefox 配置为仅使用一两个并行内容进程对低内存系统有很大帮助。如果 CPU 是您的问题,您可能需要禁用或手动运行某些服务或后台任务。 Tumblerd 可以轻松杀死旧计算机,updatedb 也是如此。

始终在配置方面,您可以重新编译以禁用不需要的库/服务或调整其他字段。例如使用 --disable-pdfimport 构建 libreoffice。在一般情况下,您最好还是下载系统中使用的源包(而不是上游)并调整它们。收获不多,但要学习的却很多。

另请注意,应用程序的速度有时可能受到磁盘或网络 I/O 速度的限制。在这些情况下,从源代码编译软件并不能提高性能。

相关内容