使用Incredibuild加速CMake工程的构建官宣一则Incredibuild简介使用Visual Studio + CMake + Incredibuild可视化你的工程构建Incredibu
原标题:使用Incredibuild加速CMake工程的构建
官宣一则VisualStudio2017附带了对CMake工程顶级支持 。 自那时以来 , 我们一直在根据开发者的反馈添加新功能 , 从而不断改善对CMake的支持 。 我们以前在博客中介绍了内置的对Incredibuild支持 , 以加速和可视化vcxproj项目 , 并且许多人都要求获得与CMake项目相同的支持水平 。 我们很高兴地宣布 , Incredibuild现在可用于在VisualStudio中加速CMake项目的Windows构建 。
Incredibuild简介Incredibuild提供的产品:虚拟化分布式处理技术(VirtualizedDistributedProcessing)使包含多个并发进程的工作负载自动动态地分布到整个网络或公共云中远程计算机上的数百个 , 甚至数千个空闲的CPU上 。 由于CMake工程在构建时会包含可并行执行的数百个编译任务 , 因此拥有数百个内核供你使用可大大加快构建时间 , 而这正是分布式计算所提供的 。
当用户在后台运行时 , VDP甚至可以在远程计算机上使用空闲的CPU 。 在拥有数百台计算机的组织中 , 任何给定时刻的空闲CPU总数可能很容易达到数千个 。 这些浪费的核心被Incredibuild重新捕获 , 以加速需要计算能力的耗时工作量 。
Incredibuild在安全沙箱中的远程计算机上运行进程 。 Incredibuild从本地主机到远程计算机动态地仿真过程正常运行所需的所有内容 。 这意味着你需要在远程计算机上安装的只是IncredibuildAgent,也即:无需安装VisualStudio , 你的源代码或任何其他构建工具 。 由远程执行的进程生成的任何输出 , 错误 , 返回代码 , 生成的文件等都会自动同步回本地主机 , 就像该进程已在本地执行一样 。
使用VisualStudio+CMake+Incredibuild在VisualStudio安装程序中 , 请确保选中”C++CMaketoolsforWindows”和”IncrediBuild–BuildAcceleration”的这两个复选框 , 如下图所示:
文章图片
安装后 , Incredibuild工具栏和菜单将出现在VisualStudio开发环境中 , 提供Incredibuild的分布式Build和Rebuild操作 。
可视化你的工程构建你可以直接在IDE中利用的Incredibuild的另一个优点是IncredibuildBuildMonitor工具 。 该构建可视化工具以流畅 , 直观的图形界面替换了文本输出 , 将构建转换为可以轻松使用的可视元素 , 并帮助你发现持续时间长 , 错误 , 警告 , 瓶颈和依赖性 。
让我们看一下我们曾经使用过的标准文本输出:
文章图片
现在看一下使用IncredibuildBuildMonitor工具无缝集成到VisualStudio中的界面:
文章图片
每种颜色都代表构建任务状态 , 使你可以立即确定哪些构建任务没有问题 , 哪些需要引起注意 。
条的宽度表示特定任务的持续时间 , 侧面导航栏显示了执行任务的特定计算机和核心 。
Incredibuild的加速效果以下数据基于通过编译流行的核心OpenCV开源项目以建立已知基准而在MSBuild上运行CMake的数据 。
本示例使用Ninja生成器 , 但支持所有VisualStudio生成器 。 以下是Incredibuild的结果:
文章图片
这是CMakeOpenCV编译时在构建监视器中的外观 。 
文章图片
总而言之 , 性能提升了9.5倍 , 这意味着开发人员可以花更多的时间在区域中构建出色的代码 , 而花更少的时间等待代码构建 。 在此特定用例中 , 在此示例中使用的100多个处理器核 , 向Incredibuild池中添加其他处理器核将可以得到更好的编译时间 。
持续集成 , 持续改善你可以使用相同的Incredibuild基础结构 , 以选择的CI/CD加速CMake项目 , 以获取完整的体验 , 还可以加速构建或其他计算密集型过程(如代码分析 , 代码签名 , 各种测试)中的单元测试等等 。
总结对于大型工程 , 编译时间太长的确是一件十分麻烦的事情 。
一定不能让你的工程构建时间不超过1小时 。
最后MicrosoftVisualC++团队的博客是我非常喜欢的博客之一 , 里面有很多关于VisualC++的知识和最新开发进展 。 大浪淘沙 , 如果你对VisualC++这门古老的技术还是那么感兴趣 , 则可以经常去他们那(或者我这)逛逛 。
本文来自:《SeamlesslyAccelerateCMakeProjectsinVisualStudiowithIncredibuild》
【使用Incredibuild加速CMake工程的构建官宣一则Incredibuild简介使用Visual Studio + CMake + Incredibuild可视化你的工程构建Incredibu
- 10岁男孩半年长高12厘米,1种食物是“加速器”,宝妈多给娃吃
- 王者荣耀:适合五虎上将五排开黑使用的头像
- 浙商证券:药明康德(02359)CDMO加速获验证,2021年仍可期
- 备用金|经常支取支付宝备用金影响借呗额度吗?那是肯定的,但要正确使用
- 屏幕真的是升级?红米K40对比小米10和红米K30至尊,结果纠结了!手机屏幕成为关键看点好的屏幕在使用过程中会非常舒服红米K30至尊版跟不上节奏红米K
- 《GTA5》使用大表哥2的引擎之后?画质瞬间提升档次?这是游戏?
- 胖女孩的减肥式造型,使用连衣裙遮挡“赘肉”,展现苗条身材
- 神仙友情!毛加恩宣布妻子生子,孩子名字使用“高以翔”元素
- DNF:玩家福音,侠客行、讨伐战加速护石毕业,你准备好了吗?
- 护肤品的神仙搭配组合,比单一使用功效更好,你都了解吗
