异构计算—移动计算的发展方向

移动开发
人们的需求是永无止境的。对于计算终端来说,不管是移动还是其他类型的终端,我们总是希望以适宜的价格获得更好的用户体验和性能。到目前为止,行业似乎已经提供了所能提供的一切,但我们期待的还有更多。移动体验的提升到底有没有尽头?什么样的体验才是终极目标?

人们的需求是永无止境的。对于计算终端来说,不管是移动还是其他类型的终端,我们总是希望以适宜的价格获得更好的用户体验和性能。到目前为止,行业似乎已经提供了所能提供的一切,但我们期待的还有更多。移动体验的提升到底有没有尽头?什么样的体验才是终极目标?

随着移动互联网的发展,许多新兴移动体验和应用正在涌现,例如计算摄影、扩增实境、虚拟现实和情景感知。这些体验不仅需要密集计算,而且会带来各种新的工作量,并且各有不同要求。

例如,在扩增实境中,移动终端需要不断分析摄像头的反馈、识别和跟踪有趣的物体、在三维空间中定位,以及叠加透视校正后的虚拟图像,也就是“扩增”的部 分。这些不同的工作需要大量的计算“马力”!另外,这些工作还要通过不断变化的算法进行运算,这意味着处理器需要具有某种可编程性。尽管可编程性提供了多 种算法的灵活性,但这同时也意味着更高的功耗。

因此我们面临的挑战是,在提供这些新兴移动体验的同时,还要满足消费者对移动终端的关键条件:外形时尚、轻盈,并且电池续航时间够长。

有些技术达人可能认为“CPU”是问题的关键,但其实这只是答案的一部分。正如我前面提到的,CPU的巨大灵活性和可编程性是以功耗为代价的。事实上,之 前的方法——在移动终端的功率和热能限制内,通过调整CPU来应对日渐增多的计算需求——带来的回报越来越少了。让我们分别来看:

• 单核CPU调整通过架构改进提高CPU的时钟频率和IPC(每一时钟周期内所执行的指令多少),进而提升计算性能。目前,CPU时钟频率的提升正在放缓。还记得PC领域的CPU千兆赫竞赛吗?那场比赛在很多年前就减速了,如今PC CPU的最高主频已趋于饱和。由于越来越复杂的微架构能够挤出更多性能,IPC的提升速度也放缓了,这不仅具有挑战性,而且带来很高的功耗。

• 多核CPU调整是调整计算性能并应对时钟频率趋平问题的下一步。通过复制CPU核心,半导体厂商利用额外的晶体管,调整整体的理论最高计算性能。然而,能否充分利用这些提升的性能取决于同时运行多个程序或线程的能力高低。只需看看Amdahl定律就能发现,在程序有顺序代码的情况下,性能提升带来的回报会越来越少。在PC领域,CPU基本已稳定在四核。另外,正如我之前已经提到的,由于CPU不一定是最高效的处理器,在一个散热受限的外壳内以最高主频连续运行多核CPU是非常具有挑战性的(也就是说,会发热!)。

那么,我们如何才能继续改进计算呢?就像我们过去一直在做的那样,我们需要改变计算方式,这样才能提升计算性能,带给消费者他们期望的移动体验。

而通过智能地利用适当的处理器,异构计算能够提高应用性能、电池续航时间和热效率,推动全新移动体验的发展和进步。

什么是异构计算?

移动异构计算是一种通过使用不同类型处理器(例如CPU、GPU和DSP)来高效运行应用的计算方法。它包含两个重要方面:

1. 在最合适的处理器上运行适当的工作,充分利用处理器的多样性

这主要是指,对于特定的工作负荷来选择相应的处理器。一个系统级芯片(SoC)集成多个处理器是有原因的,美国高通公司一直以来都将合适的任务分配给合适的处理器。关于它带来的好处,我将在后面进一步阐述。

2. 让应用开发者更容易获取可编程的处理器

正如我在上篇博客中提到的,CPU对于多种工作负荷来说并不一定是最高效的处理器。通过让其它各种处理器变得更易使用且具备更高的可编程性,应用开发者可使用GPU、DSP等其它更高效的可编程处理器,为CPU减负。

为什么处理器多样化很重要?

每种处理器都有自身的优势和缺点。通过高效使用适当的各类处理器,异构计算能够实现应用性能、热效率和电池续航时间的最大化。下图中的模拟工具箱形象地说明了我的观点,有助于大家理解处理器多样化的重要性。

 [[88922]]

使用一套包含各种工具(处理器)的工具箱(SoC)来处理各个项目(工作负荷)是顺理成章的。我们大多人都知道使用错误的工具做一件事会是多烦人。你曾试过用扳手钉钉子吗?我干过,结果钉子砸弯了不说,拇指也砸青了!同样,你不应把CPU作为处理所有计算工作负荷和提供新兴移动体验的唯一工具。

Pelican Imaging有一个很好的实例,证明了使用骁龙处理器中的多种不同处理器带来的好处。在计算级相机中使用CPU、GPU、DSP和视频处理器,比只使用CPU的优势大很多。

责任编辑:徐川 来源: 高通博客
相关推荐

2013-11-06 09:01:49

移动异构计算移动计算

2013-11-06 09:18:44

异构计算移动计算高通

2013-11-06 09:43:23

体验引擎移动异构计算高通

2013-11-06 09:12:35

异构计算移动计算

2021-04-13 13:21:58

CPUGPU异构

2013-10-08 11:16:55

谷歌云计算

2013-11-05 16:53:20

高通异构计算

2018-04-18 15:30:27

多元化异构计算

2013-01-07 10:37:10

移动游戏本地游戏桌游

2011-12-02 09:42:09

异构计算高性能计算x86处理器

2012-11-27 10:52:23

移动支付平台

2011-05-19 09:39:51

数据库计算机

2018-12-29 13:57:24

微软 量子计算 编程语言

2020-04-13 16:06:57

云计算IT混合云

2012-06-21 09:15:59

分散化的趋势云计算

2012-09-04 09:55:43

云计算亚马逊云微软云

2012-06-18 09:30:03

惠普SAP混合云

2009-10-14 15:06:22

IT职业发展

2011-04-01 15:50:49

数据库计算机

2019-07-10 10:18:49

云计算技术混合云
点赞
收藏

51CTO技术栈公众号