Method for exploiting parallelism in task-based systems using an iteration space splitter
    11.
    发明授权
    Method for exploiting parallelism in task-based systems using an iteration space splitter 有权
    使用迭代空间分离器在基于任务的系统中利用并行性的方法

    公开(公告)号:US09501328B2

    公开(公告)日:2016-11-22

    申请号:US14673857

    申请日:2015-03-30

    CPC classification number: G06F9/5066 G06F9/5027

    Abstract: Embodiments include computing devices, systems, and methods for task-based handling of repetitive processes in parallel. At least one processor of the computing device, or a specialized hardware controller, may be configured to partition iterations of a repetitive process and assign the partitions to initialized tasks to be executed in parallel by a plurality of processor cores. Upon completing a task, remaining divisible partitions of the repetitive process of ongoing tasks may be subpartitioned and assigned to the ongoing task, and the completed task or a newly initialized task. Information about the iteration space for a repetitive process may be stored in a descriptor table, and status information for all partitions of a repetitive process stored in a status table. Each processor core may have an associated local table that tracks iteration execution of each task, and is synchronized with the status table.

    Abstract translation: 实施例包括用于并行地重复处理的基于任务的处理的计算设备,系统和方法。 计算设备的至少一个处理器或专用硬件控制器可以被配置为分区重复过程的迭代,并且将分区分配给由多个处理器核并行执行的初始化任务。 完成任务后,正在执行的任务的重复进程的剩余可分区可以被分分区并分配给正在进行的任务,以及完成的任务或新初始化的任务。 关于重复过程的迭代空间的信息可以存储在描述符表中,以及存储在状态表中的重复进程的所有分区的状态信息。 每个处理器核心可以具有跟踪每个任务的迭代执行的相关联的本地表,并且与状态表同步。

    Speculative Loop Iteration Partitioning for Heterogeneous Execution

    公开(公告)号:US20180060130A1

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

    申请号:US15245604

    申请日:2016-08-24

    CPC classification number: G06F9/5027 G06F9/5066 G06F2209/5017

    Abstract: Embodiments include computing devices, apparatus, and methods implemented by the apparatus for implementing speculative loop iteration partitioning (SLIP) for heterogeneous processing devices. A computing device may receive iteration information for a first partition of iterations of a repetitive process and select a SLIP heuristic based on available SLIP information and iteration information for the first partition. The computing device may determine a split value for the first partition using the SLIP heuristic, and partition the first partition using the split value to produce a plurality of next partitions.

    Shared Virtual Index for Memory Object Fusion in Heterogeneous Cooperative Computing

    公开(公告)号:US20180052776A1

    公开(公告)日:2018-02-22

    申请号:US15239937

    申请日:2016-08-18

    CPC classification number: G06F12/109 G06F2212/1041 G06F2212/657

    Abstract: Embodiments include computing devices, apparatus, and methods implemented by the apparatus for implementing shared virtual index translation on a computing device. The computing device may receive a base virtual address for storing an output of a kernel function execution to a dedicated memory and determine whether the virtual address is in a range of virtual addresses for a privatized output buffer within the dedicated memory, which may be smaller than the dedicated memory. The computing device may calculate a first modified physical address using a physical address mapped to the base virtual address and an offset of a first processing device associated with the dedicated memory in response to determining that the base virtual address is in the range of virtual addresses. The computing device may store the output of the kernel function execution to the privatized output buffer at the first modified physical address.

    MEMORY RECLAMATION ON A COMPUTING DEVICE
    14.
    发明申请
    MEMORY RECLAMATION ON A COMPUTING DEVICE 审中-公开
    计算机设备的记忆恢复

    公开(公告)号:US20160267005A1

    公开(公告)日:2016-09-15

    申请号:US14824142

    申请日:2015-08-12

    Abstract: Various embodiments include methods for reclaiming memory in a computing device that may include storing a first pointer pointing to a first memory location storing the beginning of a data structure in which a plurality of threads executing on the computing device may concurrently access the data structure and storing a second pointer pointing to the current beginning of the data structure. In response to performing an operation on the data structure that changes the location of the beginning of the data structure from the first memory location to a second memory location, the second pointer may be updated to point to the second memory location. In response to determining that memory allocated to the data structure may be reclaimed, memory allocated to the data structure, including memory located at the first memory location pointed to by the first pointer, may be reclaimed.

    Abstract translation: 各种实施例包括用于在计算设备中回收存储器的方法,其可以包括存储指向存储数据结构的开始的第一存储器位置的第一指针,其中在计算设备上执行的多个线程可以并发访问数据结构并存储 指向数据结构的当前开始的第二个指针。 响应于对将数据结构的开始位置从第一存储器位置改变到第二存储器位置的数据结构执行操作,可以更新第二指针以指向第二存储器位置。 响应于确定分配给数据结构的存储器可以被回收,可以回收分配给数据结构的存储器,包括位于第一指针指向的第一存储器位置处的存储器。

Patent Agency Ranking