当前位置: 首页 > 专利查询>英特尔公司专利>正文

由无特权应用进行的图形工作量提交制造技术

技术编号:15233836 阅读:51 留言:0更新日期:2017-04-28 02:44
方法和系统可以提供:在控制器处接收由缺乏系统级别特权的应用进行的工作量提交的通知。此外,所述控制器可以用于调度工作量提交到图形硬件组件的转移以用于执行,其中所述控制器具有系统级别特权。在一个示例中,所述转移绕过操作系统和与图形硬件组件相关联的内核模式驱动器。

Submission of graphics workload by non privileged applications

Methods and systems can provide a notification of a workload submission at the controller for applications that lack system level privileges. In addition, the controller may be used to schedule the transfer of workload to the graphics hardware component for execution, wherein the controller has a system level privilege. In one example, the transfer bypasses the operating system and the kernel mode driver associated with the graphics hardware component.

【技术实现步骤摘要】
【国外来华专利技术】相关申请的交叉引用本申请要求于2014年6月26日提交的美国非临时专利申请No.14/315,626的优先权权益。
技术介绍
图形相关应用(诸如例如三维(3D)渲染和媒体播放器应用)可能不具有提供对图形处理单元(GPU)资源的直接访问的特权。相应地,驻留在相对无特权“Ring3(环3)”保护级别(例如缺乏系统级别特权)处的给定图形应用可能加载图形用户模式驱动器(UMD),其进而将工作量提交到驻留在“Ring0(环0)”保护级别(例如具有系统级别特权)处的操作系统(OS)和/或内核模式驱动器(KMD)。OS可能例如管理存储器操作,诸如分页,并且KMD可能例如利用与所提交的工作量相对应的命令填充GPU命令缓冲器和硬件寄存器,其中GPU可以使用该命令来执行工作量。由OS和KMD对工作量的中间处理可能增加中央处理单元(CPU)开销并增多处理等待时间,其可能对性能、功率消耗和/或电池寿命具有负面影响。附图说明实施例的各种优点将通过阅读以下说明书和随附权利要求且通过参考以下附图而对本领域技术人员来说变得明显,在附图中:图1是根据实施例的图形工作量提交环境的示例的框图;图2是根据实施例的基于队列的图形工作量提交架构的示例的框图;图3A、3B和3C分别是根据实施例的对应用、存储器设备和控制器进行操作的方法的示例的流程图;图4是根据实施例的控制器的示例的框图;图5是根据实施例的系统的示例的框图;图6是根据实施例的具有导航控制器的系统的示例的框图;以及图7是根据实施例的具有小形状因子的系统的示例的框图。具体实施方式图1示出了下述环境:其中,在无特权保护级别(例如,Ring3保护级别)处操作的各种应用10(10a-10d)经由显示器或其他合适设备(未示出)生成与图像、视频、图形、数据和/或其他信息的视觉输出相关联的工作量。例如,第一应用10a(“应用#1”)可能包括显示三维(3D)场景的视频游戏,第二应用10b(“应用#2”)可以包括提供电影和/或视频剪辑的回放的媒体播放器,第三应用10c(“应用#3”)可能包括对在线内容进行流送的网页浏览器,第四应用10d(“应用#4”)可以包括显示消息传递内容的电子邮件程序,等等。在所图示的示例中,应用10加载各种类型的图形用户模式驱动器(UMD)14(14a-14d)和/或其他中间件来促进工作量提交。例如,第一和第二UMD14a、14b可能是特定类型(“类型A”,例如Microsoft公司的注册商标DIRECTX)的,第三UMD14c可以是另一个类型(“类型B”,例如SiliconGraphics公司的注册商标OPENGL)的,第四UMD14d可能是又一个类型(“类型C”,例如KhronosGroup的标志OpenComputingLanguage/OPENCL)的,等等。所图示的UMD14将与其相应内容的渲染相关联的图形工作量提交到控制器12(例如微控制器、嵌入式控制器)。控制器12可以驻留在有特权保护级别处(例如,控制器能够访问硬件资源(诸如GPU中的寄存器))且具有将工作量直接提交到图形硬件(HW)16(诸如例如图形处理器、管线、寄存器、命令缓冲器、队列、显示器等等)的权力。要特别注意的是,所图示的工作量提交转移绕过了操作系统(OS)模块18(例如,与主机处理器(未示出)相关联和/或在主机处理器上运行)以及与图形硬件16相关联和/或在图形硬件16上运行的图形内核模式驱动器(KMD)20。通过将图形调度从OS模块18和KMD20卸载到控制器12,所图示的可以减少等待时间,减小主机处理器开销,改进性能,降低功率消耗,延长电池寿命等等。现在转到图2,示出了基于队列的图形工作量提交架构。在所图示的示例中,缺乏系统级别特权的第一应用22(“应用A”)生成涉及例如3D内容(诸如红(R)基元)的渲染的第一工作量24(“图形工作#A1”)并(例如经由UMD(未示出))将第一工作量24提交到与第一应用22相关联的工作队列28(例如循环缓冲器)。在将第一工作量24的提交(“提交#A1”)放置在工作队列28中时,第一应用22可以通过例如写入到高速缓存线或与第一应用22相关联的其他地址/存储器位置来触发门铃30。监视器32(例如,运行在存储器设备(未示出)中的中断处理程序或探听模块)可以检测门铃30的触发,基于门铃地址来识别第一应用22,以及将由第一应用22进行的工作量提交的通知直接发布给具有系统级别特权的控制器34。在一个示例中,该通知是中断。已经讨论的控制器34(其可以类似于控制器12(图1))可以执行下述固件指令(例如,由运行在主机处理器上的驱动器加载、从内部非易失性存储器/NVM加载等):从监视器32接收工作量提交的通知,从工作队列28检索工作量提交以及调度工作量提交到图形硬件36的组件的转移以用于执行。如已经注意到的,工作量提交的转移可以绕过OS和/或KMD(未示出)以便减小主机处理器开销且减少图形提交时间。更特别地,控制器34可以解析工作量提交以获得一个或多个命令,将该一个或多个命令添加到图形硬件36中的提交队列38,并基于图形提交策略(例如定时器到期、工作完成事件)将该一个或多个命令从提交队列38转移到图形硬件36的其他组件。因此,该命令可以被直接从提交队列38转移到组件,诸如例如图形管线组件(例如命令流送器、顶点处理、栅格化/Z缓冲、媒体采样器、纹理采样器、媒体像素操作/Ops、像素操作/Ops)、执行单元组件40、媒体处理组件42、多格式编解码器组件44、显示组件46等等。此外,解析工作量提交可以涉及例如修改、添加和/或按优先顺序排列命令、检查命令以及确保不可信用户模式应用不可以提交有特权的命令到硬件(例如丢弃非法命令)等等。类似地,缺乏系统级别特权的第二应用48(“应用B”)可以生成第二工作量50(“图形工作#B1”),其涉及例如媒体内容的重放。所图示的第二应用48(例如经由UMD(未示出))将第二工作量50提交到与第二应用48相关联的工作队列52(例如循环缓冲区)。在将第二工作量50的提交(“提交#B1”)放置在工作队列52中时,第二应用48可以通过例如写入到高速缓存线或与第二应用48相关联的其他地址/存储器位置来触发门铃54。监视器32可以检测门铃54的触发,基于门铃地址来识别第二应用48,以及将由第二应用48进行的工作量提交的通知(例如DPC、中断)直接发布给具有系统级别特权的控制器34。在不涉及OS模块或KMD的情况下,控制器34可以调度工作量提交到图形硬件36的一个或多个组件的转移。由第一应用22生成的第三工作量26可以以绕过OS和KMD的方式类似地加以处理。控制器34可以被并入图形硬件36内或在图形硬件36外部实现。图3A、3B和3C分别示出了对应用、存储器设备和控制器进行操作的方法56、58和60。方法56、58和60可以被实现为:可执行软件中的模块,作为存储在存储器(诸如随机存取存储器(RAM)、只读存储器(ROM)、可编程ROM(PROM)、固件、闪速存储器等)的机器可读或计算机可读存储介质中的逻辑指令的集合;可配置逻辑(诸如例如可编程逻辑阵列(PLA)、现场可编程门阵列(FPGA)、复杂可编程逻辑器件(CPLD))中本文档来自技高网...
由无特权应用进行的图形工作量提交

【技术保护点】
一种管理图形工作量的系统,包括:图形硬件组件;主机处理器,执行缺乏系统级别特权的应用;存储器设备,发布由所述应用进行的工作量提交的通知;控制器,包括:通知模块,接收工作量提交的通知;以及调度器,调度工作量提交到图形硬件组件的转移以用于执行。

【技术特征摘要】
【国外来华专利技术】2014.06.26 US 14/3156261.一种管理图形工作量的系统,包括:图形硬件组件;主机处理器,执行缺乏系统级别特权的应用;存储器设备,发布由所述应用进行的工作量提交的通知;控制器,包括:通知模块,接收工作量提交的通知;以及调度器,调度工作量提交到图形硬件组件的转移以用于执行。2.根据权利要求1所述的系统,其中所述转移绕过与主机处理器相关联的操作系统。3.根据权利要求1所述的系统,其中所述转移绕过与图形硬件组件相关联的内核模式驱动器。4.根据权利要求1所述的系统,其中所述通知是中断。5.根据权利要求1到4中任一项所述的系统,其中所述调度器包括:检索组件,从与所述应用相关联的工作队列检索工作量提交;解析器,解析工作量提交以获得一个或多个命令;入队组件,将所述一个或多个命令添加到与图形硬件组件相关联的提交队列;以及离队组件,根据图形提交策略将所述一个或多个命令从提交队列转移到图形硬件组件。6.根据权利要求5所述的系统,其中所述解析器修改所述一个或多个命令中的至少一个,将至少一个命令添加到所述一个或多个命令,以及按优先顺序排列所述一个或多个命令。7.一种操作控制器的方法,包括:在所述控制器处接收由缺乏系统级别特权的应用进行的工作量提交的通知;以及使用所述控制器来调度工作量提交到图形硬件组件的转移以用于执行,其中所述控制器具有系统级别特权。8.根据权利要求7所述的方法,其中所述转移绕过操作系统。9.根据权利要求7所述的方法,其中所述转移绕过与图形硬件组件相关联的内核模式驱动器。10.根据权利要求7所述的方法,其中所述通知是中断。11.根据权利要求7到10中任一项所述的方法,其中使用所述控制器来调度转移包括:从与所述应用相关联的工作队列检索工作量提交;解析工作量提交以获得一个或多个命令;将所述一个或多个命令添加到与图形硬件组件相关联的提交队列;以及根据图形提交策略将所述一个或多个命令从提交队列转移到图形硬件组件。12.根据权利要求11所述的方法,其中解析工作量提交包括:修改所述一个或多个命令中的至少一个;将至少一个命令添加到所述一个或多个命令;以及按优先顺序排列所述一个或多个命令。13.一种管理图形工作量的控制器,包括:通知模块,接收由缺乏系统级别特权的应用进行的工作量提交的通知;以及调度器,调度工作...

【专利技术属性】
技术研发人员:M·拉马多斯N·R·彭卢鲁J·S·弗里泽尔A·N·沙
申请(专利权)人:英特尔公司
类型:发明
国别省市:美国;US

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

1