Preview

Труды Института системного программирования РАН

Расширенный поиск

Двухэтапная компиляция для оптимизации и развертывания программ на языках общего назначения

Аннотация

В статье описывается метод двухэтапной компиляции программ на языках общего назначения (Си/Си++), основанный на компиляторной системе LLVM и позволяющий проводить оптимизации программ с учетом профиля пользователя и особенностей его целевой машины, а также организовывать развертывание программ в облачном хранилище с дополнительной прозрачной оптимизацией и поиском дефектов программ. Особенностью метода является применимость к языкам общего назначения и использование общей компиляторной инфраструктуры на всех этапах оптимизации и развертывания программы.

Об авторе

Арутюн Аветисян
ИСП РАН
Россия


Список литературы

1. А. Белеванцев, Д. Журихин, Д. Мельник. Компиляция программ для современных архитектур. Труды Института системного программирования РАН, том 17, 2009 г. стр. 31-50.

2. Chris Lattner. LLVM: An Infrastructure for Multi-Stage Optimization.— Master’s thesis, Computer Science Dept., University of Illinois at Urbana-Champaign, Urbana, IL.

3. Компиляторная инфраструктура LLVM. http://llvm.org/

4. Portable Native Client Introduction. http://www.chromium.org/nativeclient/pnacl/building-and-testing-portable-native-client

5. А.И. Аветисян, К.Ю. Долгорукова, Ш.Ф. Курмангалеев. Динамическое профилирование программы для системы LLVM. Труды ИСП РАН том 21, 2011, cтр. 71-82.

6. Инфраструктура .NET. http://msdn.microsoft.com/en-us/netframework/aa496123

7. Компилятор NGEN. http://msdn.microsoft.com/en-us/library/6t9t5wcf.aspx

8. Stanley B. Lippman. Pure C++: Hello, C++/CLI. MSDN Magazine, Visual Studio 2005 Guided Tour, 2006. http://msdn.microsoft.com/en-us/magazine/cc163681.aspx

9. Арутюн Аветисян, Андрей Белеванцев, Алексей Бородин, Владимир Несов. Использование статического анализа для поиска уязвимостей и критических ошибок в исходном коде программ. Труды ИСП РАН том 21, 2011, cтр. 23-38.


Рецензия

Для цитирования:


Аветисян А. Двухэтапная компиляция для оптимизации и развертывания программ на языках общего назначения. Труды Института системного программирования РАН. 2012;22.

For citation:


Avetisyan A. Two-stage compilation for optimizing and deploying programs in general purpose languages. Proceedings of the Institute for System Programming of the RAS (Proceedings of ISP RAS). 2012;22. (In Russ.)



Creative Commons License
Контент доступен под лицензией Creative Commons Attribution 4.0 License.


ISSN 2079-8156 (Print)
ISSN 2220-6426 (Online)