diff options
author | Eduardo Julian | 2021-12-24 08:58:01 -0400 |
---|---|---|
committer | Eduardo Julian | 2021-12-24 08:58:01 -0400 |
commit | 63b45e09c5f5ceb59a48ed05cdc2d2c6cb038a7b (patch) | |
tree | 22545f6a3a5d8ad3c3a8d59136e0de3d03c69218 /documentation/bookmark/optimization | |
parent | fad9e5b073a9efe995421db1132f191f1db94725 (diff) |
Dusting off the pure-Lux JVM compiler machinery.
Diffstat (limited to '')
-rw-r--r-- | documentation/bookmark/optimization.md | 87 |
1 files changed, 44 insertions, 43 deletions
diff --git a/documentation/bookmark/optimization.md b/documentation/bookmark/optimization.md index 968fd5e26..3df2cd1ae 100644 --- a/documentation/bookmark/optimization.md +++ b/documentation/bookmark/optimization.md @@ -1,69 +1,70 @@ # Inlining -1. [Defunctionalization](https://en.wikipedia.org/wiki/Defunctionalization) +0. [Defunctionalization](https://en.wikipedia.org/wiki/Defunctionalization) # Hashing -1. [Fibonacci Hashing: The Optimization that the World Forgot (or: a Better Alternative to Integer Modulo)](https://probablydance.com/2018/06/16/fibonacci-hashing-the-optimization-that-the-world-forgot-or-a-better-alternative-to-integer-modulo/) +0. [Fibonacci Hashing: The Optimization that the World Forgot (or: a Better Alternative to Integer Modulo)](https://probablydance.com/2018/06/16/fibonacci-hashing-the-optimization-that-the-world-forgot-or-a-better-alternative-to-integer-modulo/) -# Arithmetic +# Arithmetic | Math -1. [Labor of Division (Episode I)](https://ridiculousfish.com/blog/posts/labor-of-division-episode-i.html) +0. [ensmallen: flexible C++ library for efficient numerical optimization](http://ensmallen.org/docs.html) +0. [Labor of Division (Episode I)](https://ridiculousfish.com/blog/posts/labor-of-division-episode-i.html) # Compilation -1. ["Outperforming Imperative with Pure Functional Languages" by Richard Feldman](https://www.youtube.com/watch?v=vzfy4EKwG_Y) -1. [CompilerGym: Making compiler optimizations accessible to all](https://ai.facebook.com/blog/compilergym-making-compiler-optimizations-accessible-to-all) -1. [Future Directions for Optimizing Compilers](https://arxiv.org/abs/1809.02161) +0. ["Outperforming Imperative with Pure Functional Languages" by Richard Feldman](https://www.youtube.com/watch?v=vzfy4EKwG_Y) +0. [CompilerGym: Making compiler optimizations accessible to all](https://ai.facebook.com/blog/compilergym-making-compiler-optimizations-accessible-to-all) +0. [Future Directions for Optimizing Compilers](https://arxiv.org/abs/1809.02161) # Pre-fetching -1. [Prefetching in Functional Languages](https://www.cl.cam.ac.uk/~tmj32/papers/docs/ainsworth20-ismm.pdf) +0. [Prefetching in Functional Languages](https://www.cl.cam.ac.uk/~tmj32/papers/docs/ainsworth20-ismm.pdf) # Partial evaluation -1. [AnyDSL - A Partial Evaluation Framework for Programming High-Performance Libraries](https://anydsl.github.io/) +0. [AnyDSL - A Partial Evaluation Framework for Programming High-Performance Libraries](https://anydsl.github.io/) # For the compiler -1. [Self Hosting a Million-Lines-Per-Second Parser](https://bjou-lang.org/blog/7-10-2019-self-hosting-a-million-lines-per-second-parser/7-10-2019-self-hosting-a-million-lines-per-second-parser.html) +0. [Self Hosting a Million-Lines-Per-Second Parser](https://bjou-lang.org/blog/7-10-2019-self-hosting-a-million-lines-per-second-parser/7-10-2019-self-hosting-a-million-lines-per-second-parser.html) # Reference -1. [Refterm Lecture Part 1 - Philosophies of Optimization](https://www.youtube.com/watch?v=pgoetgxecw8) -1. [Optimizations enabled by -ffast-math](https://kristerw.github.io/2021/10/19/fast-math/) -1. [Simple Code, High Performance](https://www.youtube.com/watch?v=Ge3aKEmZcqY) -1. [Negotiating with Compilers](https://en.algorithmica.org/hpc/analyzing-performance/compilation/) -1. [Do Low-level Optimizations Matter?](https://cantrip.org/sortfast.html) -1. [Inline caching](https://bernsteinbear.com/blog/inline-caching/) -1. [Weird and Wonderful Division Tricks](https://saml98.github.io/jekyll/update/2020/02/21/weird-division.htmls) -1. [Towards a Domain-Extensible Compiler: Optimizingan Image Processing Pipeline on Mobile CPUs](https://thok.eu/publications/2021/cgo.pdf) -1. [Compiler Detection of Function Call Side Effects](https://citeseerx.ist.psu.edu/viewdoc/download;jsessionid=B3D92D05C88C3D9C165785594350C169?doi=10.1.1.70.2096&rep=rep1&type=pdf) -1. [A Language for Describing Optimization Strategies](https://arxiv.org/abs/2002.02268) -1. https://docs.google.com/presentation/d/1tpeJZFObkeick4CF-mx0L3CeCgvT15B96aJeRpxEPcE/preview?slide=id.p -1. https://www.quora.com/What-is-the-future-of-optimizing-compilers?share=1 -1. https://advancedweb.hu/2016/05/27/jvm_jit_optimization_techniques/ &&& https://advancedweb.hu/2016/06/28/jvm_jit_optimization_techniques_part_2/ -1. http://www.scala-native.org/en/latest/blog/interflow.html -1. https://github.com/roman01la/closure-compiler-handbook -1. http://hubicka.blogspot.com/2018/06/gcc-8-link-time-and-interprocedural.html -1. [CppCon 2017: Matt Godbolt “What Has My Compiler Done for Me Lately? Unbolting the Compiler's Lid”](https://www.youtube.com/watch?v=bSkpMdDe4g4) -1. http://duriansoftware.com/joe/Optimizing-is-multiple-checks-with-modular-arithmetic.html? -1. https://www.ericsson.com/research-blog/outperforming-state-art-compilers-unison/ -1. http://compileroptimizations.com/index.html -1. https://polly.llvm.org/ -1. http://paulcavallaro.com/blog/optimizing-function-placement-with-call-chain-clustering/ -1. http://leto.net/docs/C-optimization.php -1. https://engineering.purdue.edu/~eigenman/ECE663/Handouts/bacon-compiling4hpc.pdf -1. http://venge.net/graydon/talks/CompilerTalk-2019.pdf -1. http://www2.imm.dtu.dk/pubdb/views/edoc_download.php/6620/pdf/imm6620.pdf -1. [Lost in translation: Exposing hidden compiler optimization opportunities](https://arxiv.org/pdf/1903.11397.pdf) -1. https://kristerw.blogspot.com/2019/04/how-llvm-optimizes-geometric-sums.html -1. https://nfrechette.github.io/2019/05/08/sign_flip_optimization/ -1. https://grin-tech.github.io/ -1. [Loop Optimizations in LLVM - Michael Kruse](https://www.youtube.com/watch?v=oAPgGYr8T3Y) -1. [Don’t think, just defunctionalize](https://www.joachim-breitner.de/blog/778-Don%E2%80%99t_think%2C_just_defunctionalize) +0. [Refterm Lecture Part 1 - Philosophies of Optimization](https://www.youtube.com/watch?v=pgoetgxecw8) +0. [Optimizations enabled by -ffast-math](https://kristerw.github.io/2021/10/19/fast-math/) +0. [Simple Code, High Performance](https://www.youtube.com/watch?v=Ge3aKEmZcqY) +0. [Negotiating with Compilers](https://en.algorithmica.org/hpc/analyzing-performance/compilation/) +0. [Do Low-level Optimizations Matter?](https://cantrip.org/sortfast.html) +0. [Inline caching](https://bernsteinbear.com/blog/inline-caching/) +0. [Weird and Wonderful Division Tricks](https://saml98.github.io/jekyll/update/2020/02/21/weird-division.htmls) +0. [Towards a Domain-Extensible Compiler: Optimizingan Image Processing Pipeline on Mobile CPUs](https://thok.eu/publications/2021/cgo.pdf) +0. [Compiler Detection of Function Call Side Effects](https://citeseerx.ist.psu.edu/viewdoc/download;jsessionid=B3D92D05C88C3D9C165785594350C169?doi=10.1.1.70.2096&rep=rep1&type=pdf) +0. [A Language for Describing Optimization Strategies](https://arxiv.org/abs/2002.02268) +0. https://docs.google.com/presentation/d/1tpeJZFObkeick4CF-mx0L3CeCgvT15B96aJeRpxEPcE/preview?slide=id.p +0. https://www.quora.com/What-is-the-future-of-optimizing-compilers?share=1 +0. https://advancedweb.hu/2016/05/27/jvm_jit_optimization_techniques/ &&& https://advancedweb.hu/2016/06/28/jvm_jit_optimization_techniques_part_2/ +0. http://www.scala-native.org/en/latest/blog/interflow.html +0. https://github.com/roman01la/closure-compiler-handbook +0. http://hubicka.blogspot.com/2018/06/gcc-8-link-time-and-interprocedural.html +0. [CppCon 2017: Matt Godbolt “What Has My Compiler Done for Me Lately? Unbolting the Compiler's Lid”](https://www.youtube.com/watch?v=bSkpMdDe4g4) +0. http://duriansoftware.com/joe/Optimizing-is-multiple-checks-with-modular-arithmetic.html? +0. https://www.ericsson.com/research-blog/outperforming-state-art-compilers-unison/ +0. http://compileroptimizations.com/index.html +0. https://polly.llvm.org/ +0. http://paulcavallaro.com/blog/optimizing-function-placement-with-call-chain-clustering/ +0. http://leto.net/docs/C-optimization.php +0. https://engineering.purdue.edu/~eigenman/ECE663/Handouts/bacon-compiling4hpc.pdf +0. http://venge.net/graydon/talks/CompilerTalk-2019.pdf +0. http://www2.imm.dtu.dk/pubdb/views/edoc_download.php/6620/pdf/imm6620.pdf +0. [Lost in translation: Exposing hidden compiler optimization opportunities](https://arxiv.org/pdf/1903.11397.pdf) +0. https://kristerw.blogspot.com/2019/04/how-llvm-optimizes-geometric-sums.html +0. https://nfrechette.github.io/2019/05/08/sign_flip_optimization/ +0. https://grin-tech.github.io/ +0. [Loop Optimizations in LLVM - Michael Kruse](https://www.youtube.com/watch?v=oAPgGYr8T3Y) +0. [Don’t think, just defunctionalize](https://www.joachim-breitner.de/blog/778-Don%E2%80%99t_think%2C_just_defunctionalize) # JavaScript -1. [Javascript Array.push is 945x faster than Array.concat](https://dev.to/uilicious/javascript-array-push-is-945x-faster-than-array-concat-1oki) +0. [Javascript Array.push is 945x faster than Array.concat](https://dev.to/uilicious/javascript-array-push-is-945x-faster-than-array-concat-1oki) |