DATA SPLITTING FOR RECURSIVE DATA STRUCTURES
    11.
    发明申请

    公开(公告)号:US20150331682A1

    公开(公告)日:2015-11-19

    申请号:US14811755

    申请日:2015-07-28

    IPC分类号: G06F9/45 G06F17/30

    摘要: Embodiments of the present invention provide a method, system and computer program product for the data splitting of recursive data structures. In one embodiment of the invention, a method for data splitting recursive data structures can be provided. The method can include identifying data objects of a recursive data structure type, such as a linked list, within source code, the recursive data structure type defining multiple different data fields. The method further can include grouping the data objects into some memory pool units, each of which can contain the same number of data objects. Each memory pool unit can be seen as an array of data objects. The method can include data splitting, which could be maximal array splitting in each different memory pool unit. Finally, the method can include three different approaches, including field padding, field padding and field splitting, to handle irregular field sizes in the data structure.

    EXTENDING SUPERWORD LEVEL PARALLELISM

    公开(公告)号:US20150317137A1

    公开(公告)日:2015-11-05

    申请号:US14267268

    申请日:2014-05-01

    IPC分类号: G06F9/45

    摘要: A computer identifies one or more pairs of scalar statements and performs a cost analysis of operations of each of the one or more pairs of scalar statements to determine both a benefit and a cost of operations. The computer determines, based, at least in part, on the cost analysis, a gain for each of the one or more pairs of scalar statements. The computer creates based, at least in part, on the gain, a sorted list of each of the one or more pairs of scalar statements and selects a first pair from the sorted list. The computer issues a query to a hash table using a statement of the first pair and selects from results received from the query, a second pair. The computer then extends, based, at least in part, on the second pair, the first pair to create a pack.

    Speculative thread execution with hardware transactional memory
    13.
    发明授权
    Speculative thread execution with hardware transactional memory 有权
    使用硬件事务内存的推测线程执行

    公开(公告)号:US08881153B2

    公开(公告)日:2014-11-04

    申请号:US13801943

    申请日:2013-03-13

    摘要: In an embodiment, if a self thread has more than one conflict, a transaction of the self thread is aborted and restarted. If the self thread has only one conflict and an enemy thread of the self thread has more than one conflict, the transaction of the self thread is committed. If the self thread only conflicts with the enemy thread and the enemy thread only conflicts with the self thread and the self thread has a key that has a higher priority than a key of the enemy thread, the transaction of the self thread is committed. If the self thread only conflicts with the enemy thread, the enemy thread only conflicts with the self thread, and the self thread has a key that has a lower priority than the key of the enemy thread, the transaction of the self thread is aborted.

    摘要翻译: 在一个实施例中,如果自线程具有多于一个冲突,则自线程的事务被中止并重新启动。 如果自线程只有一个冲突,并且自线程的敌方线程有多个冲突,则自线程的事务被提交。 如果自线程只与敌方线程冲突,敌方线程只与自线程冲突,自线程的密钥优先级高于敌方线程的密钥,则自线程的事务被提交。 如果自线程只与敌方线程相冲突,敌方线程只会与自身线程冲突,自线程的密钥优先级低于敌方线程的密钥,自身线程的事务中止。

    EFFICIENT ROLLBACK AND RETRY OF CONFLICTED SPECULATIVE THREADS USING DISTRIBUTED TOKENS
    14.
    发明申请
    EFFICIENT ROLLBACK AND RETRY OF CONFLICTED SPECULATIVE THREADS USING DISTRIBUTED TOKENS 有权
    使用分布式TOKENS的冲击式螺旋线的有效回滚和重复

    公开(公告)号:US20140123153A1

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

    申请号:US13844461

    申请日:2013-03-15

    IPC分类号: G06F9/50

    摘要: A method for rolling back speculative threads in symmetric-multiprocessing (SMP) environments is disclosed. In one embodiment, such a method includes detecting an aborted thread at runtime and determining whether the aborted thread is an oldest aborted thread. In the event the aborted thread is the oldest aborted thread, the method sets a high-priority request for allocation to an absolute thread number associated with the oldest aborted thread. The method further detects that the high-priority request is set and, in response, modifies a local allocation token of the oldest aborted thread. The modification prompts the oldest aborted thread to retry a work unit associated with its absolute thread number. The oldest aborted thread subsequently initiates the retry of a successor thread by updating the successor thread's local allocation token. A corresponding apparatus and computer program product are also disclosed.

    摘要翻译: 公开了一种在对称多处理(SMP)环境中回滚推测线程的方法。 在一个实施例中,这种方法包括在运行时检测中止的线程并且确定被中止的线程是否是最旧的中止线程。 如果中止的线程是最早中止的线程,则该方法设置高优先级请求以分配给与最早中止线程相关联的绝对线程号。 该方法还检测到设置了高优先级请求,并且作为响应,修改了最早中止的线程的本地分配令牌。 修改提示最旧的中止线程重试与其绝对线程号相关联的工作单元。 最旧的中止线程随后通过更新后续线程的本地分配令牌来启动后续线程的重试。 还公开了相应的装置和计算机程序产品。

    Extending superword level parallelism

    公开(公告)号:US09632762B2

    公开(公告)日:2017-04-25

    申请号:US14623920

    申请日:2015-02-17

    IPC分类号: G06F9/45 G06F9/30

    摘要: A computer identifies one or more pairs of scalar statements and performs a cost analysis of operations of each of the one or more pairs of scalar statements to determine both a benefit and a cost of operations. The computer determines, based, at least in part, on the cost analysis, a gain for each of the one or more pairs of scalar statements. The computer creates based, at least in part, on the gain, a sorted list of each of the one or more pairs of scalar statements and selects a first pair from the sorted list. The computer issues a query to a hash table using a statement of the first pair and selects from results received from the query, a second pair. The computer then extends, based, at least in part, on the second pair, the first pair to create a pack.

    Computer instructions for limiting access violation reporting when accessing strings and similar data structures
    17.
    发明授权
    Computer instructions for limiting access violation reporting when accessing strings and similar data structures 有权
    访问字符串和类似数据结构时限制访问冲突报告的计算机指令

    公开(公告)号:US09569127B2

    公开(公告)日:2017-02-14

    申请号:US14583970

    申请日:2014-12-29

    摘要: Embodiments are directed to a method of accessing a data frame. The method includes, based at least in part on a determination that the data frame spans first and second memory blocks, and further based at least in part on a determination that the processor has access to the first and second memory blocks, accessing the data frame. The method includes, based at least in part on a determination that the data frame spans the first and second memory blocks, and based at least in part on a determination that the processor has access to the first memory block but does not have access to the second memory block, accessing a first portion of the data frame that is in the first memory block, and accessing at least one default character as a replacement for accessing a second portion of the data frame that is in the second memory block.

    摘要翻译: 实施例涉及访问数据帧的方法。 该方法至少部分地至少部分地基于数据帧跨越第一和第二存储器块的确定,并且还至少部分地基于对处理器对第一和第二存储器块的访问的确定,访问数据帧 。 该方法至少部分地基于数据帧跨越第一和第二存储器块的确定,并且至少部分地基于确定处理器可以访问第一存储器块但不能访问第一存储器块 第二存储器块,访问位于第一存储器块中的数据帧的第一部分,以及访问至少一个默认字符作为访问第二存储块中的数据帧的第二部分的替代。

    Extending superword level parallelism
    18.
    发明授权
    Extending superword level parallelism 有权
    扩展词水平并行度

    公开(公告)号:US09557977B2

    公开(公告)日:2017-01-31

    申请号:US14267268

    申请日:2014-05-01

    IPC分类号: G06F9/45 G06F9/30

    摘要: A computer identifies one or more pairs of scalar statements and performs a cost analysis of operations of each of the one or more pairs of scalar statements to determine both a benefit and a cost of operations. The computer determines, based, at least in part, on the cost analysis, a gain for each of the one or more pairs of scalar statements. The computer creates based, at least in part, on the gain, a sorted list of each of the one or more pairs of scalar statements and selects a first pair from the sorted list. The computer issues a query to a hash table using a statement of the first pair and selects from results received from the query, a second pair. The computer then extends, based, at least in part, on the second pair, the first pair to create a pack.

    摘要翻译: 计算机识别一个或多个标量语句对,并且对一个或多个标量语句对中的每一个执行操作的成本分析以确定操作的益处和成本。 计算机至少部分地基于成本分析确定一对或多对标量语句中的每一对的增益。 计算机至少部分地基于增益创建一个或多个标量语句对中的每一个的排序列表,并从排序列表中选择第一对。 计算机使用第一对的语句向哈希表发出查询,并从查询接收到的结果中选择第二对。 然后,计算机至少部分地基于第二对,第一对来扩展,以创建一个包。