Tag Archives: 编译器

IBM上海招聘编译器开发及测试人员

IBM上海即将成立编译器开发团队,和IBM加拿大的编译器团队合作开发IBM XL C/C++ and Fortran Compilers的新版本。 招聘对象:2010年毕业的学生,或已经工作在编译器领域的人员 基本技能:C++编程,计算机系统结构,Linux 工作地点:上海张江 入职时间:即日起至2010年年底 点击以下链接申请或直接将简历发到shub@cn.ibm.com. C/C++ & Fortran Tester https://jobs3.netmedia1.com/cp/job_summary.jsp?job_id=SWG-0273896 C/C++ & Fortran front-end Developer https://jobs3.netmedia1.com/cp/job_summary.jsp?job_id=SWG-0273865 Back-end Developer https://jobs3.netmedia1.com/cp/job_summary.jsp?job_id=S_D-0273882 转自:瀚海星云

Posted in IT职业和生活, 编译器相关招聘信息 | Tagged , , | Leave a comment

认识静态链接库

介绍静态链接库是什么,为何要有静态链接库,动态链接库和共享库,如何使用,创建,编辑静态练级库。 Continue reading

Posted in 系统软件及库, 编译技术 | Tagged , , , , , , , , , , , , | Leave a comment

前瞻-拿起SIMD的武器II

上篇文章《前瞻-主流处理器中的数据并行支持(SIMD)>和《前瞻-拿起SIMD的武器I》分别介绍了当今主流CPU中的SIMD扩展 ,以及前人是如何利用SIMD来做优化的,本文<前瞻-拿起SIMD的武器II>将探讨如何使用CPU的向量指令为程序做优化 如何实现? 编程环境 在现在CPU设计中都加入SIMD扩展并不是解决应用性能问题的好方法。如果没有很好的利用途径,再强大的SIMD扩展指令集都是徒劳。接下来,我们从编译器技术和编程方法论上探讨如何使用SIMD指令来实现应用加速。

Posted in 后端优化与处理器, 编译技术 | Tagged , , , , , , , , , , , , , , , , , , , , , , , | 6 Comments

前瞻-拿起SIMD的武器I

上篇文章《前瞻-主流处理器中的数据并行支持(SIMD)》 介绍了当今主流CPU中的SIMD扩展,本文将介绍前人是物和利用SIMD来做优化的,下篇<前瞻-拿起SIMD的武器II>将探讨如何使用CPU的向量指令为程序做优化 已有在SIMD上的优化工作: 正如之前提到的,SIMD对具有以下特性的程序性能提升明显:天然数据并行,访存模式重复、在局部数据上重复操作、控制流数据无关。很多应用有这方面的特性,并能通过使用SIMD扩展提高性能,但实际仅有小部分从中获益,接下来将介绍在单核处理器上,利用Intel的SIMD扩展针对某些应用提升性能的研究,如多媒体,数据安全,数据库和一些科学计算应用。 多媒体处理 多媒体处理需要软件和硬件的很多支持。如MPEG-1,MPEG-2,MPEG-4,MPEG-7,H.263,JPEG2000等需要实时做复杂的媒体处理.3D图像和立体视频处理都需要更强劲的实时处理.因为各种媒体都需要不同的处理方式,技术支持、算法和硬件,因此针对他们的SIMD扩展改进也很不同。

Posted in 后端优化与处理器, 编译技术 | Tagged , , , , , , , , , , , , , , , , , | 4 Comments

期待未来-一张趣图

先看图 图片来自《科学松鼠会》,很棒的探索新知的网站:) 生物信息学里把DNA序列看成生物体的操作系统,这张图左侧是大肠杆菌的控制网络,右侧是Linux系统的。

Posted in 编译前沿, 编译技术 | Tagged , , , , , , , , , | 7 Comments

前瞻-LLVM大事记(2004-2010)

因为之前的两篇博文前瞻-全时优化和LLVM-1和前瞻-全时优化和LLVM-2都是基于Chris Lattner 2004年发表在CGO的文章写的。所以需要介绍一下LLVM从2004到2010这六年的变化,LLVM的开发社区很活跃。 从2004年三月到2010年4月,LLVM共发布了1.2-1.9,2.0-2.7,16个版本,至少每年发布两个版本。详细的历史发布版本和release都能从这里找到。

Posted in LLVM, 编译前沿, 编译技术 | Tagged , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , , | 8 Comments

风河北京研发中心招编译器研发工程师

职责:负责风河编译器的维护和新需求的开发。 要求:至少计算机相关专业毕业本科以上学历,三年以上编译器相关开发经验,有GCC或LLVM编译器的相关开发经验更佳。 符合条件且对这个职位感兴趣的XDJM请发中英文简历至liyong.zeng@windriver.com. 转自 ChinaUnix http://linux.chinaunix.net/bbs/viewthread.php?tid=1162208

Posted in IT职业和生活, 编译器相关招聘信息 | Tagged , , , , , , | 1 Comment

前瞻-全时优化和LLVM-2

上篇文章,以论文为主要依据,介绍了LLVM的概况和中间表示,本篇关注论文的后半部分内容–架构设计和LLVM的整体评测: LLVM的架构设计: 总览 LLVM的架构设计以让传统的链接时,安装时,运行时和空闲时代码转换都能透明地在LLVM中间表示上展开为目的。上图就是LLVM的高层设计架构。包括静态的编译器前端用于生成LLVM中间表示;连接器用于做连接时优化,尤其是过程间优化。连接器的输出被JIT或者机器代码生成器生成机器代码。在机器代码生成时,可以通过插入低代价的抽样指令来测量运行时的profile,检测热代码,并将空闲时进行优化。

Posted in LLVM, 编译前沿, 编译技术, 编译理论实践和应用 | Tagged , , , , , , , , , , , , , , , , | 3 Comments

LLVM 2.7 发布

LLVM新版本相对于2.6增加了很多新特性并对很多功能做了改进.包括生成代码质量显著提高、生成调试信息的改进以及核心架构生的很多新特性。最令人兴奋的特性是Clang(LLVM的前端)能自举。自举是任何编译器实际开发中最令人兴奋的里程碑,而且也标志着Clang对复杂的C++标准大部分支持。 LLVM是苹果公司主导开发的下一代编译器,目标是能实现全时优化,即在编译时静态分析源代码实现优化;链接时分析所有源码文件做更加激进有效的过程间优化;运行时使用实时编译进行实时优化,并采集使用信息;空闲时利用使用信息实现反馈优化。但目前LLVM还很不完善,很多功能还亟待开发和完善。目前LLVM仅支持C语言和部分C++. LLVM已经应用在不少场合。如,Google用它作为一个Python解释器的底层实现(Unladen Swallow)。苹果公司用它实现Mac OS中OpenCL的底层支持。 Chris Lattner 声明 LLVM 2.7发布的邮件 LLVM 2.7 release notes

Posted in LLVM, 编译技术 | Tagged , , , , , | 1 Comment

关于《编译点滴》的定位和未来

独立博客该有点什么,该写点什么,在编译点滴建站接近半年的后,忽然间有点迷茫。编译点滴该放点什么东西,博客该记录点什么,什么是该记录的,什么不该记录。虽然概括之就是自己觉得好的都能往上放。 看看现在博客里的文档,太散太杂。虽然刚刚建博的时候,很是花了一些心思写文章,找主题。但到博客的界面主题倒是换了不少,但内容实在是有点对不起观众。高达70%的跳出率说明了一切:) 幸好无意中看到了一个博客,观摩了半天后,对《编译点滴》的未来有了些想法。顺便推荐这个博客《我爱自然语言处理》。作者很用心的写了很多和自然语言处理相关的文章。博客文章很系统,自成体系。

Posted in 程序员生活 | Tagged , , , , , , , , , , | 5 Comments