Несоответствие между количеством образцов в записи производительности и статистикой производительности?Linux

Ответить Пред. темаСлед. тема
Anonymous
 Несоответствие между количеством образцов в записи производительности и статистикой производительности?

Сообщение Anonymous »

Насколько я понимаю, статистика производительности отражает истинные значения событий PMU во время выполнения процесса и может рассматриваться как основная истина. Напротив, perf Record выбирает выборки на основе указанного sample_ period, беря выборку, когда количество событий превышает sample_ period. В настоящее время я использую запись производительности -c X, где я тестировал значения X 10, 100, 1000 и 10000. Результаты оказались неожиданными: когда X=10, предполагаемое количество событий из записи производительности значительно ниже истинного, в то время как для больших значений X предполагаемое количество событий ближе к истинному, но все же показывает значительную ошибку.
Что я хотел бы знать Вот откуда возникает ошибка в расчетном количестве событий из записи perf -c. Если взять в качестве примера запись perf -c 1000, когда количество определенного события превышает 1000, берется выборка, поэтому окончательное количество выборок должно быть ground_truth_count/1000. Более того, по мере уменьшения -c X количество выборок должно увеличиваться. Однако оказывается, что фактическое количество образцов не соответствует теоретическому значению.
Я использую устройство Raspberry Pi 5B, и я запускаю программу C для чтения столбцов матрица при использовании записи perf для получения количества загрузок кэша L1D.

Код: Выделить всё

for (j = 0; j < N; ++j) {
for (i = 0; i < M; ++i) {
sum += matrix[i][j];
}
}
Количество загрузок кэша L1D, полученное с помощью статистики производительности, составляет 9 205 171 526. Предполагаемое количество загрузок кэша L1D с использованием записи perf -c 10000 составляет 6 608 030 000; при использовании записи perf -c 100 расчетное количество составит 153 300 100; и используя запись perf -c 10, расчетное количество составит 14 859 150. Я также заметил, что и -c 100, и -c 10 дали количество выборок в 1 миллион, тогда как -c 10000 имело количество выборок 660 КБ. Кажется, perf ограничил максимальное количество точек выборки.

Подробнее здесь: https://stackoverflow.com/questions/790 ... -perf-stat
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Linux»