CPC G06F 3/0608 (2013.01) [G06F 3/0655 (2013.01); G06F 3/0679 (2013.01)] | 20 Claims |
1. A computer system comprising:
a processor; and
memory,
wherein the computer system is configured to perform data compression, the data compression comprising:
receiving a first set of data and a second set of data;
selecting non-zero data values from the first set of data and the second set of data;
generating a first sparsified data set and a second sparsified data set comprising the selected non-zero data values, wherein other data values in the first and second sparsified data sets are zero values;
generating a first bit mask and a second bit mask, the first and second bit masks specifying positions of the non-zero data values in the first and second sparsified data sets;
generating a third sparsified data set and a fourth sparsified data set comprising the selected non-zero data values, wherein the third sparsified data set has a number of data values less than the first sparsified data set and comprises the non-zero values from the first sparsified data set, and wherein the fourth sparsified data set has a number of data values less than the second sparsified data set and comprises the non-zero values from the second sparsified data set;
generating a third bit mask specifying positions of the non-zero values in the third and fourth sparsified data sets;
generating a compressed data set comprising the non-zero values from the third and fourth sparsified data sets; and
storing the compressed data set and the first, second, and third bit masks in the memory.
|