Package org.apache.sysds.hops.ipa

## Class IPAPassRemoveUnnecessaryCheckpoints

- java.lang.Object
- - org.apache.sysds.hops.ipa.IPAPass
  - - org.apache.sysds.hops.ipa.IPAPassRemoveUnnecessaryCheckpoints

-     public class IPAPassRemoveUnnecessaryCheckpoints
      extends IPAPass

  This rewrite identifies and removes unnecessary checkpoints, i.e., persisting of Spark RDDs into a given storage level. For example, in chains such as pread-checkpoint-append-checkpoint, the first checkpoint is not used and creates unnecessary memory pressure.

- - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `IPAPassRemoveUnnecessaryCheckpoints()` |

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `boolean` | `isApplicable​(FunctionCallGraph fgraph)` | Indicates if an IPA pass is applicable for the current configuration such as global flags or the chosen execution mode (e.g., HYBRID).
    `boolean` | `rewriteProgram​(DMLProgram prog, FunctionCallGraph fgraph, FunctionCallSizeInfo fcallSizes)` | Rewrites the given program or its functions in place, with access to the read-only function call graph.
    `static void` | `rRemoveCheckpointReadWrite​(Hop hop)` |

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

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

- - ### Constructor Detail

    - #### IPAPassRemoveUnnecessaryCheckpoints

          public IPAPassRemoveUnnecessaryCheckpoints()

  - ### Method Detail

    - #### isApplicable

          public boolean isApplicable​(FunctionCallGraph fgraph)

      Description copied from class: `IPAPass`
      Indicates if an IPA pass is applicable for the current configuration such as global flags or the chosen execution mode (e.g., HYBRID).
      Specified by:
        `isApplicable` in class `IPAPass`
      Parameters:
        `fgraph` - function call graph
      Returns:
        true if applicable.

    - #### rewriteProgram

          public boolean rewriteProgram​(DMLProgram prog,
                                        FunctionCallGraph fgraph,
                                        FunctionCallSizeInfo fcallSizes)

      Description copied from class: `IPAPass`
      Rewrites the given program or its functions in place, with access to the read-only function call graph.
      Specified by:
        `rewriteProgram` in class `IPAPass`
      Parameters:
        `prog` - dml program
        `fgraph` - function call graph
        `fcallSizes` - function call size infos
      Returns:
        true if function call graph should be rebuild

    - #### rRemoveCheckpointReadWrite

          public static void rRemoveCheckpointReadWrite​(Hop hop)