IPSsunning
作者IPSsunning·2022-10-20 17:37
系统工程师·浪潮商用机器有限公司

Power Linux 环境下的开发工具包( SDK )简介 - 为您的 Power 系统准备好 C/C++ Linux 应用程序和库

字数 2642阅读 735评论 0赞 0

1 、前言

IBM 为 Power Linux 环境提供的开发工具包 Software Development Kit for Linux on Power ( SDK )提供了一套强大的工具,使您能够移植、优化、分析和调优,适用于 Power Linux 环境下的 C/C++ 应用程序和库。

2 、 SDK 中包含的内容

使用本文中所介绍的工具有助于快速达到所需要的结果

2.1 、 Advance Toolchain

IBM Advance Toolchain for Linux on Power 是一组开源编译器、运行库和开发工具,允许客户在 Linux 环境下可以充分利用 K1 Power 硬件功能的领先优势。包括 GCC 、 glibc 、 Python 、 Golang 、 Valgrind (加指令跟踪)、 TBB 、 URCU 、 Boost 、 zlib 等的最新稳定版本,所有这些都针对 POWER 平台进行了优化,允许您针对 POWER 平台进行优化。点击链接了解更多信息 Learn more about the Advance Toolchain

2.2 、 XL Compilers

IBM XL compilers 是 IBM 的旗舰专有编译器套件, IBM 使用它在 AIX 、 z/OS 和 Linux on Power 上报告 SPEC 基准测试结果。 XL 编译器的以下版本可用:

完全许可: IBM XL C/C++ for Linux

社区版,一个免费的全功能产品,不支持: XL C/C++ for Linux

2.3 、 Migration Advisor

Migration Advisor 帮助将基于 x86 Linux 的 C/C++ 应用程序移植到 Power 系统上的 Linux 。它扫描应用程序源代码并识别 C/C++ 项目中潜在的迁移问题,例如在 Power 服务器上运行时无法编译或可能产生不同结果的源代码。点击链接了解更多信息 Learn more

2.4 、 Cycles-per-Instruction Breakdown

CPI ( cycles per instruction : 每条指令的周期数)是指完成一条指令所需的处理器周期数,是衡量处理器上应用程序效率的指标。在 CPI 细分模型中,处理器性能指标被分层分解为子指标,最后分解为单个事件。点击链接了解更多信息 Learn more

2.5 、 QEMU

为了在 DevOps 中获得更大的灵活性, QEMU 可作为一个复杂的仿真环境提供,允许您从任何地方运行为 Power 或整个 Linux-on-Power 操作系统构建的应用程序。 POWER QEMU 仿真软件包可用于以下最新版本:

  • Ubuntu
  • SUSE Linux Enterprise Server (SLES)
  • RedHat Extra Packages for Enterprise Linux (EPEL)

2.6 、 Power Functional Simulator

与 QEMU 类似, Power Functional Simulator 可以模拟 Power 系统,允许您在 x86 系统上运行完整的 Linux on Power 操作系统。 Power Functional Simulator 可以从固件向上运行完整的软件堆栈。

点击链接了解更多信息: Power Functional Simulator packages

2.7 、 Performance Simulator (scrollpv, jviewer)

Performance Simulator 是一种周期精确的 POWER 指令流报告工具。它将 POWER 指令跟踪转换为报告,其中报告了每条指令生命周期中每个周期的各个阶段。可以使用以下查看器之一查看生成的报告: jviewer 和 scrollpv 。

点击链接了解更多信息: Download Performance Simulator (sim_ppc) and viewers packages

2.8 、 pipestat

pipestat 工具对 Performance Simulator 循环精确计时器的输出进行操作,执行详细分析,并突出显示需要进一步研究性能的领域,包括热循环、未对齐的短循环、热长延迟指令、冗余负载、错误提示的分支、错误预测的分支以及存储负载冲突。

点击链接了解更多信息: pipestat packages

2.9 、 curt

与同名的 AIX 命令类似, curt 记录并报告详细的系统利用率统计信息,包括用户时间、内核时间、每个 IRQ 中断时间、系统调用计数和计时、空闲时间、管理程序调用计数和定时、任务迁移。 Curt 是跨平台的。

点击链接了解更多信息: curt project page

2.10 、 splat

与同名的 AIX 命令类似, splat 记录并报告应用程序或系统有关应用程序级锁的使用和争用的详细信息。 splat 是跨平台的。

点击链接了解更多信息: System Performance Lock Analysis Tool

2.11 、 pveclib

pveclib 项目提供了一些精心编制的有用向量函数的实现,这些函数不是 POWER ISA 的一部分,还提供了 POWER ISA 的更高版本中的函数实现,以便在早期不支持这些函数的处理器上使用。

点击链接了解更多信息: Power Vector Library

2.12 、 SPHDE

共享持久堆数据环境( SPHDE )项目提供了共享内存(共享地址空间)、共享堆、无锁记录器、无锁生产者 - 消费者队列和快速时间戳的高度优化实现。 SPHDE 是跨平台的,包含在 Advance Toolchain 中。

点击链接了解更多信息: Shared Persistent Heap Data Environment

3 、准备好开始了吗?

ž 通过本文链接选择下载开发工具包( SDK ): SDK for Linux on Power .

ž 如果您计划将 Linux x86 应用程序移植到 Power 系统,请查看我们的移植指南,以获取有用的提示和建议: https://power-developer.mybluemix.net/porting-guide/

如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!

0

添加新评论0 条评论

Ctrl+Enter 发表

作者其他文章

相关文章

相关问题

相关资料

X社区推广