删除或更新信息,请邮件至freekaoyan#163.com(#换成@)

SW26010众核任务并行调度系统及其嵌套并行算法应用

本站小编 Free考研考试/2022-01-02

摘要:任务并行是并行程序设计的基础设计模式.但由于算法本身的复杂性及目标平台的特殊性,设计实现高效率的任务并行程序对程序员来说往往充满挑战.基于新兴的SW26010众核CPU,提出了支持任务嵌套并行模式的通用运行时框架SWAN.SWAN对任务并行程序的实现提供了高层次的抽象,使程序员能够专注于算法逻辑本身而提高开发效率.在性能方面,SWAN框架对诸多共享资源进行了细粒度的划分,从而有效地避免了众多线程间对共享资源的高强度争用.充分利用平台的高速访存机制、高速可控缓存和原子操作等特性,对SWAN框架的核心数据结构进行优化设计以降低其本身的性能开销.SWAN还具备动态负载均衡能力,使各个处理器核心的资源得以充分利用.基于SWAN框架,在目标平台上实现了若干典型的具有递归特性的嵌套并行算法,包括N-皇后问题、二叉树遍历、快速排序和凸包求解.实验结果表明,这些通过使用SWAN框架得以并行化的算法相对于其串行版本取得了4.5~32倍的加速,充分说明了SWAN框架具有较高的实用性及性能.



Abstract:Task parallelism is one of the fundamental patterns for designing parallel algorithms. Due to algorithm complexity and distinctive hardware features, however, implementation of algorithms in task parallelism often remains to be challenging. On the newly SW26010 many-core CPU platform, a general runtime framework, SWAN, which supports nested task parallelism is proposed in this study. SWAN provides high-level abstractions for programmers to implement task parallelism so that they can focus mainly on the algorithm itself, enjoying an enhanced productivity. In the aspect of performance, the shared resources and information manipulated by SWAN are partitioned in a fine-grained manner to avoid fierce contention among working threads. The core data structures within SWAN take advantage of the high-bandwidth memory access mechanism, fast on-chip scratchpad cache as well as atomic operations of the platform to reduce the overhead of SWAN itself. Besides, SWAN provides dynamic load-balancing strategies in runtime to ensure a full occupation of the threads. In the experiment, a set of recursive algorithms in nested parallelism, including the N-queens problem, binary-tree traversal, quick sort, and convex hull, are implemented using SWAN on the target platform. The experimental results reveal that each of the algorithms can gain a significant speedup, from 4.5x to 32x, against its serial counterpart, which suggests that SWAN has a high usability and performance.



PDF全文下载地址:

http://jos.org.cn/jos/article/pdf/6007
相关话题/程序 设计 实验 资源 逻辑

  • 领限时大额优惠券,享本站正版考研考试资料!
    大额优惠券
    优惠券领取后72小时内有效,10万种最新考研考试考证类电子打印资料任你选。涵盖全国500余所院校考研专业课、200多种职业资格考试、1100多种经典教材,产品类型包含电子书、题库、全套资料以及视频,无论您是考研复习、考证刷题,还是考前冲刺等,不同类型的产品可满足您学习上的不同需求。 ...
    本站小编 Free壹佰分学习网 2022-09-19
  • 一种基于分层适应逻辑的自适应系统实现框架
    摘要:自适应系统由于其能够自主地适应具有非确定性的部署环境,并持续地保持用户的满意度,受到了广泛的关注.然而,目前仍然存在未解决的挑战,例如如何在新的部署环境下,或者在开放且复杂的环境下,使得系统仍然能满足自适应性.因此,为自适应系统的设计引入了一个新的概念模型,受归因理论启发,该模型被设计成内归因 ...
    本站小编 Free考研考试 2022-01-02
  • 高精度的大规模程序数据竞争检测方法
    摘要:随着技术的不断发展,软件系统的非确定性(uncertainty)不断增强,数据竞争是并发系统这一类典型的非确定性软件系统中常见的缺陷.尽管数据竞争静态检测近年来取得了巨大进展,但其面临的重要问题仍然存在.先前的静态技术要么以分析精度为代价达到高扩展性,要么由于高精度分析而导致可扩展性问题.提出 ...
    本站小编 Free考研考试 2022-01-02
  • Petri网的反向展开及其在程序数据竞争检测的应用
    摘要:展开技术借助分支进程可在一定程度上缓解Petri网性质分析中的状态爆炸问题.但展开网中仍然包含了系统的所有状态信息.某些应用问题仅需对系统特定状态的可覆盖性进行判定,以此为目标,有望缩减网系统展开的规模.为此,针对安全Petri网的可覆盖性判定问题提出了一种目标导向的反向展开算法,结合启发式技 ...
    本站小编 Free考研考试 2022-01-02
  • 基于锁增广分段图的多线程程序死锁检测
    摘要:死锁是并行程序常见的缺陷之一,动态死锁分析方法根据程序运行轨迹构建锁图、分段图等模型来检测死锁.然而,锁图及其现有的各种变型无法区分同一循环中锁授权语句的多次执行,扩展锁图中记录的锁集无法捕捉线程曾经持有而又随后释放的锁信息,分段图无法刻画锁的获取和释放操作与线程启动操作耦合而导致的段间依赖关 ...
    本站小编 Free考研考试 2022-01-02
  • 面向AADL模型的存储资源约束可调度性分析
    摘要:嵌入式实时系统在安全关键领域变得越来越重要,其广泛应用于航空航天、汽车电子等具有严格时间约束的实时系统中.随着嵌入式系统的复杂度越来越高,在系统开发的早期设计阶段就需要对其可调度性进行分析评估.系统中的存储资源会对可调度性产生一定影响,在抢占式实时嵌入式系统引入缓存后,任务的最坏执行时间可能发 ...
    本站小编 Free考研考试 2022-01-02
  • 一种监控系统的链路跟踪型日志数据的存储设计
    摘要:随着软件系统越来越复杂化和分布化,为系统提供具有完善功能的监控服务显得越来越重要.APM(applicationperformancemanagement)系统通过采集软件系统运行时的各项指标数据来分析软件的运行状态,例如CPU、内存使用率、垃圾回收的耗时、QPS等指标.此外,APM系统也会在 ...
    本站小编 Free考研考试 2022-01-02
  • 程序智能合成技术研究进展
    摘要:近年来,随着信息技术快速发展,软件重要性与日俱增,极大地推动了国民经济的发展.然而,由于软件业务形态越来越复杂和需求变化越来越快,软件的开发和维护成本急剧增加,迫切需要探索新的软件开发模式和技术.目前,各行业在软件活动中积累了规模巨大的软件代码和数据,这些软件资产为软件智能化开发建立了数据基础 ...
    本站小编 Free考研考试 2022-01-02
  • 循环迭代程序的一种可信计算算法
    摘要:循环迭代程序作为软件的基本组成部分,其正确运行具有重要意义.然而,有时(比如其相关错数大于0时)计算时的舍入误差(或表示误差)会导致循环迭代的计算结果不稳定.基于“中间计算精度自动动态调整”的计算技术,给出了循环迭代程序的一种可信计算算法.利用该算法,可获得循环迭代程序任意次迭代的任意位的正确 ...
    本站小编 Free考研考试 2022-01-02
  • 面向完美回忆的时态认知逻辑
    摘要:传统时态认知逻辑对完美回忆的刻画是狭隘的,并不能完整表达主体记得自己先前的认知状态.新系统S5tCt将认知与时态融合进同一个算子中,个体知识、普遍知识和公共知识都被时间点所标注.S5tCt系统从技术上实现了每个个体(群体)都可以完美回忆自己在之前所有时刻上的认知状态.利用典范模型技术可以证明, ...
    本站小编 Free考研考试 2022-01-02
  • 一种云环境中的动态细粒度资源调度方法
    摘要:云计算平台中普遍采用固定资源量的粗粒度资源分配方式,由此会引起资源碎片、过度分配、低集群资源利用率等问题.针对此问题,提出一种细粒度资源调度方法,该方法根据相似任务运行时信息推测任务资源需求;将任务划分为若干执行阶段,分阶段匹配资源,从分配时间和分配资源量两方面细化资源分配粒度;资源匹配过程中 ...
    本站小编 Free考研考试 2022-01-02