Synchronizing Multiple Threads Efficiently
    2.
    发明申请
    Synchronizing Multiple Threads Efficiently 有权
    高效同步多线程

    公开(公告)号:US20110173634A1

    公开(公告)日:2011-07-14

    申请号:US13069684

    申请日:2011-03-23

    IPC分类号: G06F9/46

    摘要: In one embodiment, the present invention includes a method of assigning a location within a shared variable for each of multiple threads and writing a value to a corresponding location to indicate that the corresponding thread has reached a barrier. In such manner, when all the threads have reached the barrier, synchronization is established. In some embodiments, the shared variable may be stored in a cache accessible by the multiple threads. Other embodiments are described and claimed.

    摘要翻译: 在一个实施例中,本发明包括为多个线程中的每个线程分配共享变量内的位置并将值写入相应位置以指示相应线程已经达到屏障的方法。 以这种方式,当所有线程都到达障碍物时,建立同步。 在一些实施例中,共享变量可以存储在可由多个线程访问的高速缓存中。 描述和要求保护其他实施例。

    Transaction based shared data operations in a multiprocessor environment
    3.
    发明授权
    Transaction based shared data operations in a multiprocessor environment 有权
    多处理器环境中基于事务的共享数据操作

    公开(公告)号:US07984248B2

    公开(公告)日:2011-07-19

    申请号:US11027623

    申请日:2004-12-29

    IPC分类号: G06F12/00

    摘要: The apparatus and method described herein are for handling shared memory accesses between multiple processors utilizing lock-free synchronization through transactional-execution. A transaction demarcated in software is speculatively executed. During execution invalidating remote accesses/requests to addresses loaded from and to be written to shared memory are track by a transaction buffer. If an invalidating access is encountered, the transaction is re-executed. After a pre-determined number of times re-executing the transaction, the transaction may be re-executed non-speculatively with locks/semaphores.

    摘要翻译: 本文描述的装置和方法用于通过事务执行来处理利用无锁同步的多个处理器之间的共享存储器访问。 在软件中划分的事务被推测执行。 在执行期间,无效远程访问/请求到从共享存储器加载并被写入到共享存储器的地址由事务缓冲器跟踪。 如果遇到无效访问,则重新执行该事务。 在重新执行事务的预定次数之后,可以非推测地用锁/信号量重新执行事务。

    Method and apparatus for run-ahead victim selection to reduce undesirable replacement behavior in inclusive caches
    4.
    发明授权
    Method and apparatus for run-ahead victim selection to reduce undesirable replacement behavior in inclusive caches 有权
    用于预测受害者选择以减少包容性缓存中不期望的替换行为的方法和装置

    公开(公告)号:US07669009B2

    公开(公告)日:2010-02-23

    申请号:US10950279

    申请日:2004-09-23

    IPC分类号: G06F12/08

    摘要: A method and apparatus for selecting and updating a replacement candidate in a cache is disclosed. In one embodiment, a cache miss may initiate the eviction of a present replacement candidate in a last-level cache. The cache miss may also initiate the selection of a future replacement candidate. Upon the selection of the future replacement candidate, the corresponding cache line may be invalidated in lower-level caches but remain resident in the last-level cache. The future replacement candidate may be updated by subsequent hits to the replacement candidate in the last-level cache prior to a subsequent cache miss.

    摘要翻译: 公开了一种用于选择和更新高速缓存中的替换候选的方法和装置。 在一个实施例中,高速缓存未命中可以在最后一级高速缓存中启动对当前替换候选者的驱逐。 高速缓存未命中还可以启动未来替换候选者的选择。 在选择将来的替换候选者之后,相应的高速缓存行可能在较低级别的高速缓存中被无效,但仍然驻留在最后一级高速缓存中。 在随后的高速缓存未命中之前,可以通过对最后一级高速缓存中的替换候选者的后续命中来更新未来替换候选。

    Transaction based shared data operations in a multiprocessor environment
    5.
    发明授权
    Transaction based shared data operations in a multiprocessor environment 有权
    多处理器环境中基于事务的共享数据操作

    公开(公告)号:US08458412B2

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

    申请号:US13168171

    申请日:2011-06-24

    IPC分类号: G06F12/00

    摘要: The apparatus and method described herein are for handling shared memory accesses between multiple processors utilizing lock-free synchronization through transactional-execution. A transaction demarcated in software is speculatively executed. During execution invalidating remote accesses/requests to addresses loaded from and to be written to shared memory are tracked by a transaction buffer. If an invalidating access is encountered, the transaction is re-executed. After a pre-determined number of times re-executing the transaction, the transaction may be re-executed non-speculatively with locks/semaphores.

    摘要翻译: 本文描述的装置和方法用于通过事务执行来处理利用无锁同步的多个处理器之间的共享存储器访问。 在软件中划分的事务被推测执行。 在执行期间,无效远程访问/请求到从共享存储器加载并被写入到共享存储器的地址由事务缓冲器跟踪。 如果遇到无效访问,则重新执行该事务。 在重新执行事务的预定次数之后,可以非推测地用锁/信号量重新执行事务。

    Transaction based shared data operations in a multiprocessor environment
    6.
    发明授权
    Transaction based shared data operations in a multiprocessor environment 有权
    多处理器环境中基于事务的共享数据操作

    公开(公告)号:US08176266B2

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

    申请号:US12943314

    申请日:2010-11-10

    IPC分类号: G06F12/00

    摘要: The apparatus and method described herein are for handling shared memory accesses between multiple processors utilizing lock-free synchronization through transactional-execution. A transaction demarcated in software is speculatively executed. During execution invalidating remote accesses/requests to addresses loaded from and to be written to shared memory are tracked by a transaction buffer. If an invalidating access is encountered, the transaction is re-executed. After a pre-determined number of times re-executing the transaction, the transaction may be re-executed non-speculatively with locks/semaphores.

    摘要翻译: 本文描述的装置和方法用于通过事务执行来处理利用无锁同步的多个处理器之间的共享存储器访问。 在软件中划分的事务被推测执行。 在执行期间,无效远程访问/请求到从共享存储器加载并被写入到共享存储器的地址由事务缓冲器跟踪。 如果遇到无效访问,则重新执行该事务。 在重新执行事务的预定次数之后,可以非推测地用锁/信号量重新执行事务。

    Synchronizing multiple threads efficiently
    7.
    发明授权
    Synchronizing multiple threads efficiently 有权
    有效地同步多个线程

    公开(公告)号:US07937709B2

    公开(公告)日:2011-05-03

    申请号:US11026207

    申请日:2004-12-29

    IPC分类号: G06F9/46 G06F9/44

    摘要: In one embodiment, the present invention includes a method of assigning a location within a shared variable for each of multiple threads and writing a value to a corresponding location to indicate that the corresponding thread has reached a barrier. In such manner, when all the threads have reached the barrier, synchronization is established. In some embodiments, the shared variable may be stored in a cache accessible by the multiple threads. Other embodiments are described and claimed.

    摘要翻译: 在一个实施例中,本发明包括为多个线程中的每个线程分配共享变量内的位置并将值写入相应位置以指示相应线程已经达到屏障的方法。 以这种方式,当所有线程都到达障碍物时,建立同步。 在一些实施例中,共享变量可以存储在可由多个线程访问的高速缓存中。 描述和要求保护其他实施例。

    TRANSACTION BASED SHARED DATA OPERATIONS IN A MULTIPROCESSOR ENVIRONMENT
    8.
    发明申请
    TRANSACTION BASED SHARED DATA OPERATIONS IN A MULTIPROCESSOR ENVIRONMENT 有权
    在多处理器环境中基于交易的共享数据操作

    公开(公告)号:US20110055493A1

    公开(公告)日:2011-03-03

    申请号:US12943314

    申请日:2010-11-10

    IPC分类号: G06F12/14

    摘要: The apparatus and method described herein are for handling shared memory accesses between multiple processors utilizing lock-free synchronization through transactional-execution. A transaction demarcated in software is speculatively executed. During execution invalidating remote accesses/requests to addresses loaded from and to be written to shared memory are tracked by a transaction buffer. If an invalidating access is encountered, the transaction is re-executed. After a pre-determined number of times re-executing the transaction, the transaction may be re-executed non-speculatively with locks/semaphores.

    摘要翻译: 本文描述的装置和方法用于通过事务执行来处理利用无锁同步的多个处理器之间的共享存储器访问。 在软件中划分的事务被推测执行。 在执行期间,无效远程访问/请求到从共享存储器加载并被写入到共享存储器的地址由事务缓冲器跟踪。 如果遇到无效访问,则重新执行该事务。 在重新执行事务的预定次数之后,可以非推测地用锁/信号量重新执行事务。

    Synchronizing Multiple Threads Efficiently
    9.
    发明申请
    Synchronizing Multiple Threads Efficiently 有权
    高效同步多线程

    公开(公告)号:US20130275995A1

    公开(公告)日:2013-10-17

    申请号:US13912777

    申请日:2013-06-07

    IPC分类号: G06F9/52

    摘要: In one embodiment, the present invention includes a method of assigning a location within a shared variable for each of multiple threads and writing a value to a corresponding location to indicate that the corresponding thread has reached a barrier. In such manner, when all the threads have reached the barrier, synchronization is established. In some embodiments, the shared variable may be stored in a cache accessible by the multiple threads. Other embodiments are described and claimed.

    摘要翻译: 在一个实施例中,本发明包括为多个线程中的每个线程分配共享变量内的位置并将值写入相应位置以指示相应线程已经达到屏障的方法。 以这种方式,当所有线程都到达障碍物时,建立同步。 在一些实施例中,共享变量可以存储在可由多个线程访问的高速缓存中。 描述和要求保护其他实施例。

    Synchronizing multiple threads efficiently
    10.
    发明授权
    Synchronizing multiple threads efficiently 有权
    有效地同步多个线程

    公开(公告)号:US08473963B2

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

    申请号:US13069684

    申请日:2011-03-23

    摘要: In one embodiment, the present invention includes a method of assigning a location within a shared variable for each of multiple threads and writing a value to a corresponding location to indicate that the corresponding thread has reached a barrier. In such manner, when all the threads have reached the barrier, synchronization is established. In some embodiments, the shared variable may be stored in a cache accessible by the multiple threads. Other embodiments are described and claimed.

    摘要翻译: 在一个实施例中,本发明包括为多个线程中的每个线程分配共享变量内的位置并将值写入相应位置以指示相应线程已经达到屏障的方法。 以这种方式,当所有线程都到达障碍物时,建立同步。 在一些实施例中,共享变量可以存储在可由多个线程访问的高速缓存中。 描述和要求保护其他实施例。