USACH 发表于 2011-6-22 20:18:45

arm-linux-gcc 完全编译uboot不超过10秒,完全编译内核不超过2分钟。

原来的电脑是双核的,四核的,但是虚拟机一直是2核心的。
    今天受够蜗牛的速度,Uboot起码3分钟,实在太慢啦。

    今天心血来潮,把一个双路共8核心的服务器装上vmware7和FC15,设置成8核心。
    然后编译uboot
    make clean
    make -j32(这个参数很重要,多线程同时编译,也就是因为这个我才想起利用多核心电脑来提高编译速度。make -jn表示n个线程同时编译)

    不到10秒大功告成。

quzegang 发表于 2011-6-22 20:33:32

我的双核台机编译linux内核要10来分钟,等啊等

billowtust 发表于 2011-6-22 20:42:56

可是电脑的CPU还是AMD 1.5G单核,咋办?

确实受不了那蜗牛般的速度

最近移植了u-boot-2011.06-rc2,放在MINI2440板子上跑起来了

USACH 发表于 2011-6-22 20:59:53

回复【2楼】billowtust
-----------------------------------------------------------------------

12M的晶振还是16M的?

USACH 发表于 2011-6-22 21:00:26

回复【1楼】quzegang 流浪沙坪坝
-----------------------------------------------------------------------

我今天也是心血来潮,接下去就用这个NB的机器干活啦,爽啊。

aozima 发表于 2011-6-22 21:27:15

j8 和 j32 谁快?

USACH 发表于 2011-6-23 03:28:39

回复【5楼】aozima
-----------------------------------------------------------------------

那当然是j32啦j8用不完cpu的。

dr2001 发表于 2011-6-23 08:16:58

内存比较充裕的,直接make -j即可,Make会玩命并行。

如果有数字的,
- 每个C文件的代码量都千百行这种,数字的倍数可以取的大,内核数目乘三以上一般就不会有更明显的加速了。
- 每个C文件的代码量很大,每个文件编译要半天,那内核数目乘1.5到2已经足够了。

说白了就是编译器启动/准备/写回等操作不占那么多CPU但是也不少花时间,并行了能省不少时间。

gycsy 发表于 2011-6-23 08:52:47

诺干年前,在虚拟机下编译内核要一两个小时../emotion/em103.gif

aozima 发表于 2011-6-23 08:59:00

回复【7楼】dr2001
内存比较充裕的,直接make -j即可,make会玩命并行。
如果有数字的,
- 每个c文件的代码量都千百行这种,数字的倍数可以取的大,内核数目乘三以上一般就不会有更明显的加速了。
- 每个c文件的代码量很大,每个文件编译要半天,那内核数目乘1.5到2已经足够了。
说白了就是编译器启动/准备/写回等操作不占那么多cpu但是也不少花时间,并行了能省不少时间。
-----------------------------------------------------------------------

了解,以前也实测过. 核的1~4倍关系关不太大,再向上就反而慢了.
原来以为一个核多于一个会更慢. 因为要进程切换.

"编译器启动/准备/写回等操作不占那么多cpu但是也不少花时间,并行了能省不少时间"
这下明白了.

billowtust 发表于 2011-6-23 09:22:00

回复【3楼】USACH 美丽坚和中国
回复【2楼】billowtust
-----------------------------------------------------------------------
12m的晶振还是16m的?
-----------------------------------------------------------------------

放在MINI2440上跑的,板上用的12M晶振
页: [1]
查看完整版本: arm-linux-gcc 完全编译uboot不超过10秒,完全编译内核不超过2分钟。