Method and computing system for sorting position-dependent data arrays
AssigneeEMC IP Holding Company LLC
InventorsJonathan I. Krasner, Chakib Ouarraoui
Life of this patent
Estimating the term…
Abstract
A method and computing system for sorting position-dependent data arrays. Specifically, the method and computing system disclosed herein entail: first, sorting one position-dependent data array according to a desired sorting order; and second, permuting the remaining position-dependent data arrays, based on the sorted position-dependent data array, in order to maintain the same relative positions of the various data stored across the position-dependent data arrays. Through this aforementioned sorting of position-dependent data arrays, a GPU may produce sorted structure of arrays from unsorted structure of arrays.
Claims20
A method for producing a sorted structure of arrays (SoA), comprising:
- obtaining an unsorted SoA comprising a plurality of unsorted position-dependent data arrays;
- selecting an unsorted position-dependent data array from the plurality of unsorted position-dependent data arrays;
- sorting the unsorted position-dependent data array according to a preferred sorting order, to obtain a sorted position-dependent data array;
- and
- permuting each remaining unsorted position-dependent data array of the plurality of unsorted position-dependent data arrays, based at least on the sorted position-dependent data array, to produce the sorted SoA,
- wherein the sorted SoA is used to expedite data searching and access.
A computing system, comprising:
- a first computer processor;
- and
- a memory accessible to the first computer processor, wherein the first computer processor is programmed to:
- obtain, from the memory, an unsorted structure of arrays (SoA) comprising a plurality of unsorted position-dependent data arrays;
- select an unsorted position-dependent data array from the plurality of unsorted position-dependent data arrays;
- sort the unsorted position-dependent data array according to a preferred sorting order, to obtain a sorted position-dependent data array;
- and
- permute each remaining unsorted position-dependent data array of the plurality of unsorted position-dependent data arrays, based at least on the sorted position-dependent data array, to produce a sorted SoA,
- wherein the sorted SoA is used to expedite data searching and access.
A non-transitory computer readable medium (CRM) comprising computer readable program code, which when executed by a computer processor, enables the computer processor to:
- obtain an unsorted structure of arrays (SoA) comprising a plurality of unsorted position-dependent data arrays;
- select an unsorted position-dependent data array from the plurality of unsorted position-dependent data arrays;
- sort the unsorted position-dependent data array according to a preferred sorting order, to obtain a sorted position-dependent data array;
- and
- permute each remaining unsorted position-dependent data array of the plurality of unsorted position-dependent data arrays, based at least on the sorted position-dependent data array, to produce a sorted SoA,
- wherein the sorted SoA is used to expedite data searching and access.
Dependencies are inferred from the claim text.