本发明专利技术通过构建第一信息表和第二信息表,根据所述第一信息表和所述第二信息表通过内核组选择方法确定最优内核组,所述第一信息表存储内核单独执行时的内核信息,所述第二信息表存储两个内核一起执行时的内核信息,所述内核包括内存密集型内核与计算密集型内核。与现有技术相比,本发明专利技术从多核内核中选择最优的内核组,通过高效的GPU多核之间的资源共享方法,进一步提升了GPU的资源利用率。进一步提升了GPU的资源利用率。进一步提升了GPU的资源利用率。
【技术实现步骤摘要】
一种GPU资源共享方法
[0001]本专利技术属于资源共享领域,具体涉及一种GPU资源共享方法。
技术介绍
[0002]图形处理器(英语:Graphics Processing Unit,缩写:GPU),又称显示核心、视觉处理器、显示芯片,是一种专门在个人电脑、工作站、游戏机和一些移动设备(如平板电脑、智能手机等)上图像运算工作的微处理器。用途是将计算机系统所需要的显示信息进行转换驱动,并向显示器提供行扫描信号,控制显示器的正确显示,是连接显示器和个人电脑主板的重要元件,也是“人机对话”的重要设备之一。
[0003]GPU主要进行浮点运算和并行运算,其浮点运算和并行运算速度可以比CPU强上百倍之多,使用GPU虚拟化技术之后,可以让运行在数据中心服务器上的虚拟机实例共享使用同一块或多块GPU处理器进行图形运算,这种安全且高效的桌面访问方式,被越来越多的用户追捧。虽然此策略提高了物理服务器的总资源利用率,但由于来自多个虚拟机的大量请求,总体性能可能会急剧下降。
[0004]为了提升GPU的资源利用率,提出了多核技术,该技术将计算资源划分为多个核,通过多个内核之间高效的GPU资源共享提升资源利用率。然而,随着虚拟机数量的增长,另一个挑战是如何从多核内核中选择最优的内核组,现有技术中多数将内存密集型内核与计算密集型内核进行搭配运行,然而,在某些情况下,内存密集型内核与内存密集型内核的搭配运行或者计算密集型内核与计算密集型内核的搭配运行性能优于内存需求型内核与计算需求型内核的搭配,因此,仅通过内核的类型确定调度哪些内核并不能最大限度的提升资源利用率。
技术实现思路
[0005]本专利技术提供一种GPU资源共享方法,目的在于解决GPU资源共享过程中存在的资源利用率低的技术问题。
[0006]为实现上述目的,本专利技术提供一种GPU资源共享方法,所述方法包括以下步骤:
[0007]一种GPU资源共享方法,其特征在于:构建第一信息表和第二信息表,根据所述第一信息表和所述第二信息表通过内核组选择方法确定最优内核组,并根据得到的最优内核组实现GPU资源共享,所述第一信息表存储内核单独执行时的内核信息,所述第二信息表存储两个内核一起执行时的内核信息,所述内核包括内存密集型内核与计算密集型内核。
[0008]所述第一信息表包括:ID、IPC_S、K_NO,其中,ID为序号,IPC_S为内核对应的每个周期的指令数,K_NO为内核标识。
[0009]所述第二信息表包括:ID、IPC_G、K_NO1、K_NO2、TPS,其中,ID为序号,IPC_G表示两个内核一起执行时每个周期的指令数,TPS为系统吞吐量。
[0010]系统吞吐量TPS通过使用第一信息表中的内核的单独执行时IPC_S的信息以及第二信息表中两个内核并行执行时内核的IPC_G计算得到。
[0011]系统吞吐量TPS通过如下公式计算得到:TPS=(IPC_S(i)+IPC_S(j))/IPC_G(s,j),其中,i、j分别表示两个不同的内核。根据权利要求1所述的GPU资源共享方法,其特征在于:所述内核组选择方法包括:当n个新内核在内核队列等待时,利用硬件性能计数器按顺序收集内核单独执行时的IPC_S和可能的内核组的内核组IPC_G,使用内核单独执行时的IPC和可能的内核组的内核组IPC计算内核组吞吐量TPS,选择TPS最大的内核组为最优内核组。
[0012]本专利技术通过构建第一信息表和第二信息表,根据所述第一信息表和所述第二信息表通过内核组选择方法确定最优内核组,所述第一信息表存储内核单独执行时的内核信息,所述第二信息表存储两个内核一起执行时的内核信息,所述内核包括内存密集型内核与计算密集型内核。与现有技术相比,本专利技术从多核内核中选择最优的内核组,通过高效的GPU多核之间的资源共享方法,进一步提升了GPU的资源利用率。
附图说明
[0013]图1为本专利技术实施例的流程示意图。
具体实施方式
[0014]下面结合附图对本专利技术作进一步详细描述:
[0015]如图1所示,图1是本专利技术实施例涉及的流程示意图,本专利技术涉及一种GPU资源共享方法,其特征在于:构建第一信息表和第二信息表,根据所述第一信息表和所述第二信息表通过内核组选择方法确定最优内核组,并根据得到的最优内核组实现GPU资源共享,所述第一信息表存储内核单独执行时的内核信息,所述第二信息表存储两个内核一起执行时的内核信息,所述内核包括内存密集型内核与计算密集型内核。
[0016]所述第一信息表包括:ID、IPC_S、K_NO,其中,ID为序号,IPC_S为内核对应的每个周期的指令数,K_NO为内核标识。
[0017]第一信息表结构如下:
[0018]IDIPC_SK_NO0208K01136K12693K2
………………
n537Kn
[0019]所述第二信息表包括:ID、IPC_G、K_NO1、K_NO2、TPS,其中,ID为序号,IPC_G表示两个内核一起执行时每个周期的指令数,TPS为系统吞吐量。
[0020]第二信息表结构如下:
[0021]IDIPC_GK_NO1K_NO2TPS0208K0K_NO21.31136K1K_NO21.22693K2K_NO21.7
………………
K_NO2
……
n537KnK_NO21.15
[0022]系统吞吐量TPS通过使用第一信息表中的内核的单独执行时IPC的信息以及第二信息表中两个内核并行执行时内核的IPC1、IPC2计算得到。
[0023]其中,TPS=(IPC_S(i)+IPC_S(j))/IPC_G(s,j),其中,i、j分别表示两个不同的内核,IPC_G(s,j)可以通过两个内核同时执行时,i内核与j内核的IPC信息通过加权求和或者其他方式计算得到。
[0024]所述内核组选择方法包括:当n个新内核在内核队列等待时,利用硬件性能计数器按顺序收集内核单独执行时的IPC_S和可能的内核组的内核组IPC_G,使用内核单独执行时的IPC和可能的内核组的内核组IPC计算内核组吞吐量TPS,选择TPS最大的内核组为最优内核组。
[0025]最后应说明的是,上述技术方案只是本专利技术的一种实施方式,对于本领域内的技术人员而言,在本专利技术公开了应用方法和原理的基础上,很容易做出各种类型的改进或变形,而不仅限于本专利技术上述具体实施方式所描述的方法,因此前面描述的方式只是优选的,而并不具有限制性的意义。
本文档来自技高网...
【技术保护点】
【技术特征摘要】
1.一种GPU资源共享方法,其特征在于:构建第一信息表和第二信息表,根据所述第一信息表和所述第二信息表通过内核组选择方法确定最优内核组,并根据得到的最优内核组实现GPU资源共享,所述第一信息表存储内核单独执行时的内核信息,所述第二信息表存储两个内核一起执行时的内核信息,所述内核包括内存密集型内核与计算密集型内核。2.根据权利要求1所述的GPU资源共享方法,其特征在于:所述第一信息表包括:ID、IPC_S、K_NO,其中,ID为序号,IPC_S为内核对应的每个周期的指令数,K_NO为内核标识。3.根据权利要求1所述的GPU资源共享方法,其特征在于:所述第二信息表包括:ID、IPC_G、K_NO1、K_NO2、TPS,其中,ID为序号,IPC_G表示两个内核一起执行时每个周期的指令数,TPS为系统吞吐量。...
【专利技术属性】
技术研发人员:俞君杰,张博,姜明,孔陈祥,王立飞,
申请(专利权)人:江苏电力信息技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。