blob: 3c4f00e58746154dd94e865650b76394a2e8f090 [file]
<!DOCTYPE HTML>
<!-- NewPage -->
<html lang="en">
<head>
<!-- Generated by javadoc -->
<title>org.apache.sysds.hops.ipa (Apache SystemDS 3.2.0-SNAPSHOT API)</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" type="text/css" href="../../../../../stylesheet.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../jquery/jquery-ui.min.css" title="Style">
<link rel="stylesheet" type="text/css" href="../../../../../jquery-ui.overrides.css" title="Style">
<script type="text/javascript" src="../../../../../script.js"></script>
<script type="text/javascript" src="../../../../../jquery/jszip/dist/jszip.min.js"></script>
<script type="text/javascript" src="../../../../../jquery/jszip-utils/dist/jszip-utils.min.js"></script>
<!--[if IE]>
<script type="text/javascript" src="../../../../../jquery/jszip-utils/dist/jszip-utils-ie.min.js"></script>
<![endif]-->
<script type="text/javascript" src="../../../../../jquery/jquery-3.6.0.min.js"></script>
<script type="text/javascript" src="../../../../../jquery/jquery-ui.min.js"></script>
</head>
<body>
<script type="text/javascript"><!--
try {
if (location.href.indexOf('is-external=true') == -1) {
parent.document.title="org.apache.sysds.hops.ipa (Apache SystemDS 3.2.0-SNAPSHOT API)";
}
}
catch(err) {
}
//-->
var pathtoroot = "../../../../../";
var useModuleDirectories = true;
loadScripts(document, 'script');</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
<header role="banner">
<nav role="navigation">
<div class="fixedNav">
<!-- ========= START OF TOP NAVBAR ======= -->
<div class="topNav"><a id="navbar.top">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.top" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.top.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../index.html">Overview</a></li>
<li class="navBarCell1Rev">Package</li>
<li>Class</li>
<li><a href="package-use.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_top">
<li><a href="../../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<ul class="navListSearch">
<li><label for="search">SEARCH:</label>
<input type="text" id="search" value="search" disabled="disabled">
<input type="reset" id="reset" value="reset" disabled="disabled">
</li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_top");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<a id="skip.navbar.top">
<!-- -->
</a></div>
<!-- ========= END OF TOP NAVBAR ========= -->
</div>
<div class="navPadding">&nbsp;</div>
<script type="text/javascript"><!--
$('.navPadding').css('padding-top', $('.fixedNav').css("height"));
//-->
</script>
</nav>
</header>
<main role="main">
<div class="header">
<h1 title="Package" class="title">Package&nbsp;org.apache.sysds.hops.ipa</h1>
</div>
<div class="contentContainer">
<ul class="blockList">
<li class="blockList">
<table class="typeSummary">
<caption><span>Class Summary</span><span class="tabEnd">&nbsp;</span></caption>
<tr>
<th class="colFirst" scope="col">Class</th>
<th class="colLast" scope="col">Description</th>
</tr>
<tbody>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="FunctionCallGraph.html" title="class in org.apache.sysds.hops.ipa">FunctionCallGraph</a></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="FunctionCallSizeInfo.html" title="class in org.apache.sysds.hops.ipa">FunctionCallSizeInfo</a></th>
<td class="colLast">
<div class="block">Auxiliary data structure to hold function call summaries in terms
of information about number of function calls, consistent dimensions,
consistent sparsity, and dimension-preserving functions.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="InterProceduralAnalysis.html" title="class in org.apache.sysds.hops.ipa">InterProceduralAnalysis</a></th>
<td class="colLast">
<div class="block">This Inter Procedural Analysis (IPA) serves two major purposes:
1) Inter-Procedure Analysis: propagate statistics from calling program into
functions and back into main program.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="IPAPass.html" title="class in org.apache.sysds.hops.ipa">IPAPass</a></th>
<td class="colLast">
<div class="block">Base class for all IPA passes.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="IPAPassApplyStaticAndDynamicHopRewrites.html" title="class in org.apache.sysds.hops.ipa">IPAPassApplyStaticAndDynamicHopRewrites</a></th>
<td class="colLast">
<div class="block">This rewrite applies static hop dag and statement block
rewrites such as constant folding and branch removal
in order to simplify statistic propagation.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="IPAPassCompressionWorkloadAnalysis.html" title="class in org.apache.sysds.hops.ipa">IPAPassCompressionWorkloadAnalysis</a></th>
<td class="colLast">
<div class="block">This rewrite obtains workload summaries for all hops candidates amenable for compression as a basis for
workload-aware compression planning.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="IPAPassEliminateDeadCode.html" title="class in org.apache.sysds.hops.ipa">IPAPassEliminateDeadCode</a></th>
<td class="colLast">
<div class="block">This rewrite eliminates unnecessary sub-DAGs that produce
transient write outputs which are never consumed subsequently.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="IPAPassFlagFunctionsRecompileOnce.html" title="class in org.apache.sysds.hops.ipa">IPAPassFlagFunctionsRecompileOnce</a></th>
<td class="colLast">
<div class="block">This rewrite marks functions with loops as recompile once
in order to reduce recompilation overhead.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="IPAPassFlagNonDeterminism.html" title="class in org.apache.sysds.hops.ipa">IPAPassFlagNonDeterminism</a></th>
<td class="colLast">&nbsp;</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="IPAPassForwardFunctionCalls.html" title="class in org.apache.sysds.hops.ipa">IPAPassForwardFunctionCalls</a></th>
<td class="colLast">
<div class="block">This rewrite forwards a function call to a function with a simple
function call that only consumes function parameters and literals
into the original call location.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="IPAPassInlineFunctions.html" title="class in org.apache.sysds.hops.ipa">IPAPassInlineFunctions</a></th>
<td class="colLast">
<div class="block">This rewrite inlines single statement block functions, which have fewer
operations than an internal threshold.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="IPAPassPropagateReplaceLiterals.html" title="class in org.apache.sysds.hops.ipa">IPAPassPropagateReplaceLiterals</a></th>
<td class="colLast">
<div class="block">This rewrite propagates and replaces literals into functions
in order to enable subsequent rewrites such as branch removal.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="IPAPassRemoveConstantBinaryOps.html" title="class in org.apache.sysds.hops.ipa">IPAPassRemoveConstantBinaryOps</a></th>
<td class="colLast">
<div class="block">This rewrite identifies binary operations with constant matrices
such as X * ones, where ones might be created as a vector of ones
before a loop.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="IPAPassRemoveUnnecessaryCheckpoints.html" title="class in org.apache.sysds.hops.ipa">IPAPassRemoveUnnecessaryCheckpoints</a></th>
<td class="colLast">
<div class="block">This rewrite identifies and removes unnecessary checkpoints, i.e.,
persisting of Spark RDDs into a given storage level.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="IPAPassRemoveUnusedFunctions.html" title="class in org.apache.sysds.hops.ipa">IPAPassRemoveUnusedFunctions</a></th>
<td class="colLast">
<div class="block">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.</div>
</td>
</tr>
<tr class="rowColor">
<th class="colFirst" scope="row"><a href="IPAPassReplaceEvalFunctionCalls.html" title="class in org.apache.sysds.hops.ipa">IPAPassReplaceEvalFunctionCalls</a></th>
<td class="colLast">
<div class="block">This rewrite applies static hop dag and statement block
rewrites such as constant folding and branch removal
in order to simplify statistic propagation.</div>
</td>
</tr>
<tr class="altColor">
<th class="colFirst" scope="row"><a href="IPAPassRewriteFederatedPlan.html" title="class in org.apache.sysds.hops.ipa">IPAPassRewriteFederatedPlan</a></th>
<td class="colLast">
<div class="block">This rewrite generates a federated execution plan by estimating and setting costs and the FederatedOutput values of
all relevant hops in the DML program.</div>
</td>
</tr>
</tbody>
</table>
</li>
</ul>
</div>
</main>
<footer role="contentinfo">
<nav role="navigation">
<!-- ======= START OF BOTTOM NAVBAR ====== -->
<div class="bottomNav"><a id="navbar.bottom">
<!-- -->
</a>
<div class="skipNav"><a href="#skip.navbar.bottom" title="Skip navigation links">Skip navigation links</a></div>
<a id="navbar.bottom.firstrow">
<!-- -->
</a>
<ul class="navList" title="Navigation">
<li><a href="../../../../../index.html">Overview</a></li>
<li class="navBarCell1Rev">Package</li>
<li>Class</li>
<li><a href="package-use.html">Use</a></li>
<li><a href="package-tree.html">Tree</a></li>
<li><a href="../../../../../deprecated-list.html">Deprecated</a></li>
<li><a href="../../../../../index-all.html">Index</a></li>
<li><a href="../../../../../help-doc.html">Help</a></li>
</ul>
</div>
<div class="subNav">
<ul class="navList" id="allclasses_navbar_bottom">
<li><a href="../../../../../allclasses.html">All&nbsp;Classes</a></li>
</ul>
<div>
<script type="text/javascript"><!--
allClassesLink = document.getElementById("allclasses_navbar_bottom");
if(window==top) {
allClassesLink.style.display = "block";
}
else {
allClassesLink.style.display = "none";
}
//-->
</script>
<noscript>
<div>JavaScript is disabled on your browser.</div>
</noscript>
</div>
<a id="skip.navbar.bottom">
<!-- -->
</a></div>
<!-- ======== END OF BOTTOM NAVBAR ======= -->
</nav>
<p class="legalCopy"><small>Copyright &#169; 2023 <a href="https://www.apache.org/">The Apache Software Foundation</a>. All rights reserved.</small></p>
</footer>
</body>
</html>