Профілювання (інформатика)

Профілювання - збір характеристик роботи програми, таких як час виконання окремих фрагментів (зазвичай підпрограм), число вірно передвіщених умовних переходів, число кеш промахів і т. д. Інструмент, що використовується для аналізу роботи, називають профілювальником. Зазвичай виконується спільно з оптимізацією програми.

Характеристики можуть бути апаратними (час) або викликані програмним забезпеченням (функціональний запит). Інструментальні засоби аналізу програми надзвичайно важливі для того, щоб зрозуміти поведінку програми. Проектувальники ПО потребують таких інструментальних засобах, щоб оцінити, як добре виконана робота. Програмісти потребують інструментальних засобах, щоб проаналізувати їх програми і ідентифікувати критичні ділянки програми.

Це часто використовується, щоб визначити, як довго виконуються певні частини програми, як часто вони виконуються, або генерувати граф викликів (Call Graph). Зазвичай ця інформація використовується, щоб ідентифікувати ті ділянки програми, які працюють найбільше. Ці трудомісткі ділянки можуть бути оптимізовані, щоб виконуватися швидше.

Також виділяють аналіз покриття (Code Coverage) - процес виявлення невикористовуваних ділянок коду за допомогою, наприклад, багаторазового запуску програми.