Package org.apache.sysds.runtime.compress.lib

# Class CLALibCombineGroups

java.lang.Object
org.apache.sysds.runtime.compress.lib.CLALibCombineGroups

public final class CLALibCombineGroups extends Object
Library functions to combine column groups inside a compressed matrix.

## Method Summary

Modifier and Type
Method
Description
`static AColGroup`
`combine(AColGroup a, AColGroup b, int nRow)`
Combine the column groups A and B together.
`static List<AColGroup>`
`combine(CompressedMatrixBlock cmb, CompressedSizeInfo csi, ExecutorService pool, int k)`
`static AColGroup`
`combineN(List<AColGroup> groups, int nRows, ExecutorService pool, int k)`
`static AColGroup`
`combineNMergeTree(List<AColGroup> groups, int nRows, ExecutorService pool, int k)`
`static AColGroup`
`combineNSingleAtATime(List<AColGroup> groups, int nRows)`
`static double[]`
`constructDefaultTuple(AColGroupCompressed ac, AColGroupCompressed bc)`
`static List<AColGroup>`
`findGroupsInIndex(IColIndex idx, List<AColGroup> groups)`

### Methods inherited from class java.lang.Object

`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Method Details

### combine

public static List<AColGroup> combine(CompressedMatrixBlock cmb, CompressedSizeInfo csi, ExecutorService pool, int k) throws InterruptedException, ExecutionException

Throws:
  `InterruptedException`
  `ExecutionException`

### findGroupsInIndex

public static List<AColGroup> findGroupsInIndex(IColIndex idx, List<AColGroup> groups)

### combineN

public static AColGroup combineN(List<AColGroup> groups, int nRows, ExecutorService pool, int k) throws InterruptedException, ExecutionException

Throws:
  `InterruptedException`
  `ExecutionException`

### combineNMergeTree

public static AColGroup combineNMergeTree(List<AColGroup> groups, int nRows, ExecutorService pool, int k) throws InterruptedException, ExecutionException

Throws:
  `InterruptedException`
  `ExecutionException`

### combineNSingleAtATime

public static AColGroup combineNSingleAtATime(List<AColGroup> groups, int nRows)

### combine

public static AColGroup combine(AColGroup a, AColGroup b, int nRow)
Combine the column groups A and B together. The number of rows should be equal, and it is not verified so there will be unexpected behavior in such cases. It is assumed that this method is not called with FOR groups

Parameters:
  `a` - The first group to combine.
  `b` - The second group to combine.
  `nRow` - The number of rows in the two groups.
Returns:
  A new column group containing the two.

### constructDefaultTuple

public static double[] constructDefaultTuple(AColGroupCompressed ac, AColGroupCompressed bc)