Щоб переглянути усереднені дані по всіх запусках XHprof, веб розробнику необхідно створити файл total.php в директорії нашого html-інтерфейса, який буде парсити ідентифікатори запусків і перенаправить нас саме на усереднений звіт:
php
if (!$_GET['namespace']) {
exit('there is no namespace in $_GET parameter.');
}
$namespace = (string)$_GET['namespace'];
$path = ini_get('xhprof.output_dir');
$dir = dir($path);
$pattern = "/^([0-9a-z]{13})\.{$namespace}$/i";
while ($file = $dir->read()) {
if (preg_match($pattern, $file, $matches)) {
$files[] = $matches[1];
}
}
header(sprintf('Location: /xhprof_html?source=%s&run=%s', $namespace, implode(',', (array)$files)));
Тепер при переході на <xhprof_domain>/total.php?namespace=<name> нам буде надана інформація про всі запуски XHprof для конкретного namespace.
В нашому тесті ми отримали наступні результати (клікабільно):

Drupal 6 Drupal 7 Pressflow
Нижче наведені скріншоти (клікабільно) з графічного інтерфейсу. Так, все складно і напевно нічого корисного, але виглядає гарно, така собі схема роботи Друпала зсередини =)

Drupal 6 Drupal 7 PressFlo
Дані графічного інтерфейсу краще використовувати у випадку профілювання невеликої ділянки коду.
Висновки
Як бачимо, найкращі результати показав Pressflow (середній час генерації сторінки 109 мілісекунд), на другому місці практично без відриву - Drupal 6.20 (114 мс) і далеко на третьому місці Drupal 7.0 (238 мс).
Хоча, насправді, в бойовому режимі Pressflow покаже набагато кращі результати в порівнянні з базовим Друпалом.
Також цікавий факт - з графічних звітів видно, що в 7-му Друпалі немає "критичних" точок (тобто відсутні червоні елементи).
Так, експеримент повторювався тричі на різних серверах і Drupal 7 всюди з більш як подвійним відривом позаду...