效能可携性:如何让你的程式跨越不同硬体平台无缝运行?

在当今高度互联的数位时代,效能可携性已成为软体开发的重要议题。效能可携性指的是应用程式能够在不同的硬体平台上有效运行的能力。开发者们在设计效能可携的应用程式时,需在不影响效能的前提下,支持多个平台,理想上还需将平台特定的代码减至最少。

在高效能运算(HPC)社群中,效能可携性被视为一项备受追捧的特性,然而目前尚未达成普遍或一致的测量标准。

效能的衡量方式有两种:一是比较经过优化的应用版本与其可携版本的性能;另一种则是根据执行期间所执行的浮点运算次数(FLOPs)和从主记忆体移动数据到处理器的频率,来比较应用的理论峰值性能。随着硬体多样性的增加,开发能够在广泛机器上运行的软体变得越来越关键,这会影响到应用的长期使用及更新的可能性。

效能可携性的争论

效能可携性在业界被广泛提及,通常指的是:一是能在多个硬体平台上运行同一应用程式;二是在这些平台上达成某个性能指标。 2016年美国能源部(DOE)举办的效能可携性会议上,有专家表示,“应用程式若能在每个平台上相对于已知的最佳实现,达成一致的性能水平,则可被视为效能可携”。

Jeff Larkin(NVIDIA)直接指出,效能可携性就是「相同的源代码能在多种不同的架构上生产性地运行」。

因此,效能可携性在高效能计算社群中,成为重要的讨论话题。业界、学界与DOE国家实验室的合作伙伴们,从2016年起定期举办「性能、可携性与高效能计算生产力论坛」,旨在促进性能可携性的研究与开发。

效能可携性的关键性

随着计算架构持续演变,效能可携性依然具有重要的意义。开发者假设他们的单一代码库将能在更新的架构上,以及尚未测试的多种当前架构上,同样达成可接受的性能。随着硬体多样性增加,开发能够跨多个平台运行的软体将成为必要,这关乎应用的生命力及持续相关性。

美国能源部的Exascale Computing Project (ECP)强调,效能可携性是持续的关注点,特别是在多元平台的环境中。

自2016年来,DOE举办了多场研讨会来探讨效能可携性的日益重要性。 2017年的会议邀请了包括国家能源研究科学计算中心(NERSC)、洛斯阿拉莫斯国家实验室(LANL)等多个知名机构的参与。

效能可携性的量测

要量化一个程式何时达成效能可携性,需考量两个因素。第一,效能可携性可以透过跨架构之间使用的代码行数与只针对单一架构的代码行数进行比较。第二,效能则可以通过多种方法进行测量。举例来说,将平台最佳化的应用版本与可携版本之间的性能进行对比,一个有效的测量方式是采用屋脊性能模型,这样可获得应用的理论峰值性能。

在2016年的会议上,就有参与者提到,“当应用团队声称其效能可携时,这段代码就算是效能可携的”。

近年来,研究指出,针对各种并行计算架构所撰写的可携性代码,需遵从开放的标准编程模型,并且在多个平台上同时开发与改善代码。这些策略能帮助开发者找到适合不同平台的参数。

框架与非框架解决方案

市面上有多种程式应用及系统,旨在协助开发者实现效能可携性。一些常见的框架包括OpenCL、SYCL、Kokkos、RAJA等,这些编程介面支援多平台的多重处理编程。而一些非框架的解决方案则包括自调整及特定领域的语言。

随着技术的进步,我们是否已经准备好迎接一个全新的编程时代,让效能可携性的可能性跨越至全新的高度呢?

Trending Knowledge

为何高效能计算(HPC)领域对『效能可携性』如此痴迷?
在高效能计算(HPC)领域,开发者对于「效能可携性」的关注可谓近乎狂热。这种现象源自于计算机程序和应用程式希望能在不同平台之间高效运行的需求。随着技术的不断发展和硬体架构的不断变化,高效能计算应用程序的耐久性与相关性受到威胁,迫使开发者们不得不着眼于效能可携性的提升。 <blockquote> 效能可携性指的是计算机程序和应用程式能够在不同平台上有效运行的能力。开发者在开发效能可携性的
高效能计算的隐藏挑战:你知道效能可携性有多难测量吗?
在高效能计算 (HPC) 的领域,效能可携性是许多开发者所追求的目标。然而,随着计算平台的多样化,这一目的却面临着重重挑战。效能可携性并不仅仅是让一个应用程式在不同的硬体平台上运行,更重要的是如何在不妥协性能的情况下保持其兼容性。迄今为止,却没有通用的标准来量化和评估效能可携性,这使得开发者在设计软体时面临困难。 <blockquote> 效能可携性代表着一种假设,即开
nan
各地区对于乘客铁路的定义和运用有着显著的差异。这些差异不仅反映了各地公共交通系统的发展,还反映了当地的地理、文化和经济背景。快速交通、地铁、轻轨以及重型铁路等不同类型的铁路系统各具特色,这篇文章将深入探讨这些系统的不同定义,以及它们在全球各地的具体应用。 快速交通的定义与运用 <blockquote> 一个快速交通系统是一种电动铁路,特点是高速和快速加速。 </blockquote> 快速交

Responses