Intel C++编译器和VTune的免费版本

Intel的C++和Fotran编译器被广泛认为是IA-32平台上最好的编译器。我最早试用Intel C++编译器是在2001年初,当时Intel刚刚收购Kai C++,Intel C++编译器的的版本号是5.0。那个时候我不太清楚Intel做编译器用意何在,也不知道他们会不会坚持下去,所以没太在意。结果证明,Intel对这个领域是很认真的,在不到7年时间里从5.0做到10.0,这样的力度在整个业界可以说是绝无仅有。Intel为啥要玩命地做优化编译器呢?今年4月Intel的高级副总裁Renee James来访时,提到这个问题,她没说得很详细,但是大意是说,要对Intel自己的CPU提供有力的支持。

这些年来Intel在CPU的设计上花费了大量的心血,增加了很多新的功能,多核且不必说,矢量化操作也是很值得一提的。当初P4 NetBurst架构主要是对访存密集性应用比较有效,比如网络文件服务器之类,在CPU密集型计算任务中,P4表现很一般。所以到了Pentium M和 Core Duo,比较重视计算密集型任务的支持,主要改进集中在矢量化操作上。由于采用了SIMD,对于某些类型的应用(比如矩阵运算、图形图像、信号处理之类),性能可以获得大幅度提升。但是主要的编译器软件提供商们对于支持这些最新CPU技术的热情并不高,现有的IA-32编译器基本上还是产生古典的i386代码。长期积累下来,用户花大价钱买的先进CPU有很多能力都被闲置。这种情况损害了用户的利益,最终也会损害Intel等芯片厂商的利益。也难怪Intel实在按捺不住,撸袖子亲自上阵做compiler了。不过这件事情对我们用户来说绝对是好事。Intel在这上头真是做了不少好东西,C/C++和Fortran编译器,VTune程序性能分析器,高性能数学库MKL,主要用于信号处理的IPP库,简化多线程开发的TBB(Threading Building Blocks)和ThreadChecker等,对于性能要求比较高的开发工作来说,都是很好的工具。

Intel的编译器是收费的,虽然价格并不算太高,也就几百美刀,不过对于学习和自由软件的开发者来说,还是一个负担。前两天去Intel软件的网站上看到了他们的一个新的program,提供Linux平台上非商业软件开发者免费的软件工具,包括全套C/C++/Fortran编译器、VTune、MKL、IPP、ThreadChecker和TBB。我下载了C++ compiler。尽管我的Ubuntu 7.04不在直接支持的OS之列,但是运行install.sh还是很顺利地安装了。Linux版的icc与gcc命令行格式基本兼容,我编译了几个C程序,对比了一下产生出来的汇编代码。因为对icc产生的汇编格式和风格不熟悉,现在还没法给出一个客观的对比评价。不过icc的汇编输出显然是比gcc多不少内容。ICC有一些很有意思的功能,比如自动并行化、自动矢量化等,很值得玩味一把。

遗憾的是,VTune的安装不顺利,安装脚本报错,说发现一个非法替换(bad substitution)。不知道是怎么回事。我对bash不熟,网上也找不到有关的解决方案。希望不久这个问题能被解决。

这套非商业软件开发版工具的下载登记入口地址在这里。有兴趣的可以自己去了解一下。如果你解决了VTune安装的问题,烦劳告知。

   

        
  • 4
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 16
    评论
Intel C++ 编译器Windows版》(Intel.C.Plus.Plus.Compiler.v10.0.026)[Bin] 软件版权归原作者及原软件公司所有,如果你喜欢,请购买正版软件 常驻服务器 : DonkeyServer No2, 7x24, 根据工作需要暂停 [版本说明] 截止到2007-08-15为最新版, 仅包含Windows平台, 支持 IA32 / Intel64 / IA64处理器 [病毒检测] NOD32 v2.7 2007-08-15 [安装测试] Windows 2003 SP2 / Visual Studio 2005 SP1 [产品主页] [ http://www.intel.com/cd/software/products/...9578.htm ] [产品简介] 个人翻译, 以原版英文为准: 概要: -------------------------------------------------------------------------------- Intel C++编译器专业版为创建多线程应用程序提供最好的支持。只有专业版才提供对高级优化、多线程和处理器支持(?)。包括自动处理器派发、向量化、自动并行处理、OpenMP*、数据预取、循环展开,还有为并行化、数学运算和多媒体库而高度优化的C++模版。 专业版把高效的编译器Intel® Threading Building Blocks (Intel® TBB), Intel® Integrated Performance Primitives (Intel® IPP) and Intel® Math Kernel Library (Intel® MKL)整合到了一起。虽然这些库也可以单独获取,但是专业版在一个显著折扣价位上为构建稳定高效的并行代码提供了一个强大的基础。 标准版编译器和专业版有着相同的效能和特性, 但是不提供多线程库。 特性: -------------------------------------------------------------------------------- 效能: 考虑使用Intel C++编译器专业版来最佳化效能。内间的优化技术和多线程支持帮助您创建可以在最新的多核处理器上运行best的代码。 高级优化特性: 使用IntelC++编译器Windows版编译的软件可以受益于高级优化特性, 这里有一些简要介绍, 并且链接到完整描述: * Multi-Threaded Application Support, including OpenMP and auto-parallelization for simple and efficient software threading. * Auto-vectorization 并行化代码来利用最新处理器的SSE指令集构架(SSE, SSE2, SSE3, SSSE3, and SSE4)。 * High-Performance Parallel Optimizer (HPO)(高效能并行优化器) 重新组织和优化循环来确定auto-vectorization, OpenMP, or auto-parallelization 最好的利用处理器的缓存、内存访问、SIMD指令集和多核能力。这个由10.0版本而来得新的革命性的能力,组合了向量化、并行化和循环转化到一个比先前分散模块更快、更有效率和更可靠的单个过程。 * Interprocedural Optimization (IPO) 大幅的改善了被频繁使用的中小规模函数的效能,尤其是在循环内包含调用的程序。这个优化器的分析能力还可以对代码弱点和代码错误给出反馈,诸如未初始化的变量或者OpenMP API issues这些严格依赖编译器前端的编译器不能检测到的状况。 * Profile-guided Optimization (PGO) 通过减少指令缓存thrashing、重新组织代码布局、收缩代码大小和降低分支预测失败来改善程序效能。 * Optimized Code Debugging with the Intel® Debugger(使用Intel调试器调试优化后的代码)改善了为Intel架构优化代码的调试过程的效率. 本版本新特性: -------------------------------------------------------------------------------- 此Intel C++编译器Windows版本构建于一个winning foundation之上。它使您能够为下一代硬件创建下一代应用。 改善的效能和Threading * 新的并行/循环优化器 * 改善的C++优化 * 异常处理和类层次分析 安全监测和诊断 * 缓冲区溢出静态验证 * OpenMP API 验证 VISTA 和 Visual Studio 2005 支持 优化报告 支持最新的多核处理器 * Intel® Core™2 Duo processor * Intel® Core™2 Quad processor * Quad-Core Intel® Xeon® processor 5300 series * Dual-Core Intel® Xeon® processor 3000 series * Dual-Core Intel® Xeon® processor 5000 series * Dual-Core Intel® Xeon® processor 7000 series * Dual-Core Intel® Itanium® 2 processor 提供专业版本 Advanced Optimization Features in Depth -------------------------------------------------------------------------------- ... ... 兼容性和适应性 -------------------------------------------------------------------------------- ... ... 可与Microsoft Visual Studio 2005, Visual Studio .NET 2002/2003, and Visual Studio 98集成,并提供扩展的32位和64位多核Intel处理器支持。 Intel C++ 编译器提供下列语言一致性 * ANSI/ISO C 语言标准一致性 (ISO/IEC 9899:1990) * ANSI/ISO C++语言标准一致 (ISO/IEC 14882:1998) * OpenMP 规范版本 2.5 系统需求

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 16
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值