很快,大多数硬件处理平台将基于多核架构。但这对传统软件应用程序意味着什么?
与单核平台相比,多核平台能够提供更高的性能、更低的功耗、更小的物理占用空间,甚至更低的物料成本。但是,除非传统的单核优化软件应用程序成功迁移到多核架构上,否则这些好处都不会带来。这并不一定意味着需要完成大量的软件重构工作。但这确实意味着开发人员需要拥有正确的知识和工具来评估他们的选项并选择正确的选项。
整合重头戏
旧版软件迁移最直接的方法是将多核平台视为当今使用的单核处理引擎的相同集合,只是内核现在都在一个物理包中。换句话说,对于每个处理器,开发人员将选择适当的操作系统和应用程序在其上运行。虚拟化是实现这一目标的常用方法,有时被视为多核旅程的第一步。这种方法将离散处理功能整合到多核平台上,并且需要有限的新知识和软件重构,尽管它只能提供前面提到的性能、功耗、大小和成本效益的一小部分,因为它没有利用可用的固有并行处理。
平衡、优化和机会
大多数开发人员都知道,利用多核平台基本优势的方法是解锁其软件应用程序中存在的任何并发性,以便可以在可用处理器之间实现合理平衡的负载。挑战在于,需要了解一些新概念,例如线程、数据依赖关系和数据争用,以实现向多核平台的高效迁移。军事系统市场虽然有其自身的特质,但肯定也受到商业基本规则之一的支配:掌握新技术或技术比竞争对手更快的公司会给自己带来真正的差异化优势。
害怕跳?
要成为多核就绪的软件开发组织,需要将一些东西添加到工程师可用的技能、方法和工具库中。这些对于满足所有多核迁移项目核心的基本问题至关重要:应用程序中有多少并发性,解锁它有多容易?传统上,这个问题的答案很难找到。通常有必要做所有的试错工程工作来回答它。因此,许多开发团队拒绝采取这一步骤也就不足为奇了。这种不情愿是因为他们不知道如何评估采用多核的好处,也不知道如何实现这样的并发分析项目。因此,他们什么都不做。
穿越黑暗的指引
近年来,CriticalBlue已帮助许多不同类型的组织迁移到并优化其多核平台的使用。Prism工具是在与经验丰富的多核软件开发人员进行广泛协商后开发的,旨在建立应对上述挑战所需的能力。这些讨论输出的一个小例子是,CriticalBlue的Prism具有假设探索功能,允许开发人员无需首先修改代码,就可以调查不同并行化方法,多核平台和数据依赖关系管理方法的影响。该工具与一系列培训课程和方法服务相结合,提供了一个框架,可帮助开发人员高效迁移遗留系统。
右脚向前
降低性能、功耗、尺寸和成本限制,同时提供基于现有传统软件的领先功能,是嵌入式系统盈利的关键。虽然多核硬件正在迅速成为常态,但在运行传统应用软件时如何最好地利用此类平台的知识有限。多核系统编程并不是一门全新的科学;这是一个在现有和成熟的技能中添加一些新想法和技术的问题。因此,管理将遗留软件迁移到多核平台的复杂性可以转化为真正的业务差异化因素。那么,为什么不在竞争中领先一步呢?
审核编辑:郭婷
-
处理器
+关注
关注
68文章
19181浏览量
229223 -
应用程序
+关注
关注
37文章
3248浏览量
57618
发布评论请先 登录
相关推荐
评论