Skip to content

30/05/2020, Peter Sovietov

Использование рекомендательных систем для автонастройки компилятора, с учетом собранной ранее информации. Результаты внушают оптимизм. A Collaborative Filtering Approach for the Automatic Tuning of Compiler Optimisations https://arxiv.org/pdf/2005.04092.pdf

#autotuning #optimization #compiler #machinelearning


20/05/2020

A Language for Describing Optimization Strategies Пример использования стратегического переписывания термов в духе Stratego. В статье демонстрируются оптимизирующие преобразования на Scala, для GPU и других ускорителей. https://arxiv.org/pdf/2002.02268.pdf

#optimization


12/05/2020

Основные работы по методу насыщения равенствами (equality saturation)

Denali: A Goal-directed Superoptimizer (в работе описывается применение E-Graphs для задач оптимизации программ) https://courses.cs.washington.edu/courses/cse501/15sp/papers/joshi.pdf

Equality Saturation: A New Approach to Optimization (вместо E-Graphs используются PEG/E-PEG, поддерживающие управляющие конструкции) https://www.cs.cornell.edu/~ross/publications/eqsat/

“Доказательство свойств функциональных программ методом насыщения равенствами” (диссертация на русском языке) https://keldysh.ru/council/1/2017-grechanik/diss.pdf

#synth #optimization


11/05/2020

Работы по практическому применению передовых подходов E-Graphs (дедуктивный синтез программ) и Equality Saturation (решение для проблемы phase ordering).

Особенно интересно, что для серьезных примеров использования взяты области, далекие от традиционных целевых представлений компиляторов. Это показывает, что компиляторные технологии имеют более широкое применение, чем иногда принято думать.

Carpentry Compiler https://grail.cs.washington.edu/projects/carpentrycompiler/files/CarpentryCompiler.pdf

Synthesizing Structured CAD Models with Equality Saturation and Inverse Transformations https://jamesrwilcox.com/szalinski.pdf

Для работы с E-Graphs авторами разработана библиотека egg (есть веб-демо).

egg: Easy, Efficient, and Extensible E-graphs https://arxiv.org/pdf/2004.03082.pdf

https://github.com/mwillsey/egg

#optimization