本帖最后由 gdf0227 于 2025-8-18 09:43 编辑
一、背景
最近使用keil一直遇到编译速度慢的问题,sdk demo都要编译两三分钟。。。同样的代码,明明之前编译很快,想着可能电脑用久了,硬盘不行,内存不够等原因导致编译速度变慢,就一直没去深究这个问题,尽量不使用build all去规避。直到某天和小伙伴不经意聊起,他也有同样的困惑,才发现原来不止我遇到这个问题,便开始研究如何去优化
二、解决方案
1.设置keil里的并行任务数到4以下:
在edit选项里选择最下面的configuration,然后弹出框里选择最右边的other界面,最下面的Number of parallel jobs设置成4,我之前是14,修改后编译就很快了
至于为啥设置4可以,设置14就不行呢?--通俗的说,设置的并行任务太多,内核和线程不够,那么任务就在打架抢线程,造成了堵塞,并没有进行有效的编译。所以要根据自己电脑内核和线程的配置合理设置。
2.很多小伙伴通过修改并行任务数,效果不明显,这边也查到另外一种办法,那就是关掉微软的MSPC服务,全部关掉也不合理,影响最大的是下图的MSPCMangerService。具体操作如下:
①win+r后输入msconfig回车:
②进入了系统配置界面,选择服务栏。进入系统配置下的服务页面,去掉MSPCMangerService前面的勾,点击应用,表示禁用MSPC服务。接下来最重要的一步,关掉系统配置界面,系统会提示重启电脑。重启电脑后设备即生效,不重启该设置不会生效。
|