组合式CPU/GPU体系结构系统中的装置发现和拓扑报告制造方法及图纸

技术编号:9064753 阅读:126 留言:0更新日期:2013-08-22 04:07
作为组合式CPU/APD体系结构系统的一个方面,提供用于发现并报告装置和系统拓扑的特性的方法和设备,所述特性与向组合式CPU/APD体系结构系统的各种计算资源有效地调度和分配计算任务有关。所述组合式CPU/APD体系结构在灵活的计算环境中对CPU和APD进行统一。在一些实施方案中,在单个集成电路中实施组合式CPU/APD体系结构能力,所述集成电路的元件可以包括一个或多个CPU核心和一个或多个APD核心。所述组合式CPU/APD体系结构创造了一个基础,在此基础上可以构建现有和新的编程框架、语言和工具。

【技术实现步骤摘要】
【国外来华专利技术】组合式CPU/GPU体系结构系统中的装置发现和拓扑报告背景专利
本专利技术大体上是针对计算机系统。更具体来说,本专利技术是针对计算机系统拓扑。
技术介绍
对使用图形处理单元(GPU)来进行一般计算的渴望在最近由于GPU的示例性每单位功率性能和/或成本而变得更加显著。一般来说,GPU的计算能力已以超过对应中央处理器(CPU)平台的计算能力的速率增长。随着移动计算市场(例如,笔记本计算机、移动智能电话、平板计算机等)和其所必需的支持服务器/企业系统的蓬勃发展,这种增长已被用来提供指定品质的所需用户体验。因此,组合使用CPU和GPU来执行具有数据并行内容的工作量正在成为一项体积技术(volumetechnology)。然而,GPU传统上已在约束程序设计环境中进行操作,其可主要用于图形的加速。这些约束由以下事实而引起:GPU并不具有与CPU一样丰富的程序设计生态系统。因此,它们的使用已主要限于二维(2D)和三维(3D)图形以及少数前沿的多媒体应用,这些多媒体应用已被习惯地用于处理图形和视频应用程序设计接口(API)。随着多厂商支持的OpenCL和DirectCompute标准API和支持工具的出现,GPU在传统应用中的限制已被扩展到传统图形的范围之外。虽然OpenCL和DirectCompute是有希望的开端,但是在创建允许将CPU和GPU组合来像CPU一样流畅地用于大多数程序设计任务的环境和生态系统方面仍存在着许多障碍。现有的计算系统常常包括多个处理装置。例如,一些计算系统包括在独立芯片上的CPU和GPU(例如,CPU可能位于母板上,而GPU可能位于图形卡上)或在单个芯片封装中的CPU和GPU。然而,这两种布置仍包括与以下各项相关的重大挑战:(i)独立的存储系统、(ii)有效调度、(iii)提供进程之间的服务质量(QoS)保证、(iv)程序设计模型以及(v)编译至多个目标指令集体系结构(ISA)—全部都要同时使功耗降到最小。例如,离散的芯片布置迫使系统和软件体系结构设计者利用芯片间接口来使每一个处理器存取存储器。虽然这些外部接口(例如,芯片间接口)对用于配合异构型处理器的存储器等待时间和功耗具有负效应,但是独立的存储系统(即,独立的地址空间)和驱动器管理的共享存储器产生开销,所述开销对细粒卸荷(finegrainoffload)来说变得不可接受。离散芯片布置和单芯片布置两者都会限制能够发送至GPU来执行的命令的类型。举例来说,常常不应将计算命令(例如,物理或人工智能命令)发送至GPU来执行。存在这个基于性能的限制是因为CPU可能相对快速地需要由这些计算命令执行的操作的结果。然而,由于当前系统中的向GPU分派工作的高开销以及这些命令可能必须排队等候首先执行其它先前发出的命令的事实,所以将计算命令发送至GPU所引发的等待时间常常是不可接受的。假定传统GPU可能不会有效地执行一些计算命令,则所述命令必须在CPU内部执行。必须在CPU上执行命令增加了对CPU的处理负担并且会阻碍总的系统性能。虽然GPU为计算卸荷提供了极好的机会,但是传统GPU可能并不适合于系统-软件-驱动进程管理,所述系统-软件-驱动进程管理是在多处理器环境中进行有效操作所需要的。这些限制会产生若干问题。例如,由于进程无法被有效地识别和/或抢先,所以流氓进程可以在任意长的时间内占用GPU硬件。在其它情况下,对硬件进行上下文切断的能力受到严重约束,此情形发生在非常粗略的粒度下,而且只发生在程序执行过程中一组极为有限的点上。存在这个约束是因为不支持节省必要的体系结构和微体系结构状态来恢复和继续进程。缺乏对精确异常的支持会阻止有故障的作业在稍晚的点上进行上下文切出和恢复,从而导致较低的硬件利用率,因为有故障的线程占用了硬件资源而且在故障处理期间处于闲置状态。将CPU、GPU、I/O存储器管理组合成统一体系结构以使得计算任务可以有效地进行调度和分配,这需要系统和应用软件具有统一CPU/GPU系统体系结构的特征、特性、互连和属性等方面的某些知识。
技术实现思路
所需要的是用于发现并报告装置和系统拓扑的特性的改进的方法和设备,所述特性与向实施组合式CPU/GPU体系结构的系统的各种计算资源有效地调度和分配计算任务有关。虽然GPU、加速处理单元(APU)以及通用用途的图形处理单元(GPGPU)是这个领域中常用的术语,但是表述“加速处理设备(APD)”被认为是更广义的表述。例如,APD是指硬件和/或软件的任何配合集合,与常规CPU、常规GPU、软件和/或其组合相比,所述任何配合集合以加速方式完成与加速图形处理任务、数据并行任务或嵌套数据并行任务相关的那些功能和计算。作为组合式CPU/APD体系结构系统的一个方面,提供用于发现并报告装置和系统拓扑的特性的方法和设备,所述特性与向组合式CPU/APD体系结构系统的各种计算资源有效地调度和分配计算任务有关。组合式CPU/APD体系结构在灵活的计算环境中对CPU和APD进行统一。在一些实施方案中,在单个集成电路中实施组合式CPU/APD体系结构能力,所述集成电路的元件可以包括一个或多个CPU核心和一个或多个APD核心。组合式CPU/APD体系结构创造了一个基础,在此基础上可以构建现有和新的编程框架、语言和工具。附图说明图1A是根据本专利技术的处理系统的说明性方框图。图1B是图1A中所示的APD的说明性方框图。图2是组合式CPU/APD体系结构系统的说明性方框图。图3是APU的说明性方框图,所述APU是具有CPU、APD而且进一步具有存储器管理和I/O存储器管理电路的集成电路,其中所述CPU具有多个核心,所述APD具有多个单指令多数据(SIMD)引擎。图4是专用APD的说明性方框图。图5是根据本专利技术的实施方案的说明性进程的流程图。图6是根据本专利技术的实施方案的说明性进程的流程图。具体实施方式一般来说,软件应该知晓基础硬件的特性,从而能够更好地利用平台的执行能力,以便进行特征利用和任务调度。为了有效地利用组合式CPU/APD体系结构系统的计算资源,必须发现平台的特征、特性、互连、属性和/或特点并且将其报告给软件。作为组合式CPU/APD体系结构系统的一个方面,提供用于发现并报告装置和系统拓扑的特性的方法和设备,所述特性与向组合式CPU/APD体系结构系统的各种计算资源有效地调度和分配计算任务有关。根据本专利技术的组合式CPU/APD体系结构在灵活的计算环境中对CPU和APD进行统一。在一些实施方案中,在单个集成电路中实施组合式CPU/APD体系结构能力,所述集成电路的元件可以包括一个或多个CPU核心和一个或多个统一APD核心,如下文更详细地解释。与CPU和APD通常分离(例如,位于单独的卡或板上或者位于单独的封装中)的传统计算环境相反,组合式CPU/APD体系结构创造了一个基础,在此基础上可以构建现有和新的编程框架、语言和工具。组合式CPU/APD系统体系结构的统一环境使得程序员能够编写相应的应用程序,所述应用程序无缝地在CPU与APD之间转变数据处理,进而从每个设备必须提供的最佳属性中获益。统一的单个编程平台可以提供强大的基础,用来开发可以采用并行方式的语言、框架和应用程序。在以下详述中,对“一个实施方案”、“实施方案”、“示例实施方案本文档来自技高网
...
组合式CPU/GPU体系结构系统中的装置发现和拓扑报告

【技术保护点】

【技术特征摘要】
【国外来华专利技术】2010.12.15 US 61/423,5251.一种组合式中央处理器(CPU)和加速处理设备(APD)体系结构系统,其包括:计算机存储器,其具有物理存储大小和逻辑布置;部件资源关联表,其设置在所述计算机存储器中;中央处理器(CPU),其连接至所述计算机存储器;所述中央处理器具有许多可发现的特性,所述中央处理器被配置来响应于执行一个或多个指令而提供所述中央处理器、加速处理设备和所述存储器的可发现的特性的至少一部分;加速处理设备(APD),其连接至所述计算机存储器,所述加速处理设备具有许多可发现的特性,并且连接至加速处理设备本地存储器;以及存储器管理单元,其连接至所述计算机存储器,并且由所述中央处理器和所述加速处理设备共享;其中所述系统被配置来执行操作系统;其中所述可发现的特性与向所述中央处理器和所述加速处理设备进行计算任务的调度和分配有关,并且暴露所述计算机存储器或所述加速处理设备本地存储器的相干和不相干存取范围,所述操作系统按照不同方式来管理所述相干和不相干存取范围;其中,所述部件资源关联表被配置为存储所述中央处理器的可发现的特性和存储所述加速处理设备的可发现的特性;其中,所述部件资源关联表包括用于可发现的组合式中央处理器/加速处理设备体系结构平台特性的头部结构。2.如权利要求1所述的系统,其进一步包括用于编码所述发现的特性并且将所述编码的特性存储在存储器表中的逻辑。3.如权利要求2所述的系统,其中所述存储器表驻留在所述计算机存储器中。4.如权利要求2所述的系统,其进一步包括加速处理设备本地存储器,并且其中所述加速处理设备本地存储器的特性被存储在所述存储器表中。5.如权利要求1所述的系统,其中所述可发现的特性进一步包括系统拓扑信息。6.一种操作组合式中央处理器(CPU)和加速处理设备(APD)体系结构系统的方法,其包括:发现系统拓扑信息;发现一个或多个中央处理器计算核心的特性;发现一个或多个加速处理设备计算核心的特性;发现一个或多个支持部件的特性;发现系统存储器的特性;如果存在加速处理设备本地存储器,那么发现所述加速处理设备本地存储器的特性;发现数据路径的特性,包括类型、宽度、速度、相干性和等待时间中的一个或多个;以及将所述数据路径的特性、所述加速处理设备本地存储器的特性、所述系统存储器的特性、所述一个或多个支持部件的特性、所述一个或多个加速处理设备计算核心的特性和所述一个或多个中央处理器计算核心的特性中的至少一个存储在一个或多个信息结构中的至少一个中,所述一个或多个信息结构包括部件资源关联表,以及所存储的信息表示所发现的特性的至少一部分,其中所述部件资源关联表包括用于可发现的组合式中央处理器/加速处理设备体系结构平台特性的头部结构。7.如权利要求6所述的方法,其中所述发现的特性与向所述组合式中央处理器/加速处理设备体系结构系统中的多个计算资源中的一个或多个调度计算任务有关。8.如权利要求6所述的方法,其进一步包括由多个计算资源中的至少一个来执行一个或多个指令,此类指令执行在执行所述一个或多个指令的所述计算资源的一个或多个...

【专利技术属性】
技术研发人员:保罗·布林勒伦德特·万多杰弗里·程埃琳娜·特里托马斯·沃勒艾尔沙德·拉赫曼
申请(专利权)人:超威半导体公司ATI科技无限责任公司
类型:
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1