Twitter #ye2013 Facebook RSS Log in
Recent compiler optimizations
By Reini Urban (rurban) from Dresden.pm
Date: Wednesday, 14 August 2013 15:20
Duration: 50 minutes
Target audience: Advanced
Language: English
You can find more information on the speaker's site:
- Abstract: http://blogs.perl.org/users/rurban/2012/09/optimizing-compiler-benchmarks-part-1.html
- Talk: https://github.com/rurban/perl-compiler/raw/release/ramblings/B-CC-yapceu2013.pdf
I prototyped possible perl optimizations in the experimental B::CC backend and came to some interesting results, which led to design decisions and plans for Perl.
Of course optimizations are depending on the benchmark, and B::CC is not stable enough to run all shootout benchmarks but the overall results showed that an optional type systems and parts thereof, such as no autovivification (sized arrays) or no magic were by far more important than other vm optimizations, such as method calls, inlining or compiler optimizations.
Loop unrolling proved to be worthwhile also, but I'm showing you a way how you can get ~2x faster array access by yourself.
- Alexey Molchanov (skyrider)
- Salvador Fandiño (salva)
- Alexey Surikov (ksurent)
- Wendy Van Dijk (woolfy)
- Tadeusz Sośnierz (tadzik)
- Michal Jurosz (mj41)
- Reini Urban (rurban)
- Morten Bjørnsvik
- Diego Kuperman (diegok)
- Maxim Yemelyanov (maxim4d)
- Carl Mäsak (masak)
- Steven Manschot (sman)
- Herbert Breunung (lichtkind)
- bulk 88
- Ennio Zarlenga (ennio)
- Denis Boyun
- Jean-Baptiste Mazon
- Pawel Szymczak (bebus)
- Oleksii Tsvietnov (vorakl)
- Tomasz Czepiel (tjmc)
- Pawel Krol (Gruby)
- Jan Seidl (JaSei)
- Stefan Seifert (Nine)
- Stanislav Chernogritskii
- Moritz Lenz (moritz)
- Vladimir Lettiev (crux)
- Tomáš Ciml
- Claes Jakobsson (claes)
- Alex Balhatchet (Kaoru)
- M W (diakopterXXX)
- Oleg Komarov (komarov)
- Brian McCauley (Nobull)
- Patrick Ringl (pari)
- J. Nick Koston (bdraco)
- Stanislav Poussep (Stas)
- Ivan Baidakou (basiliscos)
- Dmitry Kopytov
- Leandr Khaliullov (Leandr)
- Igor Mironov
- Sébastien Aperghis-Tramoni (maddingue)
- Dimitry Ivanov (ivanoff)
- Petya Kohts