Compressed transactional locks in object headers
    41.
    发明授权
    Compressed transactional locks in object headers 有权
    对象标题中的压缩事务​​锁

    公开(公告)号:US08341133B2

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

    申请号:US12163788

    申请日:2008-06-27

    CPC分类号: G06F9/466

    摘要: A software transactional memory system is provided that generates and stores compressed transactional locks in a portion of object headers. The software transactional memory system allocates preferred write log memory with a predefined size of memory that corresponds to a number of bits in the compressed transactional locks. The compressed transactional locks identify write log entries in corresponding write logs in the preferred write log memory. If the preferred write log memory becomes full, additional write log memory is allocated for write log entries and subsequent transactional locks are stored uncompressed in an auxiliary memory. A pointer that may be used to locate the uncompressed transactional lock is stored in the header. If an object header with a compressed transactional lock is needed for another use, the compressed transactional lock is uncompressed and stored in the auxiliary memory. A pointer that may be used to locate the uncompressed transactional lock is stored in the header.

    摘要翻译: 提供了一种软件事务存储器系统,其在对象头部的一部分中生成并存储压缩事务锁。 软件事务存储系统将优选的写日志存储器与对应于压缩事务锁中的多个位的预定义大小的存储器分配。 压缩事务锁在首选写入日志存储器中的相应写入日志中标识写入日志条目。 如果首选的写入日志内存已满,则会为写入日志条目分配额外的写入日志内存,而后续的事务锁存在未压缩的辅助存储器中。 可用于定位未压缩事务锁的指针存储在标题中。 如果需要具有压缩事务锁定的对象标头进行另一次使用,压缩事务锁将被解压缩并存储在辅助存储器中。 可用于定位未压缩事务锁的指针存储在标题中。

    USING TYPE STABILITY TO FACILITATE CONTENTION MANAGEMENT
    42.
    发明申请
    USING TYPE STABILITY TO FACILITATE CONTENTION MANAGEMENT 有权
    使用类型稳定性来促进内部管理

    公开(公告)号:US20110289288A1

    公开(公告)日:2011-11-24

    申请号:US13196569

    申请日:2011-08-02

    IPC分类号: G06F12/02

    CPC分类号: G06F9/467

    摘要: Various technologies and techniques are disclosed for providing type stability techniques to enhance contention management. A reference counting mechanism is provided that enables transactions to safely examine states of other transactions. Contention management is facilitated using the reference counting mechanism. When a conflict is detected between two transactions, owning transaction information is obtained. A reference count of the owning transaction is incremented. The system ensures that the correct transaction was incremented. If the owning transaction is still a conflicting transaction, then a contention management decision is made to determine proper resolution. When the decision is made, the reference count on the owning transaction is decremented by the conflicting transaction. When each transaction completes, the reference counts it holds to itself is decremented. Data structures cannot be deallocated until their reference count is zero. Dedicated type-stable allocation pools can be reduced using an unstable attribute.

    摘要翻译: 公开了用于提供类型稳定性技术以增强争用管理的各种技术和技术。 提供了引用计数机制,使得事务能够安全地检查其他事务的状态。 使用参考计数机制促进竞争管理。 当在两个事务之间检测到冲突时,获得拥有交易信息。 拥有交易的参考计数增加。 系统确保正确的事务增加。 如果拥有交易仍然是冲突交易,则进行争用管理决定以确定适当的分辨率。 当作出决定时,拥有交易的引用计数由冲突交易减少。 当每个事务完成时,它对自身的引用计数递减。 数据结构在引用计数为零之前不能被释放。 可以使用不稳定属性来减少专用类型稳定的分配池。

    Using type stability to facilitate contention management
    43.
    发明授权
    Using type stability to facilitate contention management 有权
    使用类型稳定性来促进竞争管理

    公开(公告)号:US07991967B2

    公开(公告)日:2011-08-02

    申请号:US11824353

    申请日:2007-06-29

    CPC分类号: G06F9/467

    摘要: Various technologies and techniques are disclosed for providing type stability techniques to enhance contention management. A reference counting mechanism is provided that enables transactions to safely examine states of other transactions. Contention management is facilitated using the reference counting mechanism. When a conflict is detected between two transactions, owning transaction information is obtained. A reference count of the owning transaction is incremented. The system ensures that the correct transaction was incremented. If the owning transaction is still a conflicting transaction, then a contention management decision is made to determine proper resolution. When the decision is made, the reference count on the owning transaction is decremented by the conflicting transaction. When each transaction completes, the reference counts it holds to itself is decremented. Data structures cannot be deallocated until their reference count is zero. Dedicated type-stable allocation pools can be reduced using an unstable attribute.

    摘要翻译: 公开了用于提供类型稳定性技术以增强争用管理的各种技术和技术。 提供了引用计数机制,使得事务能够安全地检查其他事务的状态。 使用参考计数机制促进竞争管理。 当在两个事务之间检测到冲突时,获得拥有交易信息。 拥有交易的参考计数增加。 系统确保正确的事务增加。 如果拥有交易仍然是冲突交易,则进行争用管理决定以确定适当的分辨率。 当作出决定时,拥有交易的引用计数由冲突交易减少。 当每个事务完成时,它对自身的引用计数递减。 数据结构在引用计数为零之前不能被释放。 可以使用不稳定属性来减少专用类型稳定的分配池。

    Handling falsely doomed parents of nested transactions
    44.
    发明授权
    Handling falsely doomed parents of nested transactions 有权
    处理错误地注定了嵌套交易的父母

    公开(公告)号:US07899999B2

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

    申请号:US11823162

    申请日:2007-06-27

    IPC分类号: G06F12/00

    摘要: Various technologies and techniques are disclosed for detecting falsely doomed parent transactions of nested children in transactional memory systems. When rolling back nested transactions, a release count is tracked each time that a write lock is released due to rollback for a given nested transaction. For example, a write abort compensation map can be used to track the release count for each nested transaction. The number of times the nested transactions releases a write lock is recorded in their respective write abort compensation map. The release counts can be used during a validation of a parent transaction to determine if a failed optimistic read is really valid. If an aggregated release count for the nested children transactions accounts for the difference in version numbers exactly, then the optimistic read is valid.

    摘要翻译: 公开了各种技术和技术,用于检测事务记忆系统中嵌套子女的错误注定的父事务。 当回滚嵌套事务时,每次释放写锁定是由于给定嵌套事务的回滚而被释放的。 例如,写入中止补偿映射可用于跟踪每个嵌套事务的发布计数。 嵌套事务释放写入锁定的次数记录在它们各自的写中止补偿映射中。 发布计数可以在验证父事务时使用,以确定失败的乐观读取是否真的有效。 如果嵌套子代交易的汇总发行计数正好说明了版本号的差异,则乐观读取有效。

    Efficient retry for transactional memory
    45.
    发明授权
    Efficient retry for transactional memory 有权
    高效重试事务记忆

    公开(公告)号:US07890707B2

    公开(公告)日:2011-02-15

    申请号:US11823211

    申请日:2007-06-27

    IPC分类号: G06F12/00

    摘要: Various technologies and techniques are disclosed for implementing retrying transactions in a transactional memory system. The system allows a transaction to execute a retry operation. The system registers for waits on every read in a read set of the retrying transaction. The retrying transaction waits for notification that something in the read set has changed. A transaction knows if notification is required in one of two ways. If the transactional memory word contained a waiters bit during write lock acquisition, then during release the transactional memory word is looked up in an object waiters map, and waiting transactions are signaled. If a writing transaction finds a global count of waiting transactions to be greater than zero after releasing write locks, a transaction waiters map is used to determine which waiting transactions need to be signaled. In each case, the write lock is released using a normal store operation.

    摘要翻译: 公开了用于在事务性存储器系统中实现重试事务的各种技术和技术。 系统允许事务执行重试操作。 系统注册等待重读事务的读取集中的每次读取。 重试事务等待通知,读取集中的某些内容已更改。 交易知道是否需要以两种方式之一通知。 如果事务存储器字在写入锁定获取期间包含一个服务器位,则在释放期间,在对象服务器映射中查找事务存储器字,并且发送等待事务。 如果写入事务在释放写入锁之后发现等待事务的全局计数大于零,则使用事务服务器映射来确定哪些等待事务需要发出信号。 在每种情况下,使用正常的存储操作来释放写入锁定。

    Exception ordering in contention management to support speculative sequential semantics
    46.
    发明授权
    Exception ordering in contention management to support speculative sequential semantics 有权
    竞争管理中的异常排序支持推测性顺序语义

    公开(公告)号:US07860847B2

    公开(公告)日:2010-12-28

    申请号:US11820556

    申请日:2007-06-20

    IPC分类号: G06F17/30

    CPC分类号: G06F9/3842

    摘要: Various technologies and techniques are disclosed for handling exceptions in sequential statements that are executed in parallel. A transactional memory system is provided with a contention manager. The contention manager is responsible for managing exceptions that occur within statements that were designed to be executed in an original sequential order, and that were transformed into ordered transactions for speculative execution in parallel. The contention manager ensures that any exceptions that are thrown from one or more speculatively executed blocks while the statements are being executed speculatively in parallel are handled in the original sequential order.

    摘要翻译: 公开了用于处理并行执行的顺序语句中的异常的各种技术和技术。 交易内存系统与竞争管理器一起提供。 竞争管理器负责管理在原始顺序中被设计为执行的语句中发生的异常,并且被并行转换为有序事务以进行投机执行。 争用管理器确保在以并行方式推测性地执行语句时从一个或多个推测执行的块抛出的任何异常以原始顺序的顺序进行处理。

    Parallel nested transactions in transactional memory
    47.
    发明授权
    Parallel nested transactions in transactional memory 有权
    事务内存中的并行嵌套事务

    公开(公告)号:US07840530B2

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

    申请号:US11901494

    申请日:2007-09-18

    IPC分类号: G06F17/30

    CPC分类号: G06F17/30362 G06F17/30368

    摘要: Various technologies and techniques are disclosed for supporting parallel nested transactions in a transactional memory system. Releasing a duplicate write lock for rollback is supported. During rollback processing of a parallel nested transaction, a write log entry is encountered that represents a write lock. If the write lock is a duplicate, a global lock is used to synchronize access to a global versioned write lock map. Optimistic read validation is supported. During validation, if a versioned write lock indicates a sibling conflict, consult information to determine if a parallel nested transaction should be doomed. Write lock acquisition is supported. Upon attempting to acquire a write lock for a parallel nested transaction, a transactional memory word is analyzed to determine if the write lock can be obtained. If the transactional memory word indicates a versioned write lock, retrieve a write log entry pointer from a global versioned write lock map.

    摘要翻译: 公开了用于支持事务存储器系统中的并行嵌套事务的各种技术和技术。 支持释放重复的写入锁回滚。 在并行嵌套事务的回滚处理期间,遇到表示写入锁定的写入日志条目。 如果写入锁是重复的,则使用全局锁来同步对全局版本的写锁定映射的访问。 支持乐观阅读验证。 在验证期间,如果版本控制的写锁定表示兄弟冲突,请咨询信息以确定并行嵌套事务是否应注定。 支持写入锁定。 在尝试获取并行嵌套事务的写入锁定时,分析事务存储器字以确定是否可以获得写入锁定。 如果事务内存字指示版本化的写锁定,则从全局版本的写锁定映射中检索写入日志条目指针。

    Optimizing primitives in software transactional memory
    50.
    发明授权
    Optimizing primitives in software transactional memory 有权
    优化软件事务内存中的原语

    公开(公告)号:US08839213B2

    公开(公告)日:2014-09-16

    申请号:US12163284

    申请日:2008-06-27

    IPC分类号: G06F9/45

    CPC分类号: G06F8/443

    摘要: A compiler is provided that determines when the use of software transactional memory (STM) primitives may be optimized with respect to a set of collectively dominating STM primitives. The compiler analysis coordinates the use of variables containing possible shadow copy pointers to allow the analysis to be performed for both direct write and buffered write STM systems. The coordination of the variables containing the possible shadow copy pointers ensures that the results of STM primitives are properly reused. The compiler analysis identifies memory accesses where STM primitives may be eliminated, combined, or substituted for lower overhead STM primitives.

    摘要翻译: 提供了一种编译器,其确定何时可以相对于一组统一主导的STM原语来优化软件事务存储器(STM)原语的使用。 编译器分析协调使用包含可能的卷影复制指针的变量,以便对直写和缓冲写STM系统执行分析。 包含可能的卷影复制指针的变量的协调确保了STM原语的结果被适当重复使用。 编译器分析识别存储器访问,其中STM原语可以被消除,组合或代替较低开销的STM原语。