Preview

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

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

Метод инструментирования кода на этапе компиляции для направленной отладки оптимизирующих преобразований

https://doi.org/10.15514/ISPRAS-2015-27(6)-1

Аннотация

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

Об авторе

Д. А. Максименков
ПАО «МЦСТ»,
Россия
г. Москва, Ленинский пр-т, д. 51


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

1. Standart Perfomance Evaluation Corporation. The SPEC Benchmark Suites http://www.spec.org

2. Valgrind http://www.valgrind.org

3. AddressSanitizer (ASan) http://www.chromium.org/developers/testing/addresssanitizer

4. Максименков Д.А., Рогов Р.Ю. Применение метода инструментирования тестовых программ при отладке оптимизирующих компиляторов. Вопросы радиоэлектроники, 2010, вып. 3, стр. 50-61

5. Standard for Binary Floating-Point Arithmetic IEEE-754. http://www.ieee.org

6. D.A. Lamb, Construction of a Peephole Optimizer. Software – Practice & Experience, 11/ 639-647 – 1981.

7. Michael Jind Pointer analysis: Haven't we solved this proplem yet http://www.cs.cornell.edu/courses/cs711/2005fa/papers/hind-paste01.pdf

8. Amer Divan, Kathryn S.McKinley, J.Eliot B.Moss. Type-Based Alias Analysis http://web.cs.ucla.edu/~palsberg/tba/papers/diwan-mckinley-moss-pldi98.pdf

9. Дроздов А.Ю, Владиславлев В.Е. Межпроцедурный анализ указателей. Информационные технологии, 2005, приложение No 2, стр 35-42

10. Волконский В.Ю. Оптимизирующие компиляторы для архитектуры с явным параллелизмом команд и аппаратной поддержкой двоичной совместимости. Информационные технологии и вычислительные системы - 2004 — Вып.3

11. Галазин А.Б, Степаненков, А.М., Ступаченко, Е.В. Программная предварительная подкачка кода для микропроцессора Эльбрус-3М. Информационные технологии, 2007, вып. 11.


Рецензия

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


Максименков Д.А. Метод инструментирования кода на этапе компиляции для направленной отладки оптимизирующих преобразований. Труды Института системного программирования РАН. 2015;27(6):7-20. https://doi.org/10.15514/ISPRAS-2015-27(6)-1

For citation:


Maksimenkov D.A. Compile the Code Instrumentation Technique for Selective Debugging of Optimizing Transformations. Proceedings of the Institute for System Programming of the RAS (Proceedings of ISP RAS). 2015;27(6):7-20. (In Russ.) https://doi.org/10.15514/ISPRAS-2015-27(6)-1



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


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