WORKGROUP SYNCHRONIZATION AND PROCESSING

    公开(公告)号:US20210373975A1

    公开(公告)日:2021-12-02

    申请号:US17029935

    申请日:2020-09-23

    Abstract: A processing system monitors and synchronizes parallel execution of workgroups (WGs). One or more of the WGs perform (e.g., periodically or in response to a trigger such as an indication of oversubscription) a waiting atomic instruction. In response to a comparison between an atomic value produced as a result of the waiting atomic instruction and an expected value, WGs that fail to produce a correct atomic value are identified as being in a waiting state (e.g., waiting for a synchronization variable). Execution of WGs in the waiting state is prevented (e.g., by a context switch) until corresponding synchronization variables are released.

    DATA COMPRESSION SYSTEM USING BASE VALUES AND METHODS THEREOF

    公开(公告)号:US20210191620A1

    公开(公告)日:2021-06-24

    申请号:US16724609

    申请日:2019-12-23

    Abstract: In some embodiments, a memory controller in a processor includes a base value cache, a compressor, and a metadata cache. The compressor is coupled to the base value cache and the metadata cache. The compressor compresses a data block using at least a base value and delta values. The compressor determines whether the size of the data block exceeds a data block threshold value. Based on the determination of whether the size of the compressed data block generated by the compressor exceeds the data block threshold value, the memory controller transfers only a set of the compressed delta values to memory for storage. A decompressor located in the lower level cache of the processor decompresses the compressed data block using the base value stored in the base value cache, metadata stored in the metadata cache and the delta values stored in memory.

    DATA COMPRESSION SYSTEM USING BASE VALUES AND METHODS THEREOF

    公开(公告)号:US20220083233A1

    公开(公告)日:2022-03-17

    申请号:US17497286

    申请日:2021-10-08

    Abstract: In some embodiments, a memory controller in a processor includes a base value cache, a compressor, and a metadata cache. The compressor is coupled to the base value cache and the metadata cache. The compressor compresses a data block using at least a base value and delta values. The compressor determines whether the size of the data block exceeds a data block threshold value. Based on the determination of whether the size of the compressed data block generated by the compressor exceeds the data block threshold value, the memory controller transfers only a set of the compressed delta values to memory for storage. A decompressor located in the lower level cache of the processor decompresses the compressed data block using the base value stored in the base value cache, metadata stored in the metadata cache and the delta values stored in memory.

    LIMITED PROPAGATION OF UNNECESSARY MEMORY UPDATES

    公开(公告)号:US20220066940A1

    公开(公告)日:2022-03-03

    申请号:US17007133

    申请日:2020-08-31

    Abstract: A processing system limits the propagation of unnecessary memory updates by bypassing writing back dirty cache lines to other levels of a memory hierarchy in response to receiving an indication from software executing at a processor of the processing system that the value of the dirty cache line is dead (i.e., will not be read again or will not be read until after it has been overwritten). In response to receiving an indication from software that data is dead, a cache controller prevents propagation of the dead data to other levels of memory in response to eviction of the dead data or flushing of the cache at which the dead data is stored.

    LAXITY-AWARE, DYNAMIC PRIORITY VARIATION AT A PROCESSOR

    公开(公告)号:US20200167191A1

    公开(公告)日:2020-05-28

    申请号:US16200503

    申请日:2018-11-26

    Abstract: A processing system includes a task queue, a laxity-aware task scheduler coupled to the task queue, and a workgroup dispatcher coupled to the laxity-aware task scheduler. Based on a laxity evaluation of laxity values associated with a plurality of tasks stored in the task queue, the workgroup dispatcher schedules the plurality of tasks. The laxity evaluation includes determining a priority of each task of the plurality of tasks. The laxity value is determined using laxity information, where the laxity information includes an arrival time, a task duration, a task deadline, and a number of workgroups.

    COOPERATIVE WORKGROUP SCHEDULING AND CONTEXT PREFETCHING

    公开(公告)号:US20200004586A1

    公开(公告)日:2020-01-02

    申请号:US16024244

    申请日:2018-06-29

    Abstract: A first workgroup is preempted in response to threads in the first workgroup executing a first wait instruction including a first value of a signal and a first hint indicating a type of modification for the signal. The first workgroup is scheduled for execution on a processor core based on a first context after preemption in response to the signal having the first value. A second workgroup is scheduled for execution on the processor core based on a second context in response to preempting the first workgroup and in response to the signal having a second value. A third context it is prefetched into registers of the processor core based on the first hint and the second value. The first context is stored in a first portion of the registers and the second context is prefetched into a second portion of the registers prior to preempting the first workgroup.

Patent Agency Ranking