资源分配的系统、方法及非暂时性计算机可读媒体技术方案

技术编号:18621235 阅读:36 留言:0更新日期:2018-08-08 00:21
一种资源分配的系统、方法及非暂时性计算机可读媒体,所述资源分配的系统包括:多个硬件资源;一个或多个处理器,被配置成执行一个或多个程序以实行一个或多个操作;以及资源分配器,被配置成向一组硬件线程实施所述多个硬件资源的资源分配。所述多个硬件资源的资源分配是通过以下步骤来实行:构建包括多个节点的链接列表,其中所述多个节点中的每一者分别包括关于下一节点或前一节点中的至少一者的信息;以第一次序将所述多个硬件资源中的自由资源的一个或多个范围分配给所述多个节点中的一个或多个节点;以及以与所述第一次序不同的第二次序来乱序地释放所分配节点。

Resource allocation system, method, and non temporary computer-readable medium

A resource allocation system, method, and non temporary computer readable media. The system of resource allocation includes multiple hardware resources; one or more processors are configured to perform one or more programs to perform one or more operations; and a resource dispenser is configured to implement a set of hardware threads. The resource allocation of multiple hardware resources is described. The resource allocation of the plurality of hardware resources is implemented by the following steps: building a link list including a plurality of nodes, in which each of the plurality of nodes includes information about at least one of the next node or the previous node respectively; in the first order, one of the free resources of the plurality of hardware resources is in the first order. Or multiple ranges are allocated to one or more nodes of the plurality of nodes; and the assigned nodes are released in a disorderly sequence in a second order different from the first order.

【技术实现步骤摘要】
资源分配的系统、方法及非暂时性计算机可读媒体
本申请大体来说涉及计算机系统,且更具体来说,涉及一种有序及乱序资源分配的系统及方法及非暂时性计算机可读媒体。
技术介绍
图形处理器(graphicsprocessingunit,GPU)在用于操纵计算机图形且甚至用于通用计算的计算机系统中得到广泛应用。这些计算机系统中的许多计算机系统必须管理会受到寄存器分配设计影响的高度受限的硬件资源。在这些系统中,有序分配器(例如,环形分配器)有时会由于其简单性而被用于资源分配。一些图形处理器针对图形及计算管线并行地运行多种着色器(shader)。另外,在任意时刻可有每一种类型的多个不同的着色器处于现用状态。对于这些条件,有序分配器可能不是用于分配资源的最高效的方式。
技术实现思路
本专利技术提供一种资源分配的系统。所述系统包括:多个硬件资源;一个或多个处理器,被配置成执行一个或多个程序以实行一个或多个操作;以及资源分配器,被配置成向一组硬件线程实施所述多个硬件资源的资源分配。所述多个硬件资源的资源分配是通过以下步骤来实行:构建包括多个节点的链接列表,其中所述多个节点中的每一者分别包括关于下一节点或前一节点中的至少一者的信息;以第一次序将所述多个硬件资源中的自由资源的一个或多个范围分配给所述多个节点中的一个或多个节点;以及以与所述第一次序不同的第二次序来乱序地释放所分配节点。本专利技术提供一种资源分配的方法。所述方法包括在包括多个硬件资源及一个或多个处理器的系统中构建包括多个节点的链接列表,所述一个或多个处理器被配置成执行一个或多个程序以实行一个或多个操作。所述多个节点中的每一者分别包括关于至少一个下一节点或前一节点的信息。所述方法还包括以第一次序将所述多个硬件资源中的自由资源的一个或多个范围分配给所述多个节点中的一个或多个节点。所述方法还包括以与所述第一次序不同的第二次序来乱序地释放所分配节点。本专利技术提供一种非暂时性计算机可读媒体。所述非暂时性计算机可读媒体包括多个指令,所述多个指令在由一个或多个处理器执行时,被配置成通过以下步骤来向所述一个或多个处理器实施多个硬件资源的资源分配:构建包括多个节点的链接列表,其中所述多个节点中的每一者分别包括关于下一节点或前一节点中的至少一者的信息;以第一次序将所述多个硬件资源中的自由资源的一个或多个范围分配给所述多个节点中的一个或多个节点;以及以与所述第一次序不同的第二次序来乱序地释放所分配节点。在阐述以下具体实施方式之前,陈述在本专利文件通篇中所使用的某些用词及短语的定义可为有利的:用语“包括(include)”及“包括(comprise)”以及其派生词意指包括但不限于;用语“或(or)”是包括在内的,意指及/或;短语“与...相关联(associatedwith)”及“与其相关联(associatedtherewith)”、以及其派生形式可意指包括、包括在...内、与...互连、包含、包含在...内、连接到...或与...连接、耦合到...或与...耦合、可与...连通、与...合作、交错(interleave)、并置(juxtapose)、接近、结合到...或与...结合、具有、具有...性质、等等;且用语“控制器”意指任意控制至少一个操作的任意装置、系统或其部分,此种装置可以硬件、固件、或软件、或者硬件、固件、或软件中的至少两者的一些组合来实施。应注意,与任意特定控制器相关联的功能可为集中式的或分布式的,无论是在本地还是远程的。在本专利文件通篇中提供了某些用词及短语的定义,所属领域中的技术人员应理解,在许多情形中(即使不是大多数情形中),这些定义适用于这些所定义的用词及短语的以前的用法以及将来的用法。另外,以下阐述的各种功能可由一个或多个计算机程序来实施或支持,所述一个或多个计算机程序中的每一者是由计算机可读程序代码形成且收录在计算机可读媒体中。用语“应用”及“程序”是指适合实作在合适的计算机可读程序代码中的一个或多个计算机程序、软件组件、指令集(setsofinstruction)、流程、函数、物件、类(class)、实例、相关数据、或其一部分。短语“计算机可读程序代码”包括任意类型的计算机代码,包括源代码、目标代码、及可执行代码。短语“计算机可读媒体”包括能够由计算机存取的任意类型的媒体,例如只读存储器(readonlymemory,ROM)、随机存取存储器(randomaccessmemory,RAM)、硬盘驱动器(harddiskdrive)、光盘(compactdisc,CD)、数字视频光盘(digitalvideodisc,DVD)、或任意类型的存储器。“非暂时性”计算机可读媒体不包括传输暂时性电信号或其他信号的有线链路、无线链路、光学链路、或其他通信链路。非暂时性计算机可读媒体包括可在其中永久地存储数据的媒体以及可在其中存储数据且随后对数据进行改写的媒体(例如,可重写光盘或可擦除存储器装置)。附图说明为了更完整地理解本专利技术及其优点,现结合附图参考以下说明,在附图中,相同的参考编号表示相同的部件:图1示出根据本专利技术的示例性计算系统。图2及图3示出根据本专利技术的计算系统中的示例性装置。图4示出根据本专利技术实施例的环形缓冲器分配。图5示出根据本专利技术实施例的双重链接队列节点。图6示出根据本专利技术实施例的分配表。图7示出根据本专利技术实施例的分配进程。符号的说明100:计算系统/系统102:网络104、200:服务器106:客户机装置/台式计算机108:客户机装置/移动电话/智能手机110:客户机装置/个人数字助理112:客户机装置/膝上型计算机114:客户机装置/平板计算机116:基站118:无线接入点205:总线系统210:处理装置215:存储装置220:通信单元225:输入/输出单元230、360:存储器235:持久性存储元件240、365:硬件资源245、370:资源分配器300:客户机装置305:天线310:射频收发器315:发射处理电路系统320:麦克风325:接收处理电路系统330:扬声器340:主处理器/主控制器345:输入/输出接口350:小键盘355:显示器/显示单元361:操作系统程序362:应用400:环形缓冲器405:分配/节点/节点J410:分配/节点415:分配/节点/第三节点420、430:起点/分配头425、435、445:终点440:起点500:双重链接队列节点505:分配头的(起点,终点)510:节点j515:节点i/前一节点520:节点k/下一节点600:分配表605:分配头610:分配615:节点700:分配进程705、710、715、720、725:步骤具体实施方式以下所论述的图1至图7以及在本专利文件中用于阐述本专利技术原理的各种实施例仅用于例示,而不应被视为以任何方式限制本专利技术的范围。所属领域中的技术人员应理解,本专利技术的原理可实施于任意经过适当配置的装置或系统中。图形处理器(GPU)的其中一个主要问题是对图形处理器的可编程部件(可编程硬件)进行资源分配,所述可编程部件在计算机架构教科书中被称为算术逻辑单元(ArithmeticLogicUnit,ALU)、且在本文中被称为处理元件(ProcessingElements,PE)。处理元件除本文档来自技高网...

【技术保护点】
1.一种资源分配的系统,其特征在于,包括:多个硬件资源;一个或多个处理器,被配置成执行一个或多个程序以实行一个或多个操作;以及资源分配器,被配置成通过以下步骤来向一组硬件线程实施所述多个硬件资源的资源分配:构建包括多个节点的链接列表,其中所述多个节点中的每一者分别包括关于下一节点或前一节点中的至少一者的信息;以第一次序将所述多个硬件资源中的自由资源的一个或多个范围分配给所述多个节点中的一个或多个节点;以及以与所述第一次序不同的第二次序来乱序地释放所分配节点。

【技术特征摘要】
2017.01.31 US 15/421,2791.一种资源分配的系统,其特征在于,包括:多个硬件资源;一个或多个处理器,被配置成执行一个或多个程序以实行一个或多个操作;以及资源分配器,被配置成通过以下步骤来向一组硬件线程实施所述多个硬件资源的资源分配:构建包括多个节点的链接列表,其中所述多个节点中的每一者分别包括关于下一节点或前一节点中的至少一者的信息;以第一次序将所述多个硬件资源中的自由资源的一个或多个范围分配给所述多个节点中的一个或多个节点;以及以与所述第一次序不同的第二次序来乱序地释放所分配节点。2.根据权利要求1所述的资源分配的系统,其特征在于,所述资源分配器被配置成基于自由资源能够被分配到的节点的最大数目来选择分配头的数目,其中所述分配头分别对应于所述多个硬件资源中的自由资源的邻接范围。3.根据权利要求1所述的资源分配的系统,其特征在于,所述资源分配器被配置成基于对于资源的请求,从所述自由资源的所述一个或多个邻接范围中选择第一范围来分配给所述一个或多个节点中的第一节点。4.根据权利要求3所述的资源分配的系统,其特征在于,所述选择是基于所述请求的元数据。5.根据权利要求3所述的资源分配的系统,其特征在于,所述资源分配器通过选择与所请求资源的量最接近的自由资源量的范围来选择所述第一范围。6.根据权利要求3所述的资源分配的系统,其特征在于,所述资源分配器通过选择处于所请求资源的量的预定义裕量以内的自由资源量来选择所述第一范围。7.根据权利要求1所述的资源分配的系统,其特征在于,所述资源分配器被配置成从所述自由资源的所述一个或多个邻接范围中选择第一范围来分配给所述一个或多个节点中的第一节点,其中所述资源分配器通过选择具有最大的自由资源量的范围来选择所述第一范围。8.根据权利要求1所述的资源分配的系统,其特征在于,所述资源分配器被配置成通过将所述多个硬件资源重新映射到以下中的一者来乱序地释放节点:前一所分配节点;下一所分配节点;或者具有较少资源的分配头。9.根据权利要求1所述的资源分配的系统,其特征在于,所述资源分配器通过将所释放分配的资源与自由资源的范围进行合并来释放所述所分配节点。10.根据权利要求1所述的资源分配的系统,其特征在于以下中的至少一者:以所述第一次序进行分配包括以所述第一次序将所述多个硬件资源中的自由资源的一个或多个邻接范围分配给所述多个节点中的一个或多个节点;或者以所述第一次序进行分配包括:将所述自由资源的所述一个或多个范围分配给一组或多组线程是由所述一个或多个处理器来执行。11.一种资源分配的方法,其特征在于,包括:在包括多个硬件资源及一个或多个处理器的系统中构建包括多个节点的链接列表,所述一个或多个处理器被配置成执行一个或多个程序以实行一个或多个操作,其中所述多个节点中的每一者分别包括关于至少一个节点或前一节点的信息;以第一次序将所述多个硬件资源中的自由资源的一个或多个范围分配给所述多个节点中的一个或多个节点;以及以与所述第一次序不同的第二次序来乱序地释放所分配节点。12.根据权利要求11所述的资源分配的方法,其特征在于,进一步包括基于自由资源能够被分配到的节点的...

【专利技术属性】
技术研发人员:阿布希那夫·格拉斯
申请(专利权)人:三星电子株式会社
类型:发明
国别省市:韩国,KR

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

1