Using buffered stores or monitoring to filter redundant transactional accesses and mechanisms for mapping data to buffered metadata
    1.
    发明授权
    Using buffered stores or monitoring to filter redundant transactional accesses and mechanisms for mapping data to buffered metadata 有权
    使用缓冲存储或监视来过滤冗余事务访问和机制,用于将数据映射到缓冲元数据

    公开(公告)号:US09280397B2

    公开(公告)日:2016-03-08

    申请号:US12638098

    申请日:2009-12-15

    Abstract: A method and apparatus for accelerating a Software Transactional Memory (STM) system is herein described. A data object and metadata for the data object may each be associated with a filter, such as a hardware monitor or ephemerally held filter information. The filter is in a first, default state when no access, such as a read, from the data object has occurred during a pendancy of a transaction. Upon encountering a first access to the metadata, such as a first read, access barrier operations, such as logging of the metadata; setting a read monitor; or updating ephemeral filter information with an ephemeral/buffered store operation, are performed. Upon a subsequent/redundant access to the metadata, such as a second read, access barrier operations are elided to accelerate the subsequent access based on the filter being set to the second state to indicate a previous access occurred. Additionally, mapping of data objects to ephemeral information may be provided by software, such as through a pointer to the ephemeral information associated with the data object; an offset from a base address of the data object to the ephemeral information included associated with the data object; an index into a segment containing the ephemeral information associated with the data object; mapping the data object to the ephemeral information utilizing address arithmetic; and a hash that maps the data object to ephemeral information.

    Abstract translation: 这里描述了用于加速软件事务存储器(STM)系统的方法和装置。 数据对象和数据对象的元数据可以分别与诸如硬件监视器或者瞬时保持的过滤器信息的过滤器相关联。 过滤器处于第一个默认状态,当事务的挂起期间没有发生来自数据对象的访问,例如读取。 在遇到元数据的首次访问时,例如第一读取,访问屏障操作,诸如记录元数据; 设置一个读取监视器; 或者用临时/缓冲存储操作来更新临时过滤器信息。 在对诸如第二读取的元数据的后续/冗余访问(例如第二读取)时,消除访问屏障操作以基于被设置为第二状态的过滤器来加速后续访问,以指示先前的访问发生。 另外,数据对象到短暂信息的映射可以由软件提供,例如通过指向与数据对象相关联的短暂信息的指针; 从数据对象的基地址到包括与数据对象相关联的临时信息的偏移; 指向包含与数据对象相关联的短暂信息的段的索引; 使用地址算术将数据对象映射到临时信息; 以及将数据对象映射到临时信息的散列。

    USING BUFFERED STORES OR MONITORING TO FILTER REDUNDANT TRANSACTIONAL ACCESSES AND MECHANISMS FOR MAPPING DATA TO BUFFERED METADATA
    2.
    发明申请
    USING BUFFERED STORES OR MONITORING TO FILTER REDUNDANT TRANSACTIONAL ACCESSES AND MECHANISMS FOR MAPPING DATA TO BUFFERED METADATA 有权
    使用缓冲存储器或监视过滤冗余交易访问和将数据映射到缓冲元数据的机制

    公开(公告)号:US20110145516A1

    公开(公告)日:2011-06-16

    申请号:US12638098

    申请日:2009-12-15

    Abstract: A method and apparatus for accelerating a Software Transactional Memory (STM) system is herein described. A data object and metadata for the data object may each be associated with a filter, such as a hardware monitor or ephemerally held filter information. The filter is in a first, default state when no access, such as a read, from the data object has occurred during a pendancy of a transaction. Upon encountering a first access to the metadata, such as a first read, access barrier operations, such as logging of the metadata; setting a read monitor; or updating ephemeral filter information with an ephemeral/buffered store operation, are performed. Upon a subsequent/redundant access to the metadata, such as a second read, access barrier operations are elided to accelerate the subsequent access based on the filter being set to the second state to indicate a previous access occurred. Additionally, mapping of data objects to ephemeral information may be provided by software, such as through a pointer to the ephemeral information associated with the data object; an offset from a base address of the data object to the ephemeral information included associated with the data object; an index into a segment containing the ephemeral information associated with the data object; mapping the data object to the ephemeral information utilizing address arithmetic; and a hash that maps the data object to ephemeral information.

    Abstract translation: 这里描述了用于加速软件事务存储器(STM)系统的方法和装置。 数据对象和数据对象的元数据可以分别与诸如硬件监视器或者瞬时保持的过滤器信息的过滤器相关联。 过滤器处于第一个默认状态,当事务的挂起期间没有发生来自数据对象的访问,例如读取。 在遇到元数据的首次访问时,例如第一读取,访问屏障操作,诸如记录元数据; 设置一个读取监视器; 或者用临时/缓冲存储操作来更新临时过滤器信息。 在对诸如第二读取的元数据的后续/冗余访问(例如第二读取)时,消除访问屏障操作以基于被设置为第二状态的过滤器来加速后续访问,以指示先前的访问发生。 另外,数据对象到短暂信息的映射可以由软件提供,例如通过指向与数据对象相关联的短暂信息的指针; 从数据对象的基地址到包括与数据对象相关联的临时信息的偏移; 指向包含与数据对象相关联的短暂信息的段的索引; 使用地址算术将数据对象映射到临时信息; 以及将数据对象映射到临时信息的散列。

Patent Agency Ranking