数智资源网
首页 首页 大数据 查看内容

GCC并行编译大型源代码文件性能大幅提升

木马童年 2020-10-31 08:25 72 0

虽然 GNU Make 和其他构建系统可以很好地进行扩展以并发编译大量文件,不过 GCC 自身也一直在让 GCC 的更多工作在编译大型源代码文件时能够并行执行。早在2019年夏天,其团队就已开始尝试解决并行化遇到的瓶颈,让更 ...

虽然 GNU Make 和其他构建系统可以很好地进行扩展以并发编译大量文件,不过 GCC 自身也一直在让 GCC 的更多工作在编译大型源代码文件时能够并行执行。

早在2019年夏天,其团队就已开始尝试解决并行化遇到的瓶颈,让更多的编译器工作在更大的源代码文件中能够并行运行,并取得了不错的进展。曾参与开发的学生开发者 Giuliano Belinassi 现在又回到了 GSoC 并继续此项工作。

Giuliano 近日提供了关于“自动并行编译可行性”的第二份报告,该报告旨在加快大文件的编译以及为 GNU Jobserver 进行集成。

GCC并行编译大型源代码文件性能大幅提升

该代码目前可正常运行,其他开发者也可以通过 GCC 的分支版本进行尝试。数据显示,在四核 Intel Core i7 移动处理器上的提速范围从轻微减速提升到原始 GCC 代码的 1.9 倍速度左右。目前,GCC 的 C、C++ 和 Fortran 前端都支持这项工作,而其他前端可能会在一段时间内出现。

Giuliano 在的状态报告中总结道:“目前项目进展顺利,尽管诸如禁用 static promotion 之类的保守方法可能会对并行性潜力产生负面影响。未来解决此问题的方法之一是将最终的汇编文件传送回主 GCC 进程,然后再串联成一个汇编文件,而不是对多个汇编文件进行部分链接。这当然会增加进程间通信的成本,但最终的结果应该是值得的。”

最后,希望这项工作能够继续顺利进行,并且 GCC 的并行化改进在不久的将来最终成为上游项目。

声明:文章收集于网络,版权归原作者所有,为传播信息而发,如有侵权,请联系小编删除,谢谢!

欢迎加入本站公开兴趣群

软件开发技术群

兴趣范围包括:Java,C/C++,Python,PHP,Ruby,shell等各种语言开发经验交流,各种框架使用,外包项目机会,学习、培训、跳槽等交流

QQ群:26931708

汇编
0
为您推荐
HIVE数据仓库完美实战课程,资源教程下载

HIVE数据仓库完美实战课程,资源教程下载

课程名称【快速掌握HIVE视频教程】HIVE数据仓库完美实战课程课程目录├第一周:hive基…...

尚硅谷大数据Flink技术与实战,资源教程下载

尚硅谷大数据Flink技术与实战,资源教程下载

课程名称尚硅谷大数据Flink技术与实战课程目录理论_Flink基础 001__Flink理论_Flink…...

廖雪峰-2019大数据分析精品资料价值1980元,资源教程下载

廖雪峰-2019大数据分析精品资料价值1980元,资源教程

课程介绍:廖雪峰大神历时3个月打磨出来的《数据分析必备技能》的视频学习资料,由浅…...

尚硅谷-大数据项目之电商数仓教程下载

尚硅谷-大数据项目之电商数仓教程下载

课程介绍:本课程以国内电商巨头实际业务应用场景为依托,对电商数仓的常见实战指标以…...

小码哥李明杰Java版《恋上数据结构与算法》 ,资源教程下载

小码哥李明杰Java版《恋上数据结构与算法》 ,资源教

课程目录01-学前须知01-为什么要学习数据结构与算法02-编程语言的选择03-课程大纲04-…...

阿里云大数据分析师ACP认证视频教程下载

阿里云大数据分析师ACP认证视频教程下载

课程介绍阿里云大数据行业认证-大数据分析师认证(ACP-Alibaba Cloud Certified Prof…...

恋上数据结构与算法(第二季),视频教程下载

恋上数据结构与算法(第二季),视频教程下载

课程介绍:课程由MJ老师和名企算法大咖共同研发,在保证易懂的同时确保课程的系统全面…...

社交网络分析与挖掘,视频教程下载

社交网络分析与挖掘,视频教程下载

课程介绍:社交网络和数据挖掘是计算机学科相关研究中的热点,其具体研究涵盖理论、关…...