支持移动互联网设备的Intel C++ Software Development Tool Suite for Linux* OS

来源:互联网 发布:mac 终端 作用 编辑:程序博客网 时间:2024/06/11 06:23

本白皮书高度概述了支持移动互联网设备(Mobile Internet Device)的Intel® C++ Software Development Tool Suite for Linux* OS,本白皮书简要描述了可用的功能和优点,对关键功能进行了详细说明。

目标读者主要是技术决策制订者。

概述

支持移动互联网设备的Intel® C++ Software Development Tool Suite for Linux* OS是一个解决方案集合,涵盖了开发的各个阶段,从编写代码、开发到分析、调试、性能优化和剖析。该软件工具套件由4个不同的组件组成,包括Intel® C++ Compiler for Linux*Intel® Integrated Performance PrimitivesIntel® VTune Performance Analyzer和支持移动互联网设备的Intel® C++ Debuggers for Linux*。所有这些工具套件组件都在性能上进行了专门的优化和增强,以促进针对移动互联网设备的软件开发获得最佳的性能和最快的面市时间。本白皮书将重点论述这些修改和增强功能,以及它们如何帮助开发、优化和验证移动互联网设备。


图字

Intel® C++ Compiler for Linux*

Intel® IPP

VTune

调试器

Linux* 操作系统

 

Intel®小功率IA技术

 

基本原理

与为以本机桌面PC、工作站、服务器为中心的使用模型编写软件相比,为Linux上运行的小型嵌入式系统开发软件应用程序、修改和定制设备驱动程序所使用的开发图略有不同。这种不同主要有两个方面。要为之开发应用程序的目标设备很可能没有键盘,而只有一个小型触摸屏用户界面。这对于最终用户当然很好,但是不利于设备本身的开发。其次,由于目标设备很可能是一个封闭的系统,因此运行的Linux* 操作系统可能不包含GNU* GCC软件开发工具。出于这两个原因,并考虑到标准桌面PC与基于Intel® Atom™ 处理器的移动互联网设备(MID)之间的相似性,最适合最有效的移动互联网设备开发方式就是交叉开发。


开发人员在开发主机上设置一个隔离的小型构建环境。在Linux*中这通常称为chroot环境。此外,您可能还需要一个模拟层,这样不仅能在主机上开发应用程序,还能在将应用程序部署到MID目标前在主机上进行功能测试和用户界面测试。有关设置这种环境的更多信息,可以参考Mobile & Internet Linux* Project网站(http://www.moblin.org)。

支持移动互联网设备的Intel C++ Software Development Tool Suite for Linux*是一个开发和分析工具以及实用程序集合,有助于针对MID的应用程序获得最佳性能,并完全集成了上述开发原理。

 

Intel® C++ Compiler for Linux*

Intel® C++ Compiler for Linux*是一个高度优化的编译器,可插入已安装的GNU* GCC中,重用一些库和连接器,以获得最大的兼容性。Intel® C++编译器提供领先的编译器技术,这些技术来自最了解底层处理器技术的芯片供应商,Intel® C++编译器是第一个针对新一代Intel® Atom™ 处理器的编译器。它的理念是:为您的应用程序提供更多性能优势,实现最佳的最终用户体验。

最新的小功率IA处理器是一个有序机器,不提供集成的无序调度程序。Intel® C++编译器模拟Intel® Atom™ 处理器管道和执行流,这使它能够使用最适合小功率IA的指令执行顺序生成代码。


要启用有序指令管道建模,所有的用户都必须使用选项开关-xl以及所有其他用于优化代码的编译器选项。这允许对生成的机器指令重新排序,因而也能最小化管道停顿。

请注意,隐式使用-xl也允许循环展开和执行流线化,使用Intel® SSE3单指令多数据(SIMD)指令和128位寄存器加快数据吞吐和并行。因此,如果您的主机开发环境不支持Intel® SSE3指令,则在主机上进行功能测试和代码正确性测试时不要使用-xl选项,仅在将应用程序部署到基于Intel® Atom™处理器的目标设备之间启用-xl进行编译。如果主机开发环境使用的Intel®处理器已经支持SSE3指令,则无需担心该问题,您可以在主机上的平台模拟环境中运行完整的小功率IA优化应用程序。

 

chroot环境

设置

为了促进Intel® C++ Compiler for Linux*在交叉环境开发中(例如,Mobile & Internet Linux* Project网站http://www.moblin.org提供的Image Creator)的使用,支持移动互联网设备的Intel® C++ Software Development Tool Suite for Linux* OS提供了在专用的chroot环境中安装Intel® C++编译器的选项。“chroot”安装工具是一个菜单项,位于工具套件安装菜单中。该实用程序将在Ubuntu Linux*系统上创建一个chroot环境。它将在chroot环境中安装包含在工具套件包中的C/C++编译器。


为了chroot环境的正常运行,用户系统必须有一个运行的“apt-get”环境,即apt-get程序必须能够安装软件更新。新安装的Ubuntu*系统具有预配置的apt-get环境,使用/etc/apt可以查看默认的配置信息。某些用户环境中需要修改的主要文件是/etc/apt/sources.list文件。如果用户需要调整apt配置,请咨询系统管理员。

apt-get程序将在Ubuntu* Linux更新服务器检查成功chroot安装所需的以下包:debootstrapdchrootDebootstrap将被启动并创建一个完整的基础系统,它从Ubuntu*镜像站点下载许多安装包并解压到chroot环境的安装目录。

此外,为了在chroot环境中提供基本的工作环境,它将在Ubuntu* Linux更新服务器检查以下包并安装到chroot环境中:gnupglocalesdialogbuild-essentiallibstdc++5man-dbvim

完成这些准备工作后,Intel® C++ Compiler for Linux*将安装到主机系统上新建的受保护chroot环境中,以供进一步定制和开发人员使用。

 

Intel® Integrated Performance Primitives

借助Intel® Integrated Performance PrimitivesIntel® IPP)应用程序,开发人员可以集中于功能实现而不是应用程序代码优化。Intel® IPP提供了高度优化的数学、信号、图像处理功能,以提高关键应用程序的性能。


图字:

应用程序

数字媒体

Web/企业数据

嵌入

通信

 

科学/技术

 

交叉平台

C/C++API供代码重用

 

Intel® Integrated Performance Primitives

 

免费代码示例

 

 

15种函数域

 

图像与视频

通信和信号处理

数据处理

###

###

###

优化的32位和64位多核性能

Intel Integrated Performance Primitives为多媒体、音频编解码、视频编解码、图像压缩、图像处理、信号处理、语音处理、计算机视觉、数学支持例程提供各种支持。

Intel® IPP库支持动态和静态应用程序。应用程序可以针对一个特定的cpu变体进行构建,也可以包含代码,能在运行时为任何cpu自动选择最佳代码。

示例:MP3解码器

请点击此处下载,查看全文

原创粉丝点击