为什么编译器编译.c会这么慢,好电脑编译个.C也要花半秒左...
我想这种编译限制速度的瓶颈在哪啊?一个.c文件弄成一个bin,为什么会花上半秒或者1秒时间。计算量究竟有多大? 1秒还慢?你想多快. ztrx 发表于 2015-10-31 20:18
1秒还慢?你想多快.
我想知道那个限制速度的瓶颈在哪个地方 .C 变成.BIN 里面包含了多个过程的,预处理,预编译,编译,链接。文件转换,1S已经很快了。{:lol:}{:lol:} mmiker 发表于 2015-10-31 20:27
.C 变成.BIN 里面包含了多个过程的,预处理,预编译,编译,链接。文件转换,1S已经很快了。 ...
那样的话人工来弄得要一年了啊 3050311118 发表于 2015-10-31 20:38
那样的话人工来弄得要一年了啊
一年未必干完 同时只能执行一个文件编译肯定慢啊
可以试着多线程编译,这样就快
同样吧一个.c文件里面的函数全部切开分别用多线程编译这是最快的
还有就是优化和指令集复杂程度了 哪个编译器,编译什么代码? 不知换个固态盘效果怎么样 MDK WIN7 比XP慢 楼主的好电脑是什么配置 main();实测不用一秒 要看c文件多大的咯。 你用汇编来编写,编译成bin就快了。
编译原理中有说过,编译要经过,词法分析,语法分析,语意分析…… 3DA502 发表于 2015-10-31 21:33
不知换个固态盘效果怎么样
+1机械盘运动花掉不少时间. MDK如果能做到像LABVIEW那样的编译方式就好了 3DA502 发表于 2015-10-31 21:33
不知换个固态盘效果怎么样
编译的过程应该只和CPU性能有关吧,硬盘对编译的影响应该不大 ct317548608 发表于 2015-10-31 23:50
编译的过程应该只和CPU性能有关吧,硬盘对编译的影响应该不大
我觉得也如此 浮生莫若闲 发表于 2015-11-1 10:58
我觉得也如此
其实也不是。拿gcc做例子。首先执行gcc。然后fork个cpp。cc1 cc2接着还有collectc。最后还有执行as和ld(可选)。win下createprocess开销很大,而且还要读盘和写盘。你换SSD,提高这些程序的加载速度和写入临时文件的速度会帮助很大 你没围观过安卓狗的编译哈哈
之前我就见过同事~~
用2400元的I7,32G内存 256固态~~也是要有耐性的~~~~ 要是见过FPGA的编译。你都想哭了,
编译一次稍微大点的工程都是半个小时。
换SSD,编译C计算量没那么大。 jcrorxp 发表于 2015-11-1 14:03
你没围观过安卓狗的编译哈哈
之前我就见过同事~~
用2400元的I7,32G内存 256固态~~也是要有耐性的~~~~ ...
MAC PRO表示编译安卓很慢,30S-300S左右 编译一个Android的系统镜像大概要6个多小时。 硬盘速度跟编译速度也是密切相关的,在笔记本机械硬盘编译需要4秒-7秒的工程在SSD上只需要1秒。 编译会产生目标文件
链接也需要用到.o文件,硬盘的影响怎么可能不大 自从编译器支持并行编译,已经快多了。 1s还嫌慢?我都点编译,睡一会儿。然后再看……
页:
[1]