Интерактивный интерфейс компиляции - Interactive Compilation Interface
Эта статья слишком полагается на Рекомендации к основные источники.Август 2020 г.) (Узнайте, как и когда удалить этот шаблон сообщения) ( |
В Интерактивный интерфейс компиляции (ICI) - это система плагинов с независимым от компилятора высокоуровневым и зависимым от компилятора API низкого уровня для преобразования существующих компиляторов черного ящика в совместные модульные интерактивные наборы инструментов. Он был разработан Григорий Фурсин в течение МИЛЕПОСТ проект.[1][2] Инфраструктура ICI действует как промежуточный интерфейс между компилятором и настраиваемыми пользователем плагинами. Он открывает и повторно использует инфраструктуру компилятора производственного качества, чтобы обеспечить анализ программ и инструментарий, детальную оптимизацию программ, простое прототипирование новых разработок и исследовательских идей, избегая создания новых инструментов компиляции с нуля. Например, он используется в МИЛЕПОСТ GCC для автоматизации проектирования компилятора и архитектуры и оптимизации программ на основе статистического анализа и машинного обучения, а также для прогнозирования прибыльной оптимизации для сокращения времени выполнения программы, размера кода и времени компиляции.
События
ICI теперь доступен в основной сети GCC с версии 4.5[3]
- Сайт совместной разработки
- Расширения Google Summer of Code'2009: позволяет выполнять детальную оптимизацию программ, включая многогранные преобразования, адаптацию во время выполнения на уровне функций и коллективную оптимизацию]
- Список рассылки разработчиков
Загрузки
- ICI 2.0 - выпущен для GCC в мае 2009 г.
- ICI 1.0 - выпущен для GCC в 2008 году.
- Бета ICI - разработан для GCC в 2006–2008 гг.
- Бета ICI - разработан для компиляторов Open64 / PathScale в 2004–2006 гг.
Рекомендации
- ^ Григорий Фурсин. Коллективная инициатива настройки: автоматизация и ускорение разработки и оптимизации вычислительных систем. Труды саммита GCC'09, Монреаль, Канада, июнь 2009 г.связь )
- ^ Григорий Фурсин, Юрий Кашников, Абдул Вахид Мемон, Збигнев Чамски, Оливье Темам, Мирча Намолару, Элад Йом-Тов, Билха Мендельсон, Аял Закс, Эрик Куртуа, Франсуа Боден, Фил Барнард, Элтон Эштон, Эдвин Бонилья, Джон , Майкл О'Бойл. Milepost gcc: самонастраивающийся компилятор с поддержкой машинного обучения Международный журнал параллельного программирования, Том 39, Выпуск 3, стр. 296-327, июнь 2011 г. (связь )
- ^ «Плагины GCC». Получено 2017-05-30.