第1章 引言

当前CPU每W运算速度达到稳定水平,而应用要求能够处理大量的数据并呈现高水平的并行性。从移动设备到超级计算机的所有计算机系统正迅速变得异构化。异构设备通过大规模并行性的特征,以低功耗实现高计算吞吐量。通过在延迟敏感的应用上使用CPU,同时在高度并行的吞吐量友好部件上使用GPU,异构计算系统可以获得比传统系统更高的应用性能和能源效率。

受益于异构计算的应用领域之一是视频处理。另一场景是在小店电子游戏领域。物理效应的真实建模和仿真需要大量的计算能力。注意数据传输的有效管理可能会对并行应用程序的可实现速度产生重大影响。

虽然在计算金融、油气勘探、分子动力学、CFD、医学成像和计算机摄影等领域的许多应用已经成功迁移至异构计算领域,但在其他领域的成功经验并不多。失败通常是由于在非CPU计算设备上启动任务所涉及的高开销,以及从设备中迁移数据所造成的。这些开销是由于现代计算系统中的非传统计算设备被设计为IO设备。这些计算设备的软件驱动程序已经完成了大量的任务启动和数据移动工作。这种基于软件的实现会带来巨大的开销。因此,应用程序开发人员必须确保通过加快设备上的大量计算来克服每个任务启动和数据移动活动的成本。否则,开销可能会超过收益。

更微妙的问题是IO设备模型已经在异构计算系统的通用编程接口中开放访问。在OpenCL和CUDA中,任务启动和数据移动会通过API调用来访问,就像文件和网络IO设备一样。这种需要明确定义内核的编程风格会破坏现代应用程序的软件体系结构。因此,GPU代码往往不再应用程序的主要路劲中,从而导致维护问题。利用C++等主流语言编程将成为异构计算的重要一步。

异构系统体系结构Heterogeneous Synstem Architecture,HSA是一种新的硬件平台和相关的软件栈,允许不同类型的处理器通过共享内存高效协同工作。它主要实现了近年来流行的现代片上系统SoC和加速处理单元APU。除了CPU核之外,这些APU还具有许多加速器,如GPU、DSP、编解码器、DMA引擎和加密引擎。HSA能够在执行要求苛刻的应用程序时,在这些不同的处理单元类型之间实现无缝协作。它为由多个主要供应商提供的各种处理器组成的复杂异构计算系统提供一致的统一应用程序编程接口。

第2章介绍了HSA的四大支柱(内存模型、虚拟ISA、排队模型和上下文切换)如何支持其目标。

第3章提出HSA中间语言HSAIL的基本原理。HSAIL定义了虚拟HSA ISA,并作为HAS系统软件分发的主要工具。HSAIL旨在表达应用程序的并行区域。其二进制形式称为BRIG,可以嵌入传统的二进制对象文件中。为了使可移植性最大化,HSA要求 供应商提供一个名为终止器和轻量级代码生成器,以将HSAIL转换为供应商ISA。向传统的物理ISA(如x86)一样,HSAIL是一种稳定的格式,可以兼容未来的硬件产品。该章介绍HSAIL最终的关键概念(并行执行模型、表达式、机器模型和配置文件、编译流程和有用的工具)。

第4章强调HSA运行时最重要方面。HSA运行时的核心(必需)功能是管理HSA系统的计算设备(称为HSA代理),在可用的HSA代理上启动计算内核,分配\管理HSA内存,向用户进程报告内核执行,并支持HSA代理之间的通信。讨论了如何将这些主要功能作为核心HSA运行时API实现,以及它们是如何相互关联的。以及解释了HSA运行时扩展API概念。

第5章展示了HSA内存一致性模型的主要思想。首先介绍主要的HSA内存分段类型,然后解释如何使用所有权的概念来提供特定设备在一个时间窗口内需要访问的内存位置的性能和能源效率。最后,该章解释了HSA内存一致性模型的两个试图。

第6章展示了HSA排队模型的创新。一个重要的创新是HSA队列位于用户空间,可以在不涉及操作系统的情况下进行操作。保持用户空间的HSA队列,减少了CUDA和OpenCL系统中传统队列机制的显著内核开销。通过这些队列向HSA代理提交的命令包类型。最后详细解释了命令包在提交、调度和执行过程中状态。

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
该资源内项目源码是个人的课程设计、毕业设计,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96分,放心下载使用! ## 项目备注 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。 该资源内项目源码是个人的课程设计,代码都测试ok,都是运行成功后才上传资源,答辩评审平均分达到96分,放心下载使用! ## 项目备注 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用! 2、本项目适合计算机相关专业(如计科、人工智能、通信工程、自动化、电子信息等)的在校学生、老师或者企业员工下载学习,也适合小白学习进阶,当然也可作为毕设项目、课程设计、作业、项目初期立项演示等。 3、如果基础还行,也可在此代码基础上进行修改,以实现其他功能,也可用于毕设、课设、作业等。 下载后请首先打开README.md文件(如有),仅供学习参考, 切勿用于商业用途。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值