Compacted memory transactions for local data shares
AssigneeAdvanced Micro Devices, In.
InventorsMax Oberberger, Matthaeus G. Chajdas
Life of this patent
Estimating the term…
Abstract
To load compacted memory between a system memory and a local data share (LDS), a processing system includes an accelerator unit (AU) connected to a memory unit. The memory unit is configured to identify that compacted data in the system memory is to be written to elements of an LDS based on two or more compaction masks. The memory unit is configured to then determine sources within the memory from which to load compacted data into the elements of the LDS by determining pre-fix sums based on the two or more compaction masks. The memory unit is configured to then load the compacted data from the identified sources to corresponding elements of the LDS.
Claims20
An accelerator unit (AU), comprising:
- one or more compute units configured to execute a first group of threads and a second group of threads;
- and
- a memory unit connected to the one or more compute units and configured to:
- identify compacted data in a memory based on two or more compaction masks, a first compaction mask of the two or more compaction masks including elements corresponding to the first group of threads and a second compaction mask of the two or more compaction masks including elements corresponding to the second group of threads;
- and
- store the compacted data in a local data share based on the two or more compaction masks.
A method, comprising:
- identifying, at a memory unit, compacted data in a memory based on two or more compaction masks associated with a received set of instructions, a first compaction mask of the two or more compaction masks including elements corresponding to a first group of threads indicated by the set of instructions and a second compaction mask of the two or more compaction masks including elements corresponding to a second group of threads indicated by the set of instructions;
- and
- storing the compacted data in a local data share based on the two or more compaction masks.
A processing system comprising:
- a first processing unit configured to send a set of instructions;
- and
- a second processing unit, comprising:
- one or more compute units configured to execute a first group of threads and a second group of threads for the set of instructions;
- and
- a memory unit connected to the one or more compute units and configured to:
- identify results in a local data share to be written to a system memory based on two or more compaction masks associated with the set of instructions, a first compaction mask of the two or more compaction masks including elements corresponding to the first group of threads and a second compaction mask of the two or more compaction masks including elements corresponding to the second group of threads;
- and
- store the results in the system memory based on the two or more compaction masks.
Dependencies are inferred from the claim text.