Package org.apache.sysds.runtime.instructions.fed

## Class InitFEDInstruction

- java.lang.Object
- - org.apache.sysds.runtime.instructions.Instruction
  - - org.apache.sysds.runtime.instructions.fed.FEDInstruction
    - - org.apache.sysds.runtime.instructions.fed.InitFEDInstruction

All Implemented Interfaces:
  `LineageTraceable`

    public class InitFEDInstruction
    extends FEDInstruction
    implements LineageTraceable

### Nested Class Summary

### Nested classes/interfaces inherited from class org.apache.sysds.runtime.instructions.fed.FEDInstruction

`FEDInstruction.FederatedOutput, FEDInstruction.FEDType`

### Nested classes/interfaces inherited from class org.apache.sysds.runtime.instructions.Instruction

`Instruction.IType`

### Field Summary

Fields
`static String` `FED_FRAME_IDENTIFIER`
`static String` `FED_MATRIX_IDENTIFIER`

### Fields inherited from class org.apache.sysds.runtime.instructions.Instruction

`DATATYPE_PREFIX, FEDERATED_INST_PREFIX, GPU_INST_PREFIX, INSTRUCTION_DELIM, LITERAL_PREFIX, OPERAND_DELIM, SP_INST_PREFIX, VALUETYPE_PREFIX`

### Constructor Summary

Constructors
`InitFEDInstruction​(CPOperand type, CPOperand addresses, CPOperand ranges, CPOperand out, String opcode, String instr)`
`InitFEDInstruction​(CPOperand type, CPOperand addresses, CPOperand ranges, CPOperand object, CPOperand out, String opcode, String instr)`

### Method Summary

All Methods Static Methods Instance Methods Concrete Methods
`static void` `federateFrame​(FrameObject output, List<org.apache.commons.lang3.tuple.Pair<FederatedRange,​FederatedData>> workers)`
`static void` `federateFrame​(FrameObject output, List<org.apache.commons.lang3.tuple.Pair<FederatedRange,​FederatedData>> workers, CacheBlock<?>[] blocks)`
`static void` `federateMatrix​(CacheableData<?> output, List<org.apache.commons.lang3.tuple.Pair<FederatedRange,​FederatedData>> workers)`
`static void` `federateMatrix​(CacheableData<?> output, List<org.apache.commons.lang3.tuple.Pair<FederatedRange,​FederatedData>> workers, CacheBlock<?>[] blocks)`
`org.apache.commons.lang3.tuple.Pair<String,​LineageItem>` `getLineageItem​(ExecutionContext ec)` Obtain lineage trace of an instruction with a single output.
`static InitFEDInstruction` `parseInstruction​(String str)`
`static String[]` `parseURL​(String input)`
`static String[]` `parseURLNoFilePath​(String input)`
`void` `processFromLocalFedInit​(ExecutionContext ec)`
`void` `processInstruction​(ExecutionContext ec)` This method should be used to execute the instruction.

### Methods inherited from class org.apache.sysds.runtime.instructions.fed.FEDInstruction

`getFEDInstructionType, getTID, getType, setTID`

### Methods inherited from class org.apache.sysds.runtime.instructions.Instruction

`getBeginColumn, getBeginLine, getEndColumn, getEndLine, getExtendedOpcode, getFilename, getGraphString, getInstID, getInstructionString, getLineNum, getOpcode, getOperator, postprocessInstruction, preprocessInstruction, printMe, requiresLabelUpdate, setInstID, setLocation, setLocation, setLocation, setLocation, toString, updateInstructionThreadID`

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

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

### Methods inherited from interface org.apache.sysds.runtime.lineage.LineageTraceable

`getLineageItems, hasSingleLineage`

### Field Detail

#### FED_MATRIX_IDENTIFIER

    public static final String FED_MATRIX_IDENTIFIER

See Also:
  Constant Field Values

#### FED_FRAME_IDENTIFIER

    public static final String FED_FRAME_IDENTIFIER

See Also:
  Constant Field Values

### Constructor Detail

#### InitFEDInstruction

    public InitFEDInstruction​(CPOperand type,
                              CPOperand addresses,
                              CPOperand ranges,
                              CPOperand out,
                              String opcode,
                              String instr)

#### InitFEDInstruction

    public InitFEDInstruction​(CPOperand type,
                              CPOperand addresses,
                              CPOperand ranges,
                              CPOperand object,
                              CPOperand out,
                              String opcode,
                              String instr)

### Method Detail

#### parseInstruction

    public static InitFEDInstruction parseInstruction​(String str)

#### processInstruction

    public void processInstruction​(ExecutionContext ec)

Description copied from class: `Instruction`
This method should be used to execute the instruction.

Specified by:
  `processInstruction` in class `Instruction`
Parameters:
  `ec` - execution context

#### processFromLocalFedInit

    public void processFromLocalFedInit​(ExecutionContext ec)

#### parseURLNoFilePath

    public static String[] parseURLNoFilePath​(String input)

#### parseURL

    public static String[] parseURL​(String input)

#### federateMatrix

    public static void federateMatrix​(CacheableData<?> output,
                                      List<org.apache.commons.lang3.tuple.Pair<FederatedRange,​FederatedData>> workers)

#### federateMatrix

    public static void federateMatrix​(CacheableData<?> output,
                                      List<org.apache.commons.lang3.tuple.Pair<FederatedRange,​FederatedData>> workers,
                                      CacheBlock<?>[] blocks)

#### federateFrame

    public static void federateFrame​(FrameObject output,
                                     List<org.apache.commons.lang3.tuple.Pair<FederatedRange,​FederatedData>> workers)

#### federateFrame

    public static void federateFrame​(FrameObject output,
                                     List<org.apache.commons.lang3.tuple.Pair<FederatedRange,​FederatedData>> workers,
                                     CacheBlock<?>[] blocks)

#### getLineageItem

    public org.apache.commons.lang3.tuple.Pair<String,​LineageItem> getLineageItem​(ExecutionContext ec)

Description copied from interface: `LineageTraceable`
Obtain lineage trace of an instruction with a single output.

Specified by:
  `getLineageItem` in interface `LineageTraceable`
Parameters:
  `ec` - execution context w/ live variables
Returns:
  pair of (output variable name, output lineage item)