Logging modifications to a variable in persistent memory
    2.
    发明授权
    Logging modifications to a variable in persistent memory 有权
    记录对持久性内存中的变量的修改

    公开(公告)号:US09002791B2

    公开(公告)日:2015-04-07

    申请号:US13596500

    申请日:2012-08-28

    IPC分类号: G06F17/30 G06F7/00 G06F11/14

    摘要: A log entry is created in persistent memory that represents a modification to a variable that resides in persistent memory. A log entry is created in persistent memory that represents a synchronization operation. A program-order based dynamic ordering relationship is created between two successive log entries within an execution entity. A synchronization-order based dynamic ordering relationship is created between two log entries corresponding to synchronization operations in concurrently executing distinct execution entities of said execution instance.

    摘要翻译: 在持久性内存中创建一个日志条目,表示驻留在持久内存中的变量的修改。 在表示同步操作的持久性内存中创建日志条目。 在执行实体内的两个连续的日志条目之间创建基于程序的动态排序关系。 在同时执行所述执行实例的不同执行实体的同步操作的两个日志条目之间创建基于同步顺序的动态排序关系。

    Identifying globally consistent states in a multithreaded program
    3.
    发明授权
    Identifying globally consistent states in a multithreaded program 有权
    在多线程程序中识别全局一致的状态

    公开(公告)号:US08813042B2

    公开(公告)日:2014-08-19

    申请号:US13441656

    申请日:2012-04-06

    IPC分类号: G06F9/44

    CPC分类号: G06F11/1438 G06F2201/825

    摘要: In a method of identifying a globally consistent state in a multithreaded program, a plurality of locally consistent states is identified, in which a locally consistent state of a thread comprises a set of memory locations and their corresponding data values accessed between points in the multithreaded program where no locks are held. Globally consistent states are identified based at least in part on the locally consistent states.

    摘要翻译: 在识别多线程程序中的全局一致状态的方法中,识别多个本地一致状态,其中线程的本地一致状态包括在多线程程序中的点之间访问的一组存储器位置及其对应的数据值 哪里没有锁。 至少部分地基于局部一致的状态来识别全局一致的状态。

    Determining a conflict in accessing shared resources using a reduced number of cycles
    4.
    发明授权
    Determining a conflict in accessing shared resources using a reduced number of cycles 有权
    确定使用减少的周期数来访问共享资源的冲突

    公开(公告)号:US08364909B2

    公开(公告)日:2013-01-29

    申请号:US12692792

    申请日:2010-01-25

    IPC分类号: G06F13/00

    CPC分类号: G06F9/466

    摘要: Illustrated is a system and method for identifying a potential conflict, using a conflict determination engine, between a first transaction and a second transaction stored in a conflict hash map, the potential conflict based upon a potential accessing of a shared resource common to both the first transaction and the second transaction. The system and method further includes determining an actual conflict, using the conflict determination engine to access the combination of the conflict hash map and the read set hash map, between the first transaction and the second transaction, where a time stamp value of only selected shared locations has changed relative to a previous time stamp value, the time stamp value stored in the read set hash map and accessed using the first transaction.

    摘要翻译: 示出了用于使用冲突确定引擎在存储在冲突散列图中的第一事务和第二事务之间识别潜在冲突的系统和方法,所述潜在冲突基于对第一和第二访问共享的共享资源的潜在访问 交易和第二交易。 该系统和方法还包括使用冲突确定引擎来确定第一事务和第二事务之间的冲突散列映射和读取集合散列映射的组合的实际冲突,其中仅选择共享的时间戳值 位置相对于先前的时间戳值变化,时间戳值存储在读取集合散列图中并使用第一个事务访问。

    Recovery segments
    5.
    发明授权
    Recovery segments 有权
    恢复细分

    公开(公告)号:US08909987B2

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

    申请号:US13458680

    申请日:2012-04-27

    IPC分类号: G06F11/00

    摘要: In one example, a method for implementing recovery segments includes sending an application message from a parent process executed by a first computing device to a child process executed by a second computing device and identifying a dependency created by the application message. This identified dependency is included in a dependence set of the child process and saved. A checkpoint is generated by the parent process and a checkpoint message that includes dependency information is sent from the parent process to the child process. The child process modifies the dependence set according to the dependency information and generates a second checkpoint that is saved in nonvolatile memory of the second computing device. Upon occurrence of a failure of the parent process, the child process reverts to a most recent checkpoint generated by the child process that does not include the effects of processing an orphan message.

    摘要翻译: 在一个示例中,用于实现恢复段的方法包括将由第一计算设备执行的父进程的应用消息发送到由第二计算设备执行的子进程,并识别由应用消息创建的依赖关系。 这个确定的依赖项被包含在子进程的依赖集中并被保存。 检查点由父进程生成,并且包含依赖关系信息的检查点消息从父进程发送到子进程。 子进程根据依赖关系信息修改依赖关系,并生成保存在第二计算装置的非易失性存储器中的第二检查点。 在发生父进程失败时,子进程恢复到由子进程生成的最新检查点,该检查点不包括处理孤立消息的效果。

    DISTRIBUTED TRANSACTION PROCESSING
    6.
    发明申请
    DISTRIBUTED TRANSACTION PROCESSING 有权
    分布式交易处理

    公开(公告)号:US20140040898A1

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

    申请号:US13563595

    申请日:2012-07-31

    IPC分类号: G06F9/46

    摘要: A system includes an initiator and processing nodes. The initiator distributes portions of a transaction among the processing nodes. Each processing node has at least one downstream neighbor to which the processing node sends commit messages. The commit messages include a commit status of the processing node. The downstream neighbor is also a processing node.

    摘要翻译: 系统包括启动器和处理节点。 启动器在处理节点之间分配事务的部分。 每个处理节点具有处理节点发送提交消息的至少一个下游邻居。 提交消息包括处理节点的提交状态。 下游邻居也是一个处理节点。

    RECOVERY SEGMENTS
    7.
    发明申请
    RECOVERY SEGMENTS 有权
    恢复部分

    公开(公告)号:US20130290780A1

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

    申请号:US13458680

    申请日:2012-04-27

    IPC分类号: G06F11/14

    摘要: In one example, a method for implementing recovery segments includes sending an application message from a parent process executed by a first computing device to a child process executed by a second computing device and identifying a dependency created by the application message. This identified dependency is included in a dependence set of the child process and saved. A checkpoint is generated by the parent process and a checkpoint message that includes dependency information is sent from the parent process to the child process. The child process modifies the dependence set according to the dependency information and generates a second checkpoint that is saved in nonvolatile memory of the second computing device. Upon occurrence of a failure of the parent process, the child process reverts to a most recent checkpoint generated by the child process that does not include the effects of processing an orphan message.

    摘要翻译: 在一个示例中,用于实现恢复段的方法包括将由第一计算设备执行的父进程的应用消息发送到由第二计算设备执行的子进程,并识别由应用消息创建的依赖关系。 这个确定的依赖项被包含在子进程的依赖集中并被保存。 检查点由父进程生成,并且包含依赖关系信息的检查点消息从父进程发送到子进程。 子进程根据依赖关系信息修改依赖关系,并生成保存在第二计算装置的非易失性存储器中的第二检查点。 在发生父进程失败时,子进程恢复到由子进程生成的最新检查点,该检查点不包括处理孤立消息的效果。

    Determining A Conflict in Accessing Shared Resources Using a Reduced Number of Cycles
    8.
    发明申请
    Determining A Conflict in Accessing Shared Resources Using a Reduced Number of Cycles 有权
    确定使用减少的周期数来访问共享资源的冲突

    公开(公告)号:US20110185359A1

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

    申请号:US12692792

    申请日:2010-01-25

    IPC分类号: G06F9/46 G06F12/00

    CPC分类号: G06F9/466

    摘要: Illustrated is a system and method for identifying a potential conflict, using a conflict determination engine, between a first transaction and a second transaction stored in a conflict hash map, the potential conflict based upon a potential accessing of a shared resource common to both the first transaction and the second transaction. The system and method further includes determining an actual conflict, using the conflict determination engine to access the combination of the conflict hash map and the read set hash map, between the first transaction and the second transaction, where a time stamp value of only selected shared locations has changed relative to a previous time stamp value, the time stamp value stored in the read set hash map and accessed using the first transaction.

    摘要翻译: 示出了用于使用冲突确定引擎在存储在冲突散列图中的第一事务和第二事务之间识别潜在冲突的系统和方法,所述潜在冲突基于对第一和第二访问共享的共享资源的潜在访问 交易和第二交易。 该系统和方法还包括使用冲突确定引擎来确定第一事务和第二事务之间的冲突散列映射和读取集合散列映射的组合的实际冲突,其中仅选择共享的时间戳值 位置相对于先前的时间戳值变化,时间戳值存储在读取集合散列图中并使用第一个事务访问。

    Scalable cross-file inlining through locality-based transformation ordering
    9.
    发明申请
    Scalable cross-file inlining through locality-based transformation ordering 失效
    可扩展的跨文件内联通过基于位置的转换排序

    公开(公告)号:US20050097527A1

    公开(公告)日:2005-05-05

    申请号:US10699067

    申请日:2003-10-31

    IPC分类号: G06F9/45

    CPC分类号: G06F8/4443

    摘要: One embodiment disclosed relates to a method of compiling a computer program from a plurality of files of source code. An inline analysis determines which call sites in the plurality of files to make inline. An inline transformation performs the inlining within currently opened files. The transformer dynamically determines the order of inlines independent of the analyzer by taking into account the disk input-output pressure during compilation. The resulting inline order minimizes the input and output of files from and to disk respectively by considering the inline affinity between files and maintains the best run-time performance by preserving the dependences between call sites. During the inline transformation, a determination of which files to open and close is made in dependence on an affinity weighting between the files. The affinity and the dependence relationships are continuously updated in order to generate the best transformation ordering among call sites that ensures compile-time scalability and improved run-time performance.

    摘要翻译: 公开的一个实施例涉及从多个源代码文件编译计算机程序的方法。 内联分析确定多个文件中的哪些呼叫站点内联。 内联转换在当前打开的文件中执行内联。 变压器通过在编译期间考虑磁盘输入 - 输出压力,动态地确定独立于分析仪的内联顺序。 通过考虑文件之间的内联关联性,最终的内联顺序最大限度地减少文件从和从磁盘到磁盘的输入和输出,并通过保留呼叫站点之间的依赖关系来保持最佳的运行时性能。 在内联转换期间,根据文件之间的亲和度加权确定哪些文件要打开和关闭。 不断更新关联性和依赖关系,以便在呼叫站点之间生成最佳的转换顺序,从而确保编译时的可扩展性和改进的运行时性能。

    LOGGING MODIFICATIONS TO A VARIABLE IN PERSISTENT MEMORY
    10.
    发明申请
    LOGGING MODIFICATIONS TO A VARIABLE IN PERSISTENT MEMORY 有权
    记录对不同记忆中的变化的修改

    公开(公告)号:US20140067761A1

    公开(公告)日:2014-03-06

    申请号:US13596500

    申请日:2012-08-28

    IPC分类号: G06F7/00 G06F17/30

    摘要: A log entry is created in persistent memory that represents a modification to a variable that resides in persistent memory. A log entry is created in persistent memory that represents a synchronization operation. A program-order based dynamic ordering relationship is created between two successive log entries within an execution entity. A synchronization-order based dynamic ordering relationship is created between two log entries corresponding to synchronization operations in concurrently executing distinct execution entities of said execution instance.

    摘要翻译: 在持久性内存中创建一个日志条目,表示驻留在持久内存中的变量的修改。 在表示同步操作的持久性内存中创建日志条目。 在执行实体内的两个连续的日志条目之间创建基于程序的动态排序关系。 在同时执行所述执行实例的不同执行实体的同步操作的两个日志条目之间创建基于同步顺序的动态排序关系。