Парсеры работают в компиляционное время, поэтому их производительность влияет на скорость компиляции. В этом разделе показаны измерения времени компиляции с помощью Metaparse. Измерения были сделаны на ноутбуке Linux с процессором Atom 1,6 ГГц и памятью 1 ГБ. Измерения проводились с использованием GCC 4.6.1 с -std=c++0x и без оптимизации. Скорость компиляции была измерена с помощью утилиты time.
Для измерения нетривиального парсера для измерения использовалась программа printf. Вот список вызовов printf и их скорость компиляции (user выход time):
Table 22.1. Printf compilation speed
type-safe printf call
Скорость компиляции (с)
Отсутствие компиляционного времени (только включает и пустой main)
Дополнительные измерения можно найти в следующей статье:
Zoltán Twistoláb, Ábel Sinkovics: Домен-специфический Языковая интеграция с вычислительной библиотекой генератора парсера In Eelco Visser, Jaakko Järvi, Editors, Proceedings of the nine international conference on Generative programming and component engineering (GPCE 2010). ACM, October 2010, pp. 137-146.
Статья Performance раздела The Boost C++ Libraries BoostBook Documentation Subset Chapter 22. Boost.Metaparse может быть полезна для разработчиков на c++ и boost.