英特尔® INDE:作为一款“跨平台工具套件”意味着什么?
作者:Neal Pierman
在最近推出英特尔® Integrated Native Developer Experience 2015版工具套件(英特尔® INDE)之后,我收到了客户提出的许多问题,其中包括:“英特尔INDE作为一款跨平台工具套件意味着什么?”
在回答这个问题之前,让我先介绍一下这个话题的相关背景。当英特尔询问客户希望跨平台工具套件为其提供哪些功能时,客户向我们提出了以下要求:(1)该工具套件需要同时支持Windows*和Android*目标系统;(2)该工具套件必须能够集成到我首选的IDE(Visual Studio*、Eclipse*或者Android Studio*)之中;(3)工具套件需要能够揭示目标平台的底层架构和性能;而且(4)该工具套件必须能够最大限度降低多平台开发工作量。
一般而言,开发跨平台工具套件有两种不同的方式:“自顶向下”和“自底向上”。“自顶向下”方法(也称之为“一次写入、随处运行”)让您只需针对通用接口进行一次性编码,然后该工具套件即可为不同的平台生成二进制代码。“自底向上”方法包括一组适用于每个平台的通用库和工具,因此允许将代码在不同平台上大量重复使用。
“自顶向下”方法的优势在于其极具吸引力的“一次写入、随处运行”特点,但它也存在性能开销、学习曲线陡峭并且必须为每一种平台微调GUI(由于每种平台有着不同的用户界面规定)等劣势,因此这种方法并不是大多数开发人员的最佳方法。
因此,英特尔INDE选择了“自底向上”方法,因为它可以满足我上述的各项开发要求:
-
首先,英特尔INDE支持基于英特尔®架构创建Windows*应用,以及基于ARM和英特尔®架构创建Android*应用。您还可以将Windows*或OS X*用作您的主机/开发系统。
-
其次,您可以选择使用通用的Android*IDE,而不是被迫使用无法与您当前的工作流相匹配的特殊开发环境。因此,如果您一直在使用VisualStudio*开发Windows*应用,您也可以将这些专业知识用于开发Android*应用。Eclipse*或许也能满足您的需求,或者如果您倾向于使用更尖端的新技术,您也可以尝试一下AndroidStudio*测试版。
-
对于第三和第四项要求,英特尔INDE提供了大量高度优化的跨平台库,它们可以提供两大优势:它们针对每种英特尔架构平台的具体性能和功率特点进行了优化,而且API还提供了许多通用功能,能够最大限度提高代码在各个平台上的重复利用率。
-
我还要补充一个优势,其构建、调试和分析工具可以使一个差强人意的应用快速提升为一个出类拔萃的应用。我们只需观察一下英特尔® C++编译器、Android*调试器扩展(英特尔® INDE与面向VisualStudio*的Android插件相对比)即可一目了然。分析工具括GraphicsFrame Debugger、System Analyzer、GraphicsFrame Analyzer和Platform Analyzer。
例如,让我们来看一下一个英特尔INDE跨平台工具库:英特尔®集成性能基元(英特尔® IPP)。英特尔IPP提供了数千个经优化的功能,涵盖了经常使用的基础算法,其中包括用于创建数字媒体或科学/技术应用(例如FFT或图像处理)的算法。这些功能针对英特尔架构平台进行了高度优化,而且在适用时可以使用英特尔® SIMD流指令扩展(Intel® SSE)和英特尔®高级矢量扩展(Intel® AVX) 指令集。因此,您只需针对英特尔IPP API进行一次性编码,您即可在所有目标平台上获得经过优化的原生性能。
综上所述,我重点探讨了英特尔INDE的跨平台特性,并且介绍了这些产品特性如何满足一般跨平台开发人员的要求。如果要用一句话概括的话,那就是:英特尔INDE可帮助您关注于您的核心业务,设计并且开发让客户满意的高性能应用。您不必再花费数周时间学习如何针对每种目标平台的具体性能和功率特点进行优化。
英特尔® INDE 免费试用版,请点击下载。
了解关于英特尔INDE产品的更多信息,包括不同产品版本的详细信息,请访问 英特尔INDE主页。
*其他名称和品牌可能是其他所有者的财产。
关于编译器优化的完整信息,请查看我们的优化注意事项。
法律声明
英特尔和英特尔标识是英特尔公司在美国和/或其他国家地区的商标。OpenCL和OpenCL标识是Apple有限公司经Khronos许可使用的商标。
关于编译器优化的完整信息,请查看我们的优化注意事项。
*其他名称和品牌可能是其他所有者的财产。