Интерфейс прикладного программирования производительности


В информатике Performance Application Programming Interface (PAPI) — переносимый интерфейс (в виде библиотеки ) к аппаратным счетчикам производительности на современных микропроцессорах . Он широко используется для сбора низкоуровневых показателей производительности (например , количества инструкций , тактов , промахов кэша ) компьютерных систем, работающих под управлением операционных систем UNIX / Linux .

PAPI предоставляет предопределенные аппаратные события высокого уровня, полученные от популярных процессоров, и прямой доступ к исходным событиям низкого уровня одного конкретного процессора. Также поддерживаются мультиплексирование счетчика и обработка переполнения .

Например, до 2010 года ядро Linux/x86 нужно было исправлять с помощью драйвера счетчиков мониторинга производительности ( ссылка perfctr ) для поддержки PAPI. Начиная с версии Linux 2.6.32 и выпуска PAPI 2010, PAPI может использовать существующую подсистему производительности в Linux, и поэтому для его работы больше не требуется драйвер вне дерева.

Поддерживаемые операционные системы и требования перечислены в документации официального репозитория INSTALL.txt .