Method for memory consistency among heterogeneous computer components
    2.
    发明授权
    Method for memory consistency among heterogeneous computer components 有权
    异构计算机组件之间内存一致性的方法

    公开(公告)号:US09361118B2

    公开(公告)日:2016-06-07

    申请号:US14275271

    申请日:2014-05-12

    Abstract: A method, computer program product, and system is described that determines the correctness of using memory operations in a computing device with heterogeneous computer components. Embodiments include an optimizer based on the characteristics of a Sequential Consistency for Heterogeneous-Race-Free (SC for HRF) model that analyzes a program and determines the correctness of the ordering of events in the program. HRF models include combinations of the properties: scope order, scope inclusion, and scope transitivity. The optimizer can determine when a program is heterogeneous-race-free in accordance with an SC for HRF memory consistency model. For example, the optimizer can analyze a portion of program code, respect the properties of the SC for HRF model, and determine whether a value produced by a store memory event will be a candidate for a value observed by a load memory event. In addition, the optimizer can determine whether reordering of events is possible.

    Abstract translation: 描述了一种方法,计算机程序产品和系统,其确定在具有异构计算机组件的计算设备中使用存储器操作的正确性。 实施例包括基于用于异构无竞争(SC for HRF)的顺序一致性的特性的优化器,该模型分析程序并确定程序中的事件的顺序的正确性。 HRF模型包括属性的组合:范围顺序,范围包含和范围传递性。 优化器可以根据HR对HRF内存一致性模型的SC来确定程序何时是异构无竞争的。 例如,优化器可以分析程序代码的一部分,尊重SC的HRF模型的属性,并且确定由存储器存储器事件产生的值是否将是由加载存储器事件观察到的值的候选。 此外,优化器可以确定是否可能重新排序事件。

    TYPE INFERENCE FOR INFERRING SCALAR/VECTOR COMPONENTS
    3.
    发明申请
    TYPE INFERENCE FOR INFERRING SCALAR/VECTOR COMPONENTS 审中-公开
    感染标度/矢量成分的类型

    公开(公告)号:US20140359250A1

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

    申请号:US13903469

    申请日:2013-05-28

    CPC classification number: G06F8/314

    Abstract: Methods and systems are provided for inferring types in a computer program. In one example, a method comprises: identifying a type of at least one expression of the computer program; and annotating the at least one expression in the computer program when the type of the at least one expression is at least one of a varying type and a uniform type.

    Abstract translation: 提供了用于在计算机程序中推断类型的方法和系统。 在一个示例中,一种方法包括:识别计算机程序的至少一个表达式的类型; 以及当所述至少一个表达式的类型是变化类型和统一类型中的至少一个时,在所述计算机程序中注释所述至少一个表达式。

    Method and system for synchronization of workitems with divergent control flow
    5.
    发明授权
    Method and system for synchronization of workitems with divergent control flow 有权
    工作单元与发散控制流同步的方法和系统

    公开(公告)号:US09424099B2

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

    申请号:US13672291

    申请日:2012-11-08

    CPC classification number: G06F9/52 G06F9/522

    Abstract: Disclosed methods, systems, and computer program products embodiments include synchronizing a group of workitems on a processor by storing a respective program counter associated with each of the workitems, selecting at least one first workitem from the group for execution, and executing the selected at least one first workitem on the processor. The selecting is based upon the respective stored program counter associated with the at least one first workitem.

    Abstract translation: 公开的方法,系统和计算机程序产品实施例包括通过存储与每个工作项相关联的相应程序计数器来同步处理器上的一组工作项,从组中选择至少一个第一工作以供执行,以及执行所选择的至少 处理器上的第一个工作。 所述选择基于与所述至少一个第一工作项相关联的相应存储的程序计数器。

    Handling pointers in program code in a system that supports multiple address spaces

    公开(公告)号:US09424009B2

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

    申请号:US14723969

    申请日:2015-05-28

    Abstract: Some embodiments include a processing subsystem that compiles program code to generate compiled program code. In these embodiments, while compiling the program code, the processing subsystem first identifies a pointer in the program code that points to an unspecified address space. The processing subsystem then analyzes at least a portion of the program code to determine one or more address spaces to which the pointer may point. Next, the processor updates metadata for the pointer to indicate the one or more address spaces to which the pointer may point, the metadata enabling a determination of an address space to which the pointer points during subsequent execution of the compiled program code.

    Heterogeneous parallel primitives programming model

    公开(公告)号:US11231962B2

    公开(公告)日:2022-01-25

    申请号:US15797702

    申请日:2017-10-30

    Abstract: With the success of programming models such as OpenCL and CUDA, heterogeneous computing platforms are becoming mainstream. However, these heterogeneous systems are low-level, not composable, and their behavior is often implementation defined even for standardized programming models. In contrast, the method and system embodiments for the heterogeneous parallel primitives (HPP) programming model disclosed herein provide a flexible and composable programming platform that guarantees behavior even in the case of developing high-performance code.

    HETEROGENEOUS PARALLEL PRIMITIVES PROGRAMMING MODEL

    公开(公告)号:US20180060124A1

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

    申请号:US15797702

    申请日:2017-10-30

    CPC classification number: G06F9/50 G06F9/5072

    Abstract: With the success of programming models such as OpenCL and CUDA, heterogeneous computing platforms are becoming mainstream. However, these heterogeneous systems are low-level, not composable, and their behavior is often implementation defined even for standardized programming models. In contrast, the method and system embodiments for the heterogeneous parallel primitives (HPP) programming model disclosed herein provide a flexible and composable programming platform that guarantees behavior even in the case of developing high-performance code.

    Handling Pointers in Program Code in a System that Supports Multiple Address Spaces
    9.
    发明申请
    Handling Pointers in Program Code in a System that Supports Multiple Address Spaces 有权
    在支持多个地址空间的系统中处理程序代码中的指针

    公开(公告)号:US20150261511A1

    公开(公告)日:2015-09-17

    申请号:US14723969

    申请日:2015-05-28

    Abstract: Some embodiments include a processing subsystem that compiles program code to generate compiled program code. In these embodiments, while compiling the program code, the processing subsystem first identifies a pointer in the program code that points to an unspecified address space. The processing subsystem then analyzes at least a portion of the program code to determine one or more address spaces to which the pointer may point. Next, the processor updates metadata for the pointer to indicate the one or more address spaces to which the pointer may point, the metadata enabling a determination of an address space to which the pointer points during subsequent execution of the compiled program code.

    Abstract translation: 一些实施例包括编译程序代码以生成编译程序代码的处理子系统。 在这些实施例中,在编译程序代码时,处理子系统首先识别程序代码中指向未指定地址空间的指针。 处理子系统然后分析程序代码的至少一部分以确定指针可指向的一个或多个地址空间。 接下来,处理器更新指针的元数据以指示指针可指向的一个或多个地址空间,所述元数据使得能够确定在编译的程序代码的后续执行期间指针指向的地址空间。

    Handling pointers in program code in a system that supports multiple address spaces
    10.
    发明授权
    Handling pointers in program code in a system that supports multiple address spaces 有权
    在支持多个地址空间的系统中处理程序代码中的指针

    公开(公告)号:US09058192B2

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

    申请号:US13632902

    申请日:2012-10-01

    Abstract: Some embodiments include a processing subsystem that compiles program code to generate compiled program code. In these embodiments, while compiling the program code, the processing subsystem first identifies a pointer in the program code that points to an unspecified address space. The processing subsystem then analyzes at least a portion of the program code to determine one or more address spaces to which the pointer may point. Next, the processor updates metadata for the pointer to indicate the one or more address spaces to which the pointer may point, the metadata enabling a determination of an address space to which the pointer points during subsequent execution of the compiled program code.

    Abstract translation: 一些实施例包括编译程序代码以生成编译程序代码的处理子系统。 在这些实施例中,在编译程序代码时,处理子系统首先识别程序代码中指向未指定地址空间的指针。 处理子系统然后分析程序代码的至少一部分以确定指针可指向的一个或多个地址空间。 接下来,处理器更新指针的元数据以指示指针可指向的一个或多个地址空间,所述元数据使得能够确定在编译的程序代码的后续执行期间指针指向的地址空间。

Patent Agency Ranking