Package org.apache.sysds.hops.fedplanner

# Class FederatedMemoTable

java.lang.Object
org.apache.sysds.hops.fedplanner.FederatedMemoTable

public class FederatedMemoTable extends Object
A Memoization Table for managing federated plans (FedPlan) based on combinations of Hops and fedOutTypes. This table stores and manages different execution plan variants for each Hop and fedOutType combination, facilitating the optimization of federated execution plans.

## Nested Class Summary

Nested Classes
Modifier and Type
Class
Description
`static class`
`FederatedMemoTable.FedPlan`
Represents a single federated execution plan with its associated costs and dependencies.
`static class`
`FederatedMemoTable.FedPlanVariants`
Represents a collection of federated execution plan variants for a specific Hop and FederatedOutput.
`static class`
`FederatedMemoTable.HopCommon`
Represents common properties and costs associated with a Hop.

## Constructor Summary

Constructors
Constructor
Description
`FederatedMemoTable()`

## Method Summary

Modifier and Type
Method
Description
`void`
`addFedPlanVariants(long hopID, FEDInstruction.FederatedOutput fedOutType, FederatedMemoTable.FedPlanVariants fedPlanVariants)`
`boolean`
`contains(long hopID, FEDInstruction.FederatedOutput fedOutType)`
`FederatedMemoTable.FedPlan`
`getFedPlanAfterPrune(long hopID, FEDInstruction.FederatedOutput federatedOutput)`
`FederatedMemoTable.FedPlan`
`getFedPlanAfterPrune(org.apache.commons.lang3.tuple.Pair<Long,FEDInstruction.FederatedOutput> fedPlanPair)`
`FederatedMemoTable.FedPlanVariants`
`getFedPlanVariants(org.apache.commons.lang3.tuple.Pair<Long,FEDInstruction.FederatedOutput> fedPlanPair)`

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

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

## Constructor Details

### FederatedMemoTable

public FederatedMemoTable()

## Method Details

### addFedPlanVariants

public void addFedPlanVariants(long hopID, FEDInstruction.FederatedOutput fedOutType, FederatedMemoTable.FedPlanVariants fedPlanVariants)

### getFedPlanVariants

public FederatedMemoTable.FedPlanVariants getFedPlanVariants(org.apache.commons.lang3.tuple.Pair<Long,FEDInstruction.FederatedOutput> fedPlanPair)

### getFedPlanAfterPrune

public FederatedMemoTable.FedPlan getFedPlanAfterPrune(long hopID, FEDInstruction.FederatedOutput federatedOutput)

### getFedPlanAfterPrune

public FederatedMemoTable.FedPlan getFedPlanAfterPrune(org.apache.commons.lang3.tuple.Pair<Long,FEDInstruction.FederatedOutput> fedPlanPair)

### contains

public boolean contains(long hopID, FEDInstruction.FederatedOutput fedOutType)