make太慢了,加快编译速度的方法 make -j

2018-01-18 09:04:05 gonghuihuihui 阅读数 21957  收藏 更多

分类专栏: linux

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

本文链接:https://blog.csdn.net/gonghuihuihui/article/details/79091762

make -j
  既然IO不是瓶颈,那CPU就应该是一个影响编译速度的重要因素了。
  用make -j带一个参数,可以把项目在进行并行编译,比如在一台双核的机器上,完全可以用make -j4,让make最多允许4个编译命令同时执行,这样可以更有效的利用CPU资源。

  还是用Kernel来测试:
  用make: 40分16秒
  用make -j4:23分16秒
  用make -j8:22分59秒
  由此看来,在多核CPU上,适当的进行并行编译还是可以明显提高编译速度的。但并行的任务不宜太多,一般是以CPU的核心数目的两倍为宜。

 不过这个方案不是完全没有cost的,如果项目的Makefile不规范,没有正确的设置好依赖关系,并行编译的结果就是编译不能正常进行。如果依赖关系设置过于保守,则可能本身编译的可并行度就下降了,也不能取得最佳的效果。

make太慢了,加快编译速度的方法 make -j相关推荐

  1. VS2013 加快编译速度 的方法整理

    VS2013 加快编译速度 的方法整理 1.更改项目设置 项目|属性|C/C++|代码生成|启用最小重新生成:Yes(/Gm) 项目|属性|C/C++|常规|调试信息格式:程序数据库(/Zi) 项目| ...

  2. C++加快编译速度的方法

    C++的主要优点是高性能, 但是说起编译速度,却只有低调的份了.如果不加以重视,编译速度极有可能会成为开发过程中的一个瓶颈.那么,为什么C++它就编译的这么慢呢? 我想最重要的一个原因应该是C++基本 ...

  3. 跑linux编译什么CPU速度快,linux 加快编译速度

    <操作系统>课程设计报告课程设计题目:操作系统课程设计 设计时间:2016/1/10一. 课程设计目的与要求需要完成的内容:(1) 安装虚拟机:Vmware.Vmware palyer ( ...

  4. 慢腾腾的Quartus prime16.0加快编译速度

    前言 当一个工程反复修改的时候,可能有时候源代码没有更改,为了加快编译速度可以配置quartus一些选项.当然,初次编译的速度是否会提升,未验证.更高级的设计分区以及逻辑锁区提升速度,以后阐述. 流程 ...

  5. win7计算机怎么优化驱动器,Win7优化电脑加快关机速度的方法技巧

    原标题:Win7优化电脑加快关机速度的方法技巧 在使用Win7系统的过程中,很多用户都遇到过关机速度慢的问题,怎么办呢?电脑的关机速度慢和开机速度慢其实是一个道理,一般是由于磁盘.电源等问题造成的.这 ...

  6. 【转】Linux程序编译速度提高方法

    项目越来越大,每次需要重新编译整个项目都是一件很浪费时间的事情.Research了一下,找到以下可以帮助提高速度的方法,总结一下. tmpfs 有人说在Windows下用了RAMDisk把一个项目编译 ...

  7. Linux程序编译速度提高方法

    2019独角兽企业重金招聘Python工程师标准>>> 项目越来越大,每次需要重新编译整个项目都是一件很浪费时间的事情.Research了一下,找到以下可以帮助提高速度的方法,总结一 ...

  8. Ninja提升编译速度的方法-Android10.0编译系统(十)

    摘要:如何通过Ninja来提升Android编译速度 阅读本文大约需要花费10分钟. 文章首发微信公众号:IngresGe 专注于Android系统级源码分析,Android的平台设计,欢迎关注我,谢 ...

  9. 提高编译速度的方法——ccache的使用

    在使用CMake编译大型工程时.如果每次只是单独对一个文件进行修改还好,CMake可以针对修改单独编译,但往往只要对CMakeLists做一点小修改,整个工程就要重新编译,对于普通性能的电脑来说通常非 ...

最新文章

  1. CentOS7 Apache调优之开启deflate压缩模块
  2. 彻底弄懂ICG的基本概念
  3. Delphi中的Rtti函数
  4. 2015-4-20 BAV推广页面修改前后对比-安全网购
  5. log4j配置日志系统成功 (转)
  6. python拷贝是什么知识点_python闭包、深浅拷贝、垃圾回收、with语句知识点汇总...
  7. php pdo连接oracle乱码,php pdo oracle中文乱码的快速解决方法
  8. 清除浮动小记,兼容Ie6,7
  9. IP过滤-驱动和应用程序通信
  10. 如何连接Linux上的服务器 网络编程,Linux 网络编程 一
  11. Win11正版和盗版有什么区别
  12. java 送参数_关于java:如何以编程方式发送带参数的HTTP请求?
  13. 【数据结构的魅力】002.单向、双向链表栈和队列递归
  14. 《数字货币与人民币国际化》读书笔记1
  15. CrossApp更新至0.3.3,推出JS体验版
  16. 腾讯云函数使用方法及注意事项
  17. Day2-开发环境搭建——百问网7天物联网智能家居
  18. SQL-根据生日计算年龄
  19. git 查看远程分支、本地分支、创建分支、把分支推到远程repository、删除本地分支
  20. 一个三线程序员的2020年,CSDN 10 万粉里程碑达成,SpringBoot项目瘦身指南

热门文章

  1. 中国科学院、东南大学等联合发表最新的视觉 Transformer 综述
  2. 双目立体视觉 I:标定和校正
  3. ECCV2020 oral | 基于语义流的快速而准确的场景解析
  4. 三公子论「财务自由」
  5. EPSON机器人的以太网通讯简单总结
  6. 立体视觉动态测量技术
  7. 好用的数据增强工具Augmentor(原图和mask扩充)
  8. ‘vue-cli-service‘ 不是内部或外部命令,也不是可运行的程序
  9. 蛋白Ramachandran(拉氏图、拉曼图)的绘制和可视化
  10. Ubuntu14.04下切换系统自带的Python和Anaconda 下的Python