+7 (812) 670-9095
Обратная связьEnglish
Главная → О компании → Новости
Полезный совет
БП 3.0 Такси: Как получить быстрый доступ к документам, справочникам и настройкам программы? Подробнее
RSSВерсия для печати

Отчет о посещении международной выставки 2017 European LLVM Developers Meeting в Германии

28 апреля 2017

27 и 28 марта в кампусе кафедры компьютерных наук университета Saarland, (Saarbrücken, Германия) прошла конференция 2017 European LLVM Developers Meeting.

2017 European LLVM Developers Meeting — это форум разработчиков LLVM, Clang, LLDB и других LLVM-проектов, посвященный технологиям LLVM и их использованию, уникальная площадка для обмена опытом и новыми идеями.


Отчет о посещении международной выставки 2017 European LLVM Developers Meeting в Германии


Наши коллеги, Алексей Спирков, руководитель отдела наукоемких технологий, и Илья Каретин, архитектор проектов, приняли участие в этой конференции. Мы пообщались с Алексеем и Ильей, узнали о том, как прошла конференция и что нового происходит в области LLVM.


- Алексей, Илья, прежде чем перейти к сути, напомните, пожалуйста, что такое LLVM?
Илья: Если совсем кратко, LLVM (Low Level Virtual Machine) — универсальная система анализа, трансформации и оптимизации программ, реализующая виртуальную машину с RISC-подобными инструкциями. Может использоваться как оптимизирующий компилятор для различных архитектур либо для интерпретации. LLVM, по сути, не является компилятором сам по себе, а скорее предоставляет инфраструктуру для его создания. Используя эту инфраструктуру, был создан компилятор Clang, на данный момент неотрывно связанный с LLVM и развивающийся параллельно. Сегодня, когда мы говорим LLVM, подразумеваем Clang, и наоборот. А разработка нового компилятора на базе LLVM обычно означает портирование на новую платформу компилятора Clang.

- Получается, что LLVM — некий бэк-энд компилятора?
Илья: Да, можно и так сказать, фронт-эндом которого выступает Clang. Стартовав в 2000 году как исследовательский проект Университета Иллинойса, на сегодняшний день LLVM — стандарт платформы для создания новых компиляторов и продолжает свое активное развитие.

- Расскажите, как пришла мысль посетить эту конференцию?
Алексей: Мы занимаемся компиляторами более 15 лет, разработали собственный универсальный компилятор UCC, который позволяет быстро создавать компиляторы под целевые платформы заказчика. Одновременно мы создаем и все остальные компоненты набора средств разработки (SDK): ассемблер, линкер, отладчик и др. На базе этого универсального решения выпущено несколько коммерческих компиляторов под различные платформы. А сейчас мы усиливаем свои компетенции, и как раз занимаемся компиляторами на основе LLVM — набора компиляторных технологий, упакованных в удобную модульную форму. У нас есть несколько проектов по разработке полных LLVM-компиляторов, это то, чем мы занимаемся каждый день, отсюда и желание узнать о новых идеях и разработках, поделиться своими знаниями.

- Очень интересно. Теперь к сути. Поскольку интересно буквально все, давайте начнем с аудитории. Тема актуальна, было много участников?
Илья: Аудитория демонстрировала, что интерес, безусловно, есть, хотя тема, действительно, узкоспециальная. Было более 250 участников.


- Это уже седьмая конференция LLVM-коммьюнити, проведенная на территории Европы?
Алексей: Да. Традиционно такие крупные встречи проходят дважды в год: весной — в Европе (Германия, Испании, Великобритании и т.д.), осенью — в США, Калифорния (Сан-Хосе, Сан-Франциско). Следующая конференция пройдет в Сан-Хосе (Калифорния, США) 18-19 октября 2017. Это будет уже 11 встреча в США.


Отчет о посещении международной выставки 2017 European LLVM Developers Meeting в Германии


- Расскажите, пожалуйста, о представленных докладах.
Илья: На конференции было представлено более 40 докладов, которые проходили в параллельных потоках, каждый мог выбрать наиболее интересные выступления и посетить именно их. Подробная программа конференции.


- Впечатляет. А если конкретнее, о чем именно шла речь?
Алексей: Много говорили о будущем LLVM. Было много технических сессий от представителей Apple, ARM, Intel, Oracle, Ericsson, Sony Interactive Entertainment (SIE) и других компаний, с описанием реальных кейсов. Были стендовые доклады и соревнования студенческих работ. Очень здорово, что большинство докладов основывалось на примерах применения LLVM в прикладных областях, в конкретных, практических задачах реальных клиентов.


2017 European LLVM Developers 2017 European LLVM Developers


- То есть среди спикеров были в основном опытные разработчики LLVM? Те, у кого уже есть реальный опыт ведения серьезных проектов?
Алексей: Да, таких было большинство, но на эту конференцию приглашают и студентов со всей Европы для презентации своих компиляторных проектов. Это было очень интересным дополнением к основной программе. То, что делают российские студенты, мы видим и слышим, а вот посмотреть на работы студентов и аспирантов из Кембриджа, Оксфорда и еще ряда серьезных европейских университетов, было весьма любопытно.

- Какой доклад показался самым интересным?
Илья: Сложно выделить один. Среди самых интересных и полезных для нас — доклады про параллельные вычисления и суперкомпьютеры. Кроме заявленных тем, в них раскрывались некоторые особенности LLVM (например, outlining), которые встречаются в наших проектах, а также идеи развития LLVM-технологий, с прогнозами, чего стоит ожидать от новых версий LLVM для уже написанного нами кода. Кроме того, порадовал критический подход спикеров: нам было важно услышать обоснованные замечания о некоторых положениях стандарта С++11 с хорошей доказательной базой, т.к. обычно показывают развитие стандарта языка только с положительной стороны, но негативные стороны не менее важны, и мы уже учитываем их в своей работе. На эту тему даже удалось немного подискутировать с докладчиком.


2017 European LLVM Developers Meeting2017 European LLVM Developers Meeting

- Ваши рекомендации будущим участникам конференции.
Илья: Я рекомендую заранее ознакомиться с форматами сессий BoF («Birds of a Feather») и Hack lab. Эти неформальные дискуссии размещены в расписании конференции наравне с докладами. Отправляясь на Hack lab, предполагаешь оказаться на практическом занятии, похожем на семинар, хакатон или консультацию эксперта. Но оказалось, что и BoF, и Hack lab по формату больше похожи на клубы по интересам: неформальное общение разработчиков, без модерирования, без жесткой привязки к заранее заявленной теме. Если у вас нет четкого понимания ожидаемого результата от такого общения — лучше не тратить своё время на BoF и Hack lab, но, возможно, это субъективное мнение. Также постоянные участники конференции говорят, что на американской встрече разработчиков LLVM представляются более серьезные и интересные доклады, чем на европейской, но лично подтвердить это не могу. Точно могу сказать, что рекомендую посетить следующую LLVM-конференцию, которая, кстати, как раз пройдет в США. До встречи!


Алексей Спирков, руководитель отдела наукоемких технологий АстроСофт Илья Каретин, архитектор проектов АстроСофт