发明名称 Persistent local storage for processor resources
摘要 Local storage may be allocated for each processing resource in a process of a computer system. Each processing resource may be virtualized and may have a one-to-one or a many-to-one correspondence with with physical processors. The contents of each local storage persist across various execution contexts that are executed by a corresponding processing resource. Each local storage may be accessed without synchronization (e.g., locks) by each execution context that is executed on a corresponding processing resource. The local storages provide the ability to segment data and store and access the data without synchronization. The local storages may be used to implement lock-free techniques such as a generalized reduction where a set of values is combined through an associative operator.
申请公布号 US8887162(B2) 申请公布日期 2014.11.11
申请号 US200812336546 申请日期 2008.12.17
申请人 Microsoft Corporation 发明人 Ringseth Paul F.;Molloy Rick;Gustafsson Niklas;Callahan David
分类号 G06F12/00;G06F9/50;G06F9/48 主分类号 G06F12/00
代理机构 代理人 Sullivan Kevin;Drakos Kate;Minhas Micky
主权项 1. A method performed by a scheduler in a process executing on a computer system, the method comprising: allocating first local storage corresponding to a first processing resource of the scheduler; allowing first and second execution contexts that execute on the first processing resource at different times to access the first local storage without synchronization; accessing the first local storage with the first execution context on the first processing resource; subsequent to accessing the first local storage with the first execution context, blocking the first execution context on the first processing resource to allow a third execution context on a second processing resource to access the first local storage, the third execution context accessing the first local storage while executing on the second processing resource; and in response to said blocking: maintaining data in the first local storage; andsaving state information of the first execution context to a memory external to the first processing resource without saving the data from the first local storage to the memory external to the first processing resource.
地址 Redmond WA US