Методы машинного обучения в области программной инженерии
Synopsis
В докладе будет рассказано о современных встраиваемых процессорах ARC EM/HS, актуальных задачах разработки инструментов программирования и компиляторов в этой области, и возможностях применения методов машинного обучения, в том числе для автоматизированной настройки эвристик компиляторов на основе системы LLVM.
Современные компиляторы представляют собой сложные системы с большим количеством опций оптимизаций, позволяющих получать более эффективный машинный код. Множество отдельных оптимизационных проходов содержат сложные параметризованные эвристические алгоритмы, приближенно решающие NP-полные задачи генерации машинного кода.
Существуют важные области, где производительность приложений и размер машинного кода играют ключевую роль. Примерами могут служить разработка ПО для встраиваемых систем с ограниченным объемом оперативной памяти, цифровой обработки сигналов, аудио кодеры, распознавание изображений и голосовое управление, устройства хранения данных, системы реального времени.
Для этих областей автоматическая настройка эвристик оптимизационных проходов компилятора позволяет достигнуть лучшего сочетания производительности и размера кода приложений, в итоге снижая стоимость устройств или увеличивая время их автономной работы.Докладчики: Сергей Якушин и Елена Лепилкина
Время начала семинара: 19:00