Instructions and logic provide synchronization of user level threads using MONITOR and MWAIT instructions. One or more model specific registers (MSRs) in a processor can be configured to be in the first execution state to specify support for a user-level thread synchronization architecture. The embodiment includes multiple hardware threads or processing cores; the corresponding monitoring address state storage device is used to store each of the final monitoring addresses of each of the multiple execution threads that publish the MONITOR request; the cache memory is used to record the associated state of the address for the memory storage location and the MONITOR request, as well as the response to the address. The MWAIT request to the address is received and the association of the execution kernel associated with the MWAIT request is recorded to the trigger state; in that, when one or more of the MSR is configured in the first state of execution, the response is to receive the MWAIT request, the execution kernel needs to transform the request thread to the optimization. The state of sleep.
【技术实现步骤摘要】
【国外来华专利技术】用于利用MONITOR和MWAIT架构的用户级线程同步的方法和设备相关申请交叉引用本申请与2007年12月28日提交的,现为美国专利No.9,081,687的题为“MethodandApparatusforMONITORandMWAITinaDistributedCacheArchitecture”申请序列No.11/966,806相关。
本公开涉及处理逻辑、微处理器和关联的指令集架构的领域,其在由处理器或其它处理逻辑执行时,执行逻辑、数学或其它功能操作。具体地,本公开涉及利用MONITOR和MWAIT架构的用户级线程同步。
技术介绍
现代高性能微处理器可以具有许多执行核和多级高速缓冲存储装置。因此,存在对于这些组件之间的较高互连带宽的日益增长的需求。提供此类较高互连带宽的一种技术涉及利用通过共享互连对分布式高速缓存的多个部分的并行访问的分布式高速缓存分区。一些现代高性能微处理器的另一方面包括多线程软件和硬件以及通过共享存储器的线程同步。通过共享存储器提供线程同步的两个指令的示例将会是IntelCorporation的SSE3指令集的MONITOR和MWAIT指令 ...
【技术保护点】
1.一种处理器,包括:一个或多个模型特定寄存器(MSR),要被配置处于第一执行状态以指定对所述处理器的用户级线程同步架构的支持;多个执行核,具有对应的监视地址状态存储装置以存储发布MONITOR请求的多个执行线程中的每个的最后监视地址;以及高速缓冲存储器,用以记录针对存储器存储位置的地址的关联状态和MONITOR请求,以及当所述一个或多个MSR被配置处于所述第一执行状态时,响应于从所述用户级的执行线程接收到对于地址的MONITOR请求,存储所述地址并且记录与所述执行线程关联的所述多个执行核中的第一执行核的所述监视地址状态存储装置的关联状态;以及进一步响应于从所述执行线程接收 ...
【技术特征摘要】
【国外来华专利技术】2015.12.24 US 14/9982171.一种处理器,包括:一个或多个模型特定寄存器(MSR),要被配置处于第一执行状态以指定对所述处理器的用户级线程同步架构的支持;多个执行核,具有对应的监视地址状态存储装置以存储发布MONITOR请求的多个执行线程中的每个的最后监视地址;以及高速缓冲存储器,用以记录针对存储器存储位置的地址的关联状态和MONITOR请求,以及当所述一个或多个MSR被配置处于所述第一执行状态时,响应于从所述用户级的执行线程接收到对于地址的MONITOR请求,存储所述地址并且记录与所述执行线程关联的所述多个执行核中的第一执行核的所述监视地址状态存储装置的关联状态;以及进一步响应于从所述执行线程接收到对于所述地址的MWAIT请求,记录与所述执行线程关联的所述第一执行核的所述监视地址状态的关联的等待-到-触发状态;以及其中,当所述一个或多个MSR被配置处于所述第一执行状态时,响应于从所述执行线程接收到所述MWAIT请求,所述第一执行核要将所述执行线程转变到优化的睡眠状态。2.根据权利要求1所述的处理器,其中,所述优化的睡眠状态是对所述第一执行核可用的多个C状态中的最轻权重睡眠状态。3.根据权利要求2所述的处理器,其中对所述第一执行核可用的所述多个C状态中的最轻权重睡眠状态是C1状态。4.根据权利要求1所述的处理器,其中,所述优化的睡眠状态是由EAX寄存器的位7:4从对所述第一执行核可用的多个C状态中选择的睡眠状态。5.根据权利要求1所述的处理器,其中所述一个或多个MSR要仅由操作系统配置成所述第一执行状态。6.根据权利要求1所述的处理器,其中,当所述一个或多个MSR未配置处于所述第一执行状态时,响应于从所述执行线程接收到所述MWAIT请求,所述第一执行核要触发无效操作码异常。7.一种方法,包括:将一个或多个模型特定寄存器(MSR)配置成处于第一执行状态以指定对所述处理器的用户级线程同步架构的支持;当执行线程要发布MONITOR请求时,在与多个执行核对应的监视地址状态存储装置中存储针对多个所述执行线程中的执行线程的最后监视地址;以及在高速缓冲存储器中记录针对存储器存储位置的地址的关联状态和MONITOR请求,以及当所述一个或多个MSR被配置处于所述第一执行状态时,响应于从所述用户级的执行线程接收到对于地址的MONITOR请求,存储所述地址并且记录与所述执行线程关联的所述多个执行核中的第一执行核的所述监视地址状态存储装置的关联状态;以及进一步响应于从所述执行线程接收到对于所述地址的MWAIT请求,记录与所述执行线程关联的所述第一执行核的所述监视地址状态的关联的等待-到-触发状态;以及在所述第一执行核中,当所述一个或多个MSR被配置处于所述第一执行状态时,响应于从所述执行线程接收到所述MWAIT请求,将所述执行线程转变到优化的睡眠状态。8.根据权利要求4所述的方法,其中,所述优化的睡眠状态是对所述第一执行核可用的多个C状态中的最轻权重睡眠状态。9.根据权利要求5所述的方法,其中对所述第一执行核可用的所述多个C状态...
【专利技术属性】
技术研发人员:BC查芬,RJ克彦科,A索达尼,
申请(专利权)人:英特尔公司,
类型:发明
国别省市:美国,US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。