本申请公开使用组页面错误描述符来处理上下文切换和进程终止的技术。根据本申请,提供多种方法和系统用以:检测图形处理器上的进程的执行结束,且响应于该进程的执行结束把组页面错误描述符提供给操作系统(OS)的页面未命中处理程序,其中,组页面错误描述符可以向页面未命中处理程序指出,直到满足一个或多个未完成页面错误请求之前,图形处理器将不再生成进一步的页面错误请求。另外,可以从页面未命中处理程序接收到对组页面错误描述符的响应。在一个示例中,进程标识符被加入到组页面错误描述符中,其中,进程标识符由组页面错误描述符和一个或多个未完成页面错误请求所共享。
【技术实现步骤摘要】
【专利摘要】本申请公开使用组页面错误描述符来处理上下文切换和进程终止的技术。根据本申请,提供多种方法和系统用以:检测图形处理器上的进程的执行结束,且响应于该进程的执行结束把组页面错误描述符提供给操作系统(OS)的页面未命中处理程序,其中,组页面错误描述符可以向页面未命中处理程序指出,直到满足一个或多个未完成页面错误请求之前,图形处理器将不再生成进一步的页面错误请求。另外,可以从页面未命中处理程序接收到对组页面错误描述符的响应。在一个示例中,进程标识符被加入到组页面错误描述符中,其中,进程标识符由组页面错误描述符和一个或多个未完成页面错误请求所共享。【专利说明】使用组页面错误描述符来处理上下文切换和进程终止
本申请涉及计算技术,具体涉及使用组页面错误描述符来处理图形处理器中的上下文切换和进程终止的技术。
技术介绍
在传统的计算系统中,在软件访问在虚拟存储器空间中映射但没有加载到物理内存中的固定长度的毗邻存储器块(例如,页面)时,可能发生页面错误和/或未命中。最近的计算系统可以包括在访问虚拟存储器空间中的地址时经历页面错误的图形处理单元(GPU)。在这样的配置中,GPU的硬件可以把每一页面错误报告给在系统的中央处理单元(CPU)上运行的操作系统(OS)。当OS解决页面错误时,可以随后把页面错误响应从OS传输回给GPU。然而,如果GPU决定从现有的进程切换上下文到不同的进程或现有的进程遇到终止条件,则新的进程上下文和已回收的进程分别可能受到负面影响。例如,在上下文切换或进程终止之后被满足的未完成页面错误可能引起不正确的调度判决和/或系统不稳定性。这种不稳定性可以随着上下文切换和进程终止增加而确实地增加,这是因为在常规的解决方案下要实现跟踪GPU硬件上的未完成页面错误是复杂的和困难的。 【专利附图】【附图说明】 通过阅读下列说明书和所附权利要求,且通过参考下列附图,本领域中的技术人员将明显看出各实施例的各种优点,附图中: 图1是根据一种实施例使用组页面错误描述符来处理上下文切换和进程终止的方法的示例的框图; 图2是根据一种实施例使用组页面错误描述符来处理上下文切换和进程终止的方法的示例的框图; 图3是根据一种实施例的逻辑架构; 图4是根据一种实施例的系统的框图; 图5是根据一种实施例具有导航控制器的系统的示例的框图;以及 图6是根据一种实施例具有小的形状因子的系统的示例的框图。 【具体实施方式】 图1示出使用组错误描述符来处理图形处理器中的上下文切换和进程终止的方法。在所说明的示例中,图形处理器的硬件页面走查器(walker) 10联合图形相关进程的操作检测页面未命中(miss),图形相关进程诸如为,例如支持视频和/或游戏应用且使用虚拟化存储器空间来可视地呈现与应用相关联的内容的固定功能进程。当检测到页面未命中时,硬件页面走查器10可以把相应的页面错误请求12(12a-12c)放置到页面请求队列14,页面请求队列14可由操作系统(OS)的页面未命中处理程序16访问。当OS解决页面错误时,页面未命中处理程序16通常可把响应放置在页面响应队列18中,页面响应队列18可由硬件页面走查器10访问。 通过从OS接收进程终止通知、从图形驱动器和/或硬件调度器接收上下文切换通知等等,可以检测到进程的执行结束。如果硬件页面走查器10检测到图形处理器上的进程的执行结束,则组页面错误描述符20可以被放置到页面请求队列14中,其中,组页面错误描述符20向页面未命中处理程序16指出,直到诸如例如页面错误请求的一个或多个未完成(outstanding)页面错误请求被满足(satisfied)之前,将不再生成进一步的页面错误请求12。 由于所说明的组页面错误描述符10不对应于具体的页面错误,硬件页面走查器10可以确定与结束进程相关联的最后一次存储器访问的地址,并把该地址加入到组页面错误描述符中。这样的方法确保了该地址处于活动进程存储器空间中且可以防止所关切的进程的致命(fatal)处理。此外,进程标识符(例如,进程地址空间标识符/PASID)可以被加入到组页面错误描述符20中,其中,进程标识符由组页面错误描述符20和诸如页面错误请求12等的一个或多个未完成页面错误请求共享。所说明的组页面错误描述符20因此可以充当页面请求队列14中的标记,以使得在接收到对组页面错误描述符的响应20时,硬件页面走查器10可以清除带有相同的进程标识符的所有先前页面错误请求。 一旦接收到对组页面错误描述符20的响应,硬件页面走查器可以生成进程的执行结束的通知(例如,在进程终止的情况下)和/或标记与进程相关联的上下文的结束(例如,在上下文切换的情况下)。如将更详细地讨论的,使用对组页面错误描述符20的响应来处理进程的结束可以为硬件和调度软件两者提供清晰的边界,以便跟踪错误页面的发展。结果,所说明的方法允许用于图形相关进程的更好的性能、利用和响应性。 现在转到图2,示出了使用组页面错误描述符来处理上下文切换和进程终止的方法22。可以在可执行软件中把方法22实现为被存储在存储器的机器或计算机可读存储介质中的一组逻辑指令、可配置逻辑、固定功能逻辑硬件、或其任何组合,其中存储器例如为随机存取存储器(RAM)、只读存储器(ROM)、可编程ROM(PROM)、固件、闪速存储器等等,可配置逻辑诸如例如可编程逻辑阵列(PLA)、现场可编程门阵列(FPGA)、复杂可编程逻辑器件(CPLD),固定功能逻辑硬件使用诸如例如专用集成电路(ASIC)、互补金属氧化物半导体(CMOS)或晶体管-晶体管逻辑(TTL)技术等的电路技术。例如,用于实现方法22所示出的操作的计算机程序代码可以以一种或多种编程语言的任何组合来进行编写,包括诸如Java、Smalltalk、C++等面向对象编程语言,以及诸如“C”编程语言或类似的编程语言之类的常规过程编程语言。 所说明的框24用于检测图形处理器上的进程的执行结束。正如已经指出的,检测进程的执行结束可以包括从OS接收进程终止通知、图形驱动器和/或硬件调度器接收上下文切换通知等等。在框26,进程标识符可以被加入到组页面错误描述符中,其中,进程标识符可以由组页面错误描述符和一个或多个未完成页面错误请求共享。框28可以确定与进程相关联的最后一次存储器访问的地址,其中,在框30,该地址也可以被加入到组页面错误描述符中。 在框32,组页面错误描述符可以被提供给OS的页面未命中处理程序,其中,组页面错误描述符向页面未命中处理程序指出,直到已经满足一个或多个未完成页面错误请求(例如,共享相同的进程标识符的未完成页面错误请求),将不再生成进一步的页面请求。在框34,可以做出关于是否已经从页面未命中处理程序接收到对组页面错误描述符的响应的判断。如果是这样,则在框36,可以做出关于上下文切换是否已经发生的判断。如果上下文切换已经发生,则所说明的框38标记与进程相关联的上下文的结束。否则,在框40,可以生成进程的执行结束的通知。因而,在不考虑系统不稳定性的情况下,进程可以被配置为用于另一上下文(例如,在上下文切换的情况下)或被回收(例如,在进程终止的情况下)。 特别值得注意的是,所说明的框34等待直本文档来自技高网...
【技术保护点】
一种系统,包括:显示器,其可视地呈现与进程相关联的内容;主控处理器,其执行操作系统(OS);以及图形处理器,其包括,监视器,其检测所述图形处理器上的所述进程的执行结束,描述符模块,其响应于所述进程的执行结束把组页面错误描述符提供给所述OS的页面未命中处理程序,其中,所述组页面错误描述符用以向所述页面未命中处理程序指出,直到满足一个或多个未完成页面错误请求之前,不再生成进一步的页面错误请求,以及响应模块,其从所述页面未命中处理程序接收对所述组页面错误描述符的响应。
【技术特征摘要】
...
【专利技术属性】
技术研发人员:A·考克,
申请(专利权)人:英特尔公司,
类型:发明
国别省市:美国;US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。