The operation of GPU is controlled based on the time required to perform one or more deadlines of one or more GPU tasks and the time required to complete (the currently executing) first GPU task and the time required to execute one or more other GPU tasks (currently not executed). Based on the comparison between deadlines and estimates, the operation parameters of GPU can be changed.
【技术实现步骤摘要】
【国外来华专利技术】控制GPU的操作背景图形处理器单元(GPU)是具有高度并行结构并且通常用于诸如纹理映射和渲染多边形的图形操作的处理器,GPU(其也可以被称为VPU)也可以用于非图形应用,例如执行数据并行计算。GPU可以运行几个进程,并且GPU内的调度系统选择下一个运行哪个进程。通常,基于同步(即,以由任务的相互依赖性确定的顺序运行任务)和优先级(即,在较低优先级任务之前运行较高优先级任务)来执行调度。如果启用了上下文切换,则一旦能够运行较高优先级任务(即,其未被同步阻止),则较高优先级任务(例如,与用户交互相关联的渲染任务)将中断较低优先级任务(例如,实况壁纸的渲染)。下面所述的实施方式仅作为例子被提供且不是解决控制GPU的已知方法的任何或所有缺点的实现的限制。概述提供专利技术概述来以简化形式引入在以下详细描述中将进一步描述的概念选择。这个概述并不打算识别所主张的主题的关键特征或必要特征,也不打算用作在确定所主张的主题的范围时的帮助。基于必须完成一个或更多个GPU任务的一个或更多个最后期限以及完成(当前正在执行的)第一GPU任务的执行所需的时间和执行(当前未执行的)一个或更多个其他GPU任务所需的时间的估计来控制GPU的操作。基于最后期限与估计之间的比较,可以改变GPU的操作参数。第一方面提供了一种控制GPU的操作的方法,该方法包括:确定完成多个GPU任务中的每一个的估计;以及将所述估计与所述多个GPU任务中的一个或更多个的最后期限进行比较;以及响应于确定一个或更多个最后期限不能被满足,改变GPU的操作。第二方面提供了一种图形处理器单元(GPU),包括微控制器,其中所述微控 ...
【技术保护点】
1.一种控制GPU的操作的方法,所述方法包括:在执行第一GPU任务(302)时,响应于第二GPU任务准备好运行(304),确定所述第一GPU任务和所述第二GPU任务中的哪一个具有较高优先级(306);和响应于确定所述第二GPU任务具有比当前执行的所述第一GPU任务更高的优先级:估计所述第一GPU任务和所述第二GPU任务中的每一个的完成时间(312),使用所估计的完成时间来确定所述第一GPU任务和所述第二GPU任务是否能够在与所述第二GPU任务相关联的最后期限之前完成(314),响应于确定所述第一GPU任务和所述第二GPU任务不能都在与所述第二GPU任务相关联的最后期限之前完成,改变所述GPU的操作以增加所述GPU的操作频率(334)并允许所述第一GPU任务在执行所述第二GPU任务(310)之前继续执行(308),响应于确定所述第一GPU任务和所述第二GPU任务都能够在与所述第二GPU任务相关联的最后期限之前完成,允许所述第一GPU任务继续执行(308、330)。
【技术特征摘要】
【国外来华专利技术】2015.12.18 GB 1522462.91.一种控制GPU的操作的方法,所述方法包括:在执行第一GPU任务(302)时,响应于第二GPU任务准备好运行(304),确定所述第一GPU任务和所述第二GPU任务中的哪一个具有较高优先级(306);和响应于确定所述第二GPU任务具有比当前执行的所述第一GPU任务更高的优先级:估计所述第一GPU任务和所述第二GPU任务中的每一个的完成时间(312),使用所估计的完成时间来确定所述第一GPU任务和所述第二GPU任务是否能够在与所述第二GPU任务相关联的最后期限之前完成(314),响应于确定所述第一GPU任务和所述第二GPU任务不能都在与所述第二GPU任务相关联的最后期限之前完成,改变所述GPU的操作以增加所述GPU的操作频率(334)并允许所述第一GPU任务在执行所述第二GPU任务(310)之前继续执行(308),响应于确定所述第一GPU任务和所述第二GPU任务都能够在与所述第二GPU任务相关联的最后期限之前完成,允许所述第一GPU任务继续执行(308、330)。2.根据权利要求1所述的方法,其中,确定完成多个GPU任务中的每一个的估计包括:识别一组感兴趣的GPU任务(502);和估计所识别的GPU任务中的每一个的完成时间(504),并且其中,将所述估计与所述多个GPU任务中的一个或更多个的最后期限进行比较包括:使用所估计的完成时间来确定每个GPU任务是否能够在与特定GPU任务相关联的最后期限之前完成(508),并且其中,响应于确定所有所识别的GPU任务不能在其相关联的最后期限之前完成,改变所述GPU的操作包括增加所述GPU的操作频率(512)。3.根据权利要求2所述的方法,其中,估计所识别的GPU任务中的每一个的完成时间包括,对于每个所识别的GPU任务:识别所述GPU任务的一个或更多个工作负载特性(316);访问每个识别的工作负载特性的存储的统计信息(318);和使用每个所识别的工作负载特性的所存储的统计信息生成估计的完成时间(320)。4.根据权利要求2或3所述的方法,还包括:确定与每个所识别的GPU任务相关联的最后期限(506)。5.根据权利要求4所述的方法,其中,基于显示刷新率来确定与GPU任务相关联的最后期限。6.根据权利要求1所述的方法,其中,确定完成多个GPU任务中的每一个的估计包括:在执行第一GPU任务(302)时,响应于第二GPU任务准备好运行(304),确定所述第一GPU任务和所述第二GPU任务中的哪一个具有较高优先级(306);和响应于确定所述第二GPU任务具有比当前执行的所述第一GPU任务更高的优先级:估计所述第一GPU任务和所述第二GPU任务中的每一个的完成时间(312),并且其中,将所述估计与所述多个GPU任务中的一个或更多个的最后期限进行比较包括:使用所估计的完成时间来确定所述第一GPU任务和所述第二GPU任务两者是否能够在与所述第二GPU任务相关联的最后期限之前完成(314),并且其中,响应于确定所述第一GPU任务和所述第二GPU任务不能都在与所述第二GPU任务相关联的最后期限之前完成,改变所述GPU的操作包括:中断所述第一GPU任务的执行并且执行所述第二GPU任务(328),并且其中,所述方法还包括:响应于确定所述第一GPU任务和所述第二GPU任务都能够在与所述第二GPU任务相关联的最后期限之前完成,允许所述第一GPU任务继续执行(308、330)。7.根据权利要求6所述的方法,其中,允许所述第一GPU任务继续执行包括:允许完成所述第一任务的执行(308)。8.根据权利要求6所述的方法,还包括:响应于确定所述第一GPU任务和所述第二GPU任务都能够在与所述第二GPU任务相关联的最后期限之前完成,设置定时器(330);和响应于所述定时器在所述第一GPU任务的执行的完成之前超时(332),中断所述第一GPU任务的执行并执行所述第二GPU任务(326)。9.根据权利要求1所述的方法,其中,估计所述第一GPU任务和所述第二GPU任务中的每一个的完成时间包括,对于每个GPU任务:识别所述GPU任务的一个或更多个工作负载特性(316);访问每个识别的工作负载特性的存储的统计信息(318);和使用所识别的工作负载特性的所存储的统计信息生成所述GPU任务的估计的完成时间(320)。10.根据权利要求6-9中任一项所述的方法,还包括:确定与所述第二GPU任务相关联的最后期限(324)。11.根据权利要求10所述的方法,其中,基于显示刷新率来确定与所述第二GPU任务相关联的最后期限。12.根据权利要求6-11中任一项所述的方法,还包括:更新与所述第一GPU任务和/或所述第二GPU任务相关联的所存储的统计信息(322)。13.根据权利要求6-12中任一项所述的方法,其中,所述第一GPU任务和所述第二GPU任务是图形任务。14.根据权利要求13所述的方法,其中,所述第一GPU任务和所述第二GPU任务是渲染任务。15.根据前述权利要求中任一项所述的方法,其中...
【专利技术属性】
技术研发人员:戴夫·罗伯茨,杰克逊·德索扎,
申请(专利权)人:想象技术有限公司,
类型:发明
国别省市:英国,GB
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。