【问题标题】:Debian, make-kpkg, and Linux kernel developmentDebian、make-kpkg 和 Linux 内核开发
【发布时间】:2014-01-26 21:41:47
【问题描述】:

Debian 的 make-kpkg 实用程序可以同时构建许多内核部分。设置 CONCURRENCY_LEVEL=cores+1 是获得最佳性能的一般经验法则。这不是一个糟糕的猜测。

我为各种整数编写了这个脚本。这是八核 Xeon 上的内核编译时间。内核配置是 Debian 内核 3.12 软件包的默认配置。

CONCURRENCY_LEVEL=1 real    57m17.953s
CONCURRENCY_LEVEL=2 real    30m26.084s
CONCURRENCY_LEVEL=3 real    21m39.387s
CONCURRENCY_LEVEL=4 real    17m13.022s
CONCURRENCY_LEVEL=5 real    14m41.180s
CONCURRENCY_LEVEL=6 real    13m8.875s
CONCURRENCY_LEVEL=7 real    12m8.646s
CONCURRENCY_LEVEL=8 real    11m55.420s
CONCURRENCY_LEVEL=9 real    13m27.034s
CONCURRENCY_LEVEL=10 real    14m17.753s
CONCURRENCY_LEVEL=11 real    14m45.664s
CONCURRENCY_LEVEL=12 real    15m1.784s
CONCURRENCY_LEVEL=13 real    15m10.595s
CONCURRENCY_LEVEL=14 real    15m19.862s
CONCURRENCY_LEVEL=15 real    15m24.915s

make-kpkg 还会生成一个可以轻松安装的 deb 包文件。相比之下,至少有一个官方的 Fedora 文档经历了手动构建 RPM 的广泛过程,以实现我认为的相同目标 - 自动依赖解析。这很痛苦。我怀疑 Gentoo 会被剥夺对软件包的任何关注,呵呵。

所以我有几个问题想问有经验的内核开发者。并发内核构建了一个巨大的胜利,并且任何其他发行版都提供它吗?考虑到包管理的编译是一个巨大的胜利吗?

提前致谢。

【问题讨论】:

    标签: linux build kernel debian


    【解决方案1】:

    CONCURRENCY_LEVEL 的值只是传递给make-j 选项。这里 Debian 的内核构建过程没有什么特别之处;上游内核源代码已经支持了很多年了。

    【讨论】:

      猜你喜欢
      • 2023-04-04
      • 1970-01-01
      • 2023-03-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-09-23
      • 2017-01-05
      • 2019-05-18
      相关资源
      最近更新 更多