summaryrefslogtreecommitdiffstats
path: root/content/zettel/1c2h.md
diff options
context:
space:
mode:
Diffstat (limited to 'content/zettel/1c2h.md')
-rw-r--r--content/zettel/1c2h.md37
1 files changed, 37 insertions, 0 deletions
diff --git a/content/zettel/1c2h.md b/content/zettel/1c2h.md
new file mode 100644
index 0000000..8c821e1
--- /dev/null
+++ b/content/zettel/1c2h.md
@@ -0,0 +1,37 @@
++++
+title = "Branch Prediction for Scheduling"
+date = "2022-05-11"
+author = "Yann Herklotz"
+tags = []
+categories = []
+backlinks = ["2b1d1", "1c2g"]
+forwardlinks = ["1c2f", "1c8", "2b1d1", "1c2h1"]
+zettelid = "1c2h"
++++
+
+Trace scheduling ([\#1c2f]) especially needs some heuristics to get the
+best performance out of your code. The best heuristics will be from
+profiling the binary, however, there are also some good static
+indicators for which branch is most likely to be taken. The following
+heuristics are taken from \[1\]. This is also tied to how if-conversion
+([\#1c8], [\#2b1d1]) should handle these heuristics.
+
+<div id="refs" class="references csl-bib-body" markdown="1">
+
+<div id="ref-ball93_branc_predic_free" class="csl-entry" markdown="1">
+
+<span class="csl-left-margin">\[1\]
+</span><span class="csl-right-inline">T. Ball and J. R. Larus, “Branch
+prediction for free,” in *Proceedings of the ACM SIGPLAN 1993 conference
+on programming language design and implementation*, in PLDI ’93. New
+York, NY, USA: Association for Computing Machinery, 1993, pp. 300–313.
+doi: [10.1145/155090.155119].</span>
+
+</div>
+
+</div>
+
+ [\#1c2f]: /zettel/1c2f
+ [\#1c8]: /zettel/1c8
+ [\#2b1d1]: /zettel/2b1d1
+ [10.1145/155090.155119]: https://doi.org/10.1145/155090.155119