Energy Efficient Implementation Of Read-Copy Update For Light Workloads Running On Systems With Many Processors
    31.
    发明申请
    Energy Efficient Implementation Of Read-Copy Update For Light Workloads Running On Systems With Many Processors 有权
    对具有许多处理器的系统上运行的轻型工作负载的读取 - 更新的能量效率实现

    公开(公告)号:US20140006820A1

    公开(公告)日:2014-01-02

    申请号:US13539363

    申请日:2012-06-30

    申请人: Paul E. McKenney

    发明人: Paul E. McKenney

    IPC分类号: G06F1/32

    摘要: A technique for determining if a processor in a multiprocessor system implementing a read-copy update (RCU) subsystem may be placed in a low power state. The technique may include performing a first predictive query of the RCU subsystem to request permission for the processor to enter the low power state. If permission is denied, the processor is not placed in the low power state. If permission is granted, the processor is placed in the low power state for a non-fixed duration. Regardless whether permission is denied or granted, a second confirming query of the RCU subsystem is performed to redetermined whether it is permissible for the processor to be in the low power state.

    摘要翻译: 用于确定实现读取副本更新(RCU)子系统的多处理器系统中的处理器是否可以被置于低功率状态的技术。 该技术可以包括执行RCU子系统的第一预测性查询以请求许可处理器进入低功率状态。 如果权限被拒绝,处理器不会处于低功耗状态。 如果许可被授予,则处理器处于低功率状态,持续时间非固定。 无论许可被拒绝还是被授权,执行RCU子系统的第二确认查询以重新确定处理器是否处于低功率状态。

    Effective management of blocked-tasks in preemptible read-copy update
    32.
    发明授权
    Effective management of blocked-tasks in preemptible read-copy update 失效
    在可抢占的读取副本更新中有效地管理被阻止的任务

    公开(公告)号:US08615771B2

    公开(公告)日:2013-12-24

    申请号:US13164265

    申请日:2011-06-20

    申请人: Paul E. McKenney

    发明人: Paul E. McKenney

    IPC分类号: G06F9/46 G06F13/00 G06F7/00

    CPC分类号: G06F9/526

    摘要: A technique for managing read-copy update readers that have been preempted while executing in a read-copy update read-side critical section. A single blocked-tasks list is used to track preempted reader tasks that are blocking an asynchronous grace period, preempted reader tasks that are blocking an expedited grace period, and preempted reader tasks that require priority boosting. In example embodiments, a first pointer may be used to segregate the blocked-tasks list into preempted reader tasks that are and are not blocking a current asynchronous grace period. A second pointer may be used to segregate the blocked-tasks list into preempted reader tasks that are and are not blocking an expedited grace period. A third pointer may be used to segregate the blocked-tasks list into preempted reader tasks that do and do not require priority boosting.

    摘要翻译: 一种用于管理读拷贝更新读取器的技术,这些阅读器在读取副本更新读取侧关键部分执行时已被抢占。 单个阻止任务列表用于跟踪阻止异步宽限期的抢占读取器任务,阻止加速宽限期的抢占读取器任务以及需要优先级提升的已读取读取器任务。 在示例实施例中,可以使用第一指针来将被阻止的任务列表分离成已经被阻止的当前异步宽限期的已被抢占的读取器任务。 可以使用第二个指针将被阻止的任务列表隔离成已经被阻止的加速宽限期的被抢占的读取器任务。 可以使用第三个指针来将被阻止的任务列表隔离成抢占的读取器任务,并且不需要优先级提升。

    Expedited Module Unloading For Kernel Modules That Execute Read-Copy Update Callback Processing Code

    公开(公告)号:US20130152095A1

    公开(公告)日:2013-06-13

    申请号:US13316476

    申请日:2011-12-10

    申请人: Paul E. McKenney

    发明人: Paul E. McKenney

    IPC分类号: G06F9/46

    CPC分类号: G06F9/522 G06F2209/521

    摘要: A technique for expediting the unloading of an operating system kernel module that executes read-copy update (RCU) callback processing code in a computing system having one or more processors. According to embodiments of the disclosed technique, an RCU callback is enqueued so that it can be processed by the kernel module's callback processing code following completion of a grace period in which each of the one or more processors has passed through a quiescent state. An expediting operation is performed to expedite processing of the RCU callback. The RCU callback is then processed and the kernel module is unloaded.

    Reader-Writer Synchronization With High-Performance Readers And Low-Latency Writers
    34.
    发明申请
    Reader-Writer Synchronization With High-Performance Readers And Low-Latency Writers 有权
    与高性能读写器和低延迟作者的读写器同步

    公开(公告)号:US20130138896A1

    公开(公告)日:2013-05-30

    申请号:US13307202

    申请日:2011-11-30

    申请人: Paul E. McKenney

    发明人: Paul E. McKenney

    IPC分类号: G06F12/00

    CPC分类号: G06F13/1663 G06F9/52

    摘要: Data writers desiring to update data without unduly impacting concurrent readers perform a synchronization operation with respect to plural processors or execution threads. The synchronization operation is parallelized using a hierarchical tree having a root node, one or more levels of internal nodes and as many leaf nodes as there are processors or threads. The tree is traversed from the root node to a lowest level of the internal nodes and the following node processing is performed for each node: (1) check the node's children, (2) if the children are leaf nodes, perform the synchronization operation relative to each leaf node's associated processor or thread, and (3) if the children are internal nodes, fan out and repeat the node processing with each internal node representing a new root node. The foregoing node processing is continued until all processors or threads associated with the leaf nodes have performed the synchronization operation.

    摘要翻译: 希望更新数据而不会不适当地影响并发读取器的数据写入者对多个处理器或执行线程执行同步操作。 同步操作使用具有根节点,一个或多个内部节点级别和与处理器或线程一样多的叶节点的分层树并行化。 树从根节点遍历到内部节点的最低层,并为每个节点执行以下节点处理:(1)检查节点的子节点,(2)如果子节点是叶节点,执行同步操作相对 到每个叶节点的相关处理器或线程,以及(3)如果子节点是内部节点,则扇出并重复节点处理,每个内部节点表示新的根节点。 继续前述节点处理,直到与叶节点相关联的所有处理器或线程已经执行了同步操作。

    Making read-copy update free-running grace period counters safe against lengthy low power state sojourns
    35.
    发明授权
    Making read-copy update free-running grace period counters safe against lengthy low power state sojourns 失效
    使阅读副本更新免费运行宽限期计数器可以防止冗长的低功耗状态休眠

    公开(公告)号:US08407503B2

    公开(公告)日:2013-03-26

    申请号:US12891196

    申请日:2010-09-27

    申请人: Paul E. McKenney

    发明人: Paul E. McKenney

    IPC分类号: G06F1/32 G06F1/00

    CPC分类号: G06F1/32

    摘要: A technique for making a free-running grace period counter safe against lengthy low power state processor sojourns. The grace period counter tracks grace periods that determine when processors that are capable executing read operations have passed through a quiescent state that guarantees the readers will no longer maintain references to shared data. Periodically, one or more processors may be placed in a low power state in which the processors discontinue performing grace period detection operations. Such processors may remain in the low power state for a complete cycle of the grace period counter. This scenario can potentially disrupt grace period detection operations if the processors awaken to see the same grace period counter value. To rectify this situation, processors in a low power state may be periodically awakened at a predetermined point selected prevent the low power state from extending for an entire roll over of the grace period counter.

    摘要翻译: 一种使自由运行的宽限期安全避免冗长的低功耗状态处理器驻留的技术。 宽限期计数器跟踪宽限期,确定能够执行读操作的处理器何时通过静态状态,以保证读者不再维护对共享数据的引用。 周期性地,一个或多个处理器可以被置于处于停止执行宽限期检测操作的低功率状态。 这种处理器可以在宽限期计数器的完整周期内保持在低功率状态。 如果处理器唤醒以查看相同的宽限期计数器值,则此方案可能会中断宽限期检测操作。 为了纠正这种情况,处于低功率状态的处理器可以在选定的预定点周期性地唤醒,防止低功率状态延伸到宽限期计数器的整个滚动。

    Asynchronous Grace-Period Primitives For User-Space Applications

    公开(公告)号:US20120331237A1

    公开(公告)日:2012-12-27

    申请号:US13169570

    申请日:2011-06-27

    申请人: Paul E. McKenney

    发明人: Paul E. McKenney

    IPC分类号: G06F12/02

    CPC分类号: G06F9/526

    摘要: A technique for implementing user-level read-copy update (RCU) with support for asynchronous grace periods. In an example embodiment, a user-level RCU subsystem is established that executes within threads of a user-level multithreaded application. The multithreaded application may comprise one or more reader threads that read RCU-protected data elements in a shared memory. The multithreaded application may further comprise one or more updater threads that perform updates to the RCU-protected data elements in the shared memory and register callbacks to be executed following a grace period in order to free stale data resulting from the updates. The RCU subsystem may implement two or more helper threads (helpers) that are created or selected as needed to track grace periods and execute the callbacks on behalf of the updaters instead of the updaters performing such work themselves.

    Effective Management Of Blocked-Tasks In Preemptible Read-Copy Update
    37.
    发明申请
    Effective Management Of Blocked-Tasks In Preemptible Read-Copy Update 有权
    在可抢占的读取更新中有效的管理被阻止的任务

    公开(公告)号:US20120324461A1

    公开(公告)日:2012-12-20

    申请号:US13437215

    申请日:2012-04-02

    申请人: Paul E. McKenney

    发明人: Paul E. McKenney

    IPC分类号: G06F9/46

    CPC分类号: G06F9/526

    摘要: A technique for managing read-copy update readers that have been preempted while executing in a read-copy update read-side critical section. A single blocked-tasks list is used to track preempted reader tasks that are blocking an asynchronous grace period, preempted reader tasks that are blocking an expedited grace period, and preempted reader tasks that require priority boosting. In example embodiments, a first pointer may be used to segregate the blocked-tasks list into preempted reader tasks that are and are not blocking a current asynchronous grace period. A second pointer may be used to segregate the blocked-tasks list into preempted reader tasks that are and are not blocking an expedited grace period. A third pointer may be used to segregate the blocked-tasks list into preempted reader tasks that do and do not require priority boosting.

    摘要翻译: 一种用于管理读拷贝更新读取器的技术,这些阅读器在读取副本更新读取侧关键部分执行时已被抢占。 单个阻止任务列表用于跟踪阻止异步宽限期的抢占读取器任务,阻止加速宽限期的抢占读取器任务以及需要优先级提升的已读取读取器任务。 在示例实施例中,可以使用第一指针来将被阻止的任务列表分离成已经被阻止的当前异步宽限期的已被抢占的读取器任务。 可以使用第二个指针将被阻止的任务列表隔离成已经被阻止的加速宽限期的被抢占的读取器任务。 可以使用第三个指针来将被阻止的任务列表隔离成抢占的读取器任务,并且不需要优先级提升。

    Read-Copy Update Implementation For Non-Cache-Coherent Systems
    38.
    发明申请
    Read-Copy Update Implementation For Non-Cache-Coherent Systems 有权
    非缓存相干系统的读 - 拷贝更新实现

    公开(公告)号:US20120324170A1

    公开(公告)日:2012-12-20

    申请号:US13164423

    申请日:2011-06-20

    申请人: Paul E. McKenney

    发明人: Paul E. McKenney

    IPC分类号: G06F12/12

    摘要: A technique for implementing read-copy update in a shared-memory computing system having two or more processors operatively coupled to a shared memory and to associated incoherent caches that cache copies of data stored in the memory. According to example embodiments disclosed herein, cacheline information for data that has been rendered obsolete due to a data update being performed by one of the processors is recorded. The recorded cacheline information is communicated to one or more of the other processors. The one or more other processors use the communicated cacheline information to flush the obsolete data from all incoherent caches that may be caching such data.

    摘要翻译: 一种用于在具有可操作地耦合到共享存储器的两个或多个处理器以及缓存存储在存储器中的数据的相关联的非相干高速缓存的共享存储器计算系统中实现读取拷贝更新的技术。 根据本文公开的示例实施例,记录由于由一个处理器执行的数据更新而已被废弃的数据的高速缓存行信息。 记录的高速缓存线信息被传送到一个或多个其他处理器。 一个或多个其他处理器使用所传送的缓存线信息来从可能缓存这些数据的所有非相干缓存中刷新过时的数据。

    Use of rollback RCU with read-side modifications to RCU-protected data structures
    39.
    发明授权
    Use of rollback RCU with read-side modifications to RCU-protected data structures 有权
    使用对RCU保护的数据结构进行读取修改的回滚RCU

    公开(公告)号:US08176489B2

    公开(公告)日:2012-05-08

    申请号:US11009220

    申请日:2004-12-09

    IPC分类号: G06F9/46 G06F13/00

    CPC分类号: G06F9/526

    摘要: A method, apparatus and program storage device for performing a return/rollback process for RCU-protected data structures is provided that includes checking a user-level state of a preempted thread having a RCU read-side critical section, and executing the critical section of the thread after preemption when the user-level state of the thread indicates execution, otherwise returning to a point of preemption, resuming execution of the thread and disabling checking the user-level state when the user-level state of the thread indicates return.

    摘要翻译: 提供一种用于执行RCU保护的数据结构的返回/回退处理的方法,装置和程序存储装置,其包括检查具有RCU读取侧关键部分的抢占线程的用户级状态,以及执行临时部分 当线程的用户级状态指示执行时,线程抢占后,否则返回到抢占点,恢复线程的执行,并且当线程的用户级状态指示返回时禁用检查用户级状态。

    User-level read-copy update that does not require disabling preemption or signal handling
    40.
    发明授权
    User-level read-copy update that does not require disabling preemption or signal handling 失效
    不需要禁用抢占或信号处理的用户级读取副本更新

    公开(公告)号:US08020160B2

    公开(公告)日:2011-09-13

    申请号:US12181006

    申请日:2008-07-28

    申请人: Paul E. McKenney

    发明人: Paul E. McKenney

    IPC分类号: G06F9/46 G06F7/00

    摘要: A user-level read-copy update (RCU) technique. A user-level RCU subsystem executes within threads of a user-level multithreaded application. The multithreaded application may include reader threads that read RCU-protected data elements in a shared memory and updater threads that update such data elements. The reader and updater threads may be preemptible and comprise signal handlers that process signals. Reader registration and unregistration components in the RCU subsystem respectively register and unregister the reader threads for RCU critical section processing. These operations are performed while the reader threads remain preemptible and with their signal handlers being operational. A grace period detection component in the RCU subsystem considers a registration status of the reader threads and determines when it is safe to perform RCU second-phase update processing to remove stale versions of updated data elements that are being referenced by the reader threads, or take other RCU second-phase update processing actions.

    摘要翻译: 用户级读本更新(RCU)技术。 用户级RCU子系统在用户级多线程应用程序的线程内执行。 多线程应用程序可能包括阅读器线程,读取器线程读取共享存储器中的RCU保护的数据元素,并更新更新这些数据元素的线程。 读取器和更新器线程可以是可抢占的并且包括处理信号的信号处理器。 RCU子系统中的读取器注册和注销组件分别注册和注销读取器线程用于RCU关键部分处理。 这些操作在读取器线程保持可抢占并且其信号处理程序可操作时执行。 RCU子系统中的宽限期检测组件考虑了读取器线程的注册状态,并确定执行RCU第二阶段更新处理的安全性,以消除读者线程引用的更新数据元素的陈旧版本,或者采用 其他RCU二阶段更新处理动作。