Class DistinctCostEstimator
java.lang.Object
org.apache.sysds.runtime.compress.cost.ACostEstimate
org.apache.sysds.runtime.compress.cost.DistinctCostEstimator
- All Implemented Interfaces:
Serializable
A Cost based estimator that based the compression and co-coding cost on the number of distinct elements in the column
groups.
The base cost of the uncompressed representation is the number of cells in the matrix that has a value. Aka nonzero
values.
- See Also:
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiondoubleGet the cost of a compressed columnGroup.doublegetCost(MatrixBlock mb) Get the cost of a matrix block.booleanAsk the cost estimator if it is a good idea to try to sparsify a column group.
-
Constructor Details
-
DistinctCostEstimator
-
-
Method Details
-
getCost
Description copied from class:ACostEstimateGet the cost of a matrix block.- Specified by:
getCostin classACostEstimate- Parameters:
mb- A MatrixBlock- Returns:
- The cost subject to the internal cost functions
-
getCost
Description copied from class:ACostEstimateGet the cost of a compressed columnGroup.- Specified by:
getCostin classACostEstimate- Parameters:
cg- A ColumnGroupnRows- The number of rows in the column group- Returns:
- The cost subject to the internal cost functions
-
shouldSparsify
public boolean shouldSparsify()Description copied from class:ACostEstimateAsk the cost estimator if it is a good idea to try to sparsify a column group. It is the same as asking if it is a good idea to make FOR on top of the column group.- Specified by:
shouldSparsifyin classACostEstimate- Returns:
- true if yes
-