org.apache.sysds.hops.ipa

## Class IPAPassRemoveUnusedFunctions

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

-     public class IPAPassRemoveUnusedFunctions
      extends IPAPass

  This rewrite identifies and removes unused functions in order to reduce compilation overhead and other overheads such as parfor worker creation, where we construct function copies.

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `IPAPassRemoveUnusedFunctions()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and 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.

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

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

- - ### Constructor Detail

    - #### IPAPassRemoveUnusedFunctions

          public IPAPassRemoveUnusedFunctions()

  - ### 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

Copyright © 2021 The Apache Software Foundation. All rights reserved.