# Package org.apache.sysds.hops

package org.apache.sysds.hops

Related Packages
Package
Description
org.apache.sysds.hops.codegen
org.apache.sysds.hops.cost
org.apache.sysds.hops.estim
org.apache.sysds.hops.fedplanner
org.apache.sysds.hops.ipa
org.apache.sysds.hops.recompile
org.apache.sysds.hops.rewrite
Class
Description
AggBinaryOp
AggBinaryOp.MMultMethod
AggBinaryOp.SparkAggType
AggUnaryOp
BinaryOp
Binary (cell operations): aij + bij Properties: Symbol: *, -, +, ...
BinaryOp.AppendMethod
BinaryOp.MMBinaryMethod
DataGenOp
A DataGenOp can be rand (or matrix constructor), sequence, and sample - these operators have different parameters and use a map of parameter type to hop position.
DataOp
A DataOp can be either a persistent read/write or transient read/write - writes will always have at least one input, but all types can have parameters (e.g., for csv literals of delimiter, header, etc).
DnnOp
FunctionOp
This FunctionOp represents the call to a DML-bodied or external function.
FunctionOp.FunctionType
Hop
Hop is a High level operator, that is the first intermediate representation compiled from the definitions supplied in DML.
HopsException
Exception occurring in the HOP level.
IndexingOp
LeftIndexingOp
LeftIndexingOp.LeftIndexingMethod
LiteralOp
MemoTable
Memoization Table (hop id, worst-case matrix characteristics).
MultiThreadedHop
Optional hop interface, to be implemented by multi-threaded hops.
NaryOp
The NaryOp Hop allows for a variable number of operands.
OptimizerUtils
OptimizerUtils.MemoryManager
Memory managers (static partitioned, unified)
OptimizerUtils.OptimizationLevel
Optimization Types for Compilation O0 STATIC - Decisions for scheduling operations on CP/MR are based on predefined set of rules, which check if the dimensions are below a fixed/static threshold (OLD Method of choosing between CP and MR).
ParameterizedBuiltinOp
Defines the HOP for calling an internal function (with custom parameters) from a DML script.
QuaternaryOp
Note: this hop should be called AggQuaternaryOp in consistency with AggUnaryOp and AggBinaryOp; however, since there does not exist a real QuaternaryOp yet - we can leave it as is for now.
ReorgOp
Reorg (cell) operation: aij Properties: Symbol: ', rdiag, rshape, rsort 1 Operand (except sort and reshape take additional arguments) Semantic: change indices (in mapper or reducer) NOTE MB: reshape integrated here because (1) ParameterizedBuiltinOp requires name-value pairs for params and (2) most importantly semantic of reshape is exactly a reorg op.
TernaryOp
Primary use cases for now, are `quantile (<n-1-matrix>, <n-1-matrix>, <literal>): quantile (A, w, 0.5)` `quantile (<n-1-matrix>, <n-1-matrix>, <scalar>): quantile (A, w, s)` `interquantile (<n-1-matrix>, <n-1-matrix>, <scalar>): interquantile (A, w, s)` Keep in mind, that we also have binaries for it w/o weights.
UnaryOp