В МТИ нашли мощные средства оптимизации параллельных программ



Источник: MIT


12:07 01.02.2017 |   3032



Оптимизация популярного компилятора позволила ускорить параллельный код на 10-25%.

Ученые Массачусетского технологического института подготовили доклад о разработанных ими методах оптимизации промежуточных этапов работы компиляторов, направленной на ускорение параллельного кода. Как объясняют исследователи, такой код плохо оптимизируются существующими компиляторами, так как для управления им требуется генерация большого объема вспомогательного кода, который игнорируется на этапе оптимизации.

По их словам, идея оптимизации до создания кода управления параллелизмом существует уже давно, но от ее реализации отказывались, предполагая, что придется целиком перерабатывать компиляторы. Но в МТИ пришли к выводу, что это не так — из 4 млн строк кодовой базы универсального компилятора LLVM пришлось изменить только 6 тыс. строк. При этом, как отмечают ученые, использовались механизмы, уже отработанные на оптимизации последовательного кода.

Исследователи убедились в действенности своих идей на программах на языке Cilk — Си с добавлением нескольких команд, позволяющих программисту отмечать участки кода, который можно выполнять параллельно: тесты показали, что программы, скомилированные доработанной версией LLVM, ускоряются на 10-25%. По словам ученых, они легко могут реализовать фронтенд LLVM для любого другого языка, поддерживающего механизмы распараллеливания подобно Cilk.


Теги: Разработка ПО конкурентные вычисления МТИ
На ту же тему: