Finished talk draft

This commit is contained in:
Oliver Kennedy 2017-09-13 02:00:35 -04:00
parent de53c22c04
commit bf2cf49e7f
2 changed files with 47 additions and 22 deletions

View file

@ -44,9 +44,6 @@
<!--[if lt IE 9]>
<script src="../reveal.js-3.1.0/lib/js/html5shiv.js"></script>
<![endif]-->
<script src="../vega/vega.js"></script>
<script src="../vega/vega-lite.js"></script>
<script src="../vega/vega-embed.js"></script>
</head>
<body>
@ -652,7 +649,6 @@ public class TransitionMode extends Mode {
<ol>
<li class="fragment" style="margin-top: 30px">Which rewrite to apply?</li>
<li class="fragment" style="margin-top: 30px">Which data to rewrite?</li>
<li class="fragment" style="margin-top: 30px">How to rewrite safely?</li>
</ol>
</section>
@ -704,23 +700,6 @@ public class TransitionMode extends Mode {
<p><b>Option 1:</b> Crack($Array_4(1 \ldots 4)$)</p>
<p><b>Option 2:</b> Sort($Array_4(1 \ldots 4)$)</p>
</section>
<section>
<div id="predictions"></div>
<script>
vega.embed("#predictions", {
"data": {
"url": "results/predictions.json"
},
"mark": "point",
"encoding": {}
})
</script>
</section>
<section>
<p>How to prioritize rewrites?</p>
</section>
</section>
<section>
@ -733,8 +712,45 @@ public class TransitionMode extends Mode {
<li style="color: black;">Optimization Policy Discovery</li>
</ol>
</section>
<section>
<h1>Policy Discovery</h1>
<p>How to prioritize rewrites?</p>
</section>
<section>
<h3>Cost Model</h3>
<p><b>Array_N:</b> $O(N)$</p>
<p><b>Sorted_N:</b> $O(N\cdot \log(N))$</p>
<p><b>BT:</b> Negligible</p>
<p style="margin-top: 60px; font-weight: bold" class="fragment">Compute expected utility of a static state.</p>
</section>
<section>
<h3>Utility</h3>
<ol>
<li>Throughput</li>
<li>(Negative) Latency</li>
<li>Time spent with latency below 300ms</li>
</ol>
</section>
<section>
<h3>Heuristic: Sort Below Threshold Size</h3>
<img src="results/Predictions.png" height="500px">
<p class="fragment">Short-term value vs long-term performance.</p>
</section>
<section>
<h3>Deriving Policies</h3>
<ol>
<li>Start with a heuristic and optimzie parameters.<ul>
<li>e.g., Pick a threshold to sort at.</li></ul>
</li>
<li>Model the expected cumulative utility of each candidate rewrite<ul>
<li>e.g., Priority queue of Array nodes remaining.</li></ul>
</li>
</ol>
</section>
<!-- Policy Discovery and Optimization
- Purely Heuristic Design: Cracker Index / Transition Policy / Splay Trees
@ -745,6 +761,15 @@ public class TransitionMode extends Mode {
-->
</section>
<section>
<h3>Just-in-Time Data Structures</h3>
<ul>
<li>The Universal Instance Language can describe the intermediate state of a data structure in transition.</li>
<li>Localized, event-driven rewrites can emulate the behaviors of existing data structures and be hybridized.</li>
<li>Simulation + Cost-Analysis can be used to derive policies to drive direct rewrites.</li>
</ul>
<p class="fragment">Questions?</p>
</section>
</div></div>

Binary file not shown.

After

Width:  |  Height:  |  Size: 68 KiB