Linux получает отношение удачного обращения в кэш ЦП

Рассмотрите использование rdiff-резервного-копирования вместо rsync+cp. Это обрабатывает старые копии файлов автоматически, таким образом, Вам не нужно к CP.

От rdiff-резервной страницы:

"Целевой каталог заканчивается копия исходного каталога, но дополнительный реверс diffs хранится в специальном подкаталоге того целевого каталога, таким образом, можно все еще восстановить файлы, потерянные некоторое время назад".

0
задан 15 August 2013 в 14:40
2 ответа

Хорошо, я украл еще несколько ресурсов, и похоже, что для счетчиков попаданий / промахов в кэше ЦП мы должны использовать трассировку отдельных процессов или pid или tid. Другими словами, perf и oprofile.

Например, perf stat дает это.

 Performance counter stats for 'ls':

      3.905621 task-clock                #    0.831 CPUs utilized
             1 context-switches          #    0.000 M/sec
             0 CPU-migrations            #    0.000 M/sec
           267 page-faults               #    0.068 M/sec
       379,003 cycles                    #    0.097 GHz                     [24.55%]
     1,332,419 stalled-cycles-frontend   #  351.56% frontend cycles idle    [36.65%]
 <not counted> stalled-cycles-backend
       833,177 instructions              #    2.20  insns per cycle
                                         #    1.60  stalled cycles per insn
       580,745 branches                  #  148.695 M/sec                   [95.65%]
        37,799 branch-misses             #    6.51% of all branches         [71.09%]

   0.004697863 seconds time elapsed

Oprofile дает аналогичный результат, но perf довольно хорош, imo.

Другое дело, что для банков памяти numastat дает вам еще один уровень детализации.

$ numastat
                       node0
numa_hit                74263001
numa_miss                      0
numa_foreign                   0
interleave_hit             15459
local_node              74263001
other_node                     0

Да, эта система является системой с одним узлом.

1
ответ дан 4 December 2019 в 18:04

В этом вопросе/ответе они говорят об инструментах Linux для профилирования cache-miss:

perf:

$ perf stat ./yourapp
$ perf stat -B dd if=/dev/zero of=/dev/null count=1000000

valgrind:

$ valgrind ./yourapp

а также времени, которое подсчитывает страницу ошибки в теории:

$ time -v YourProgram.exe

в моей системе он не принимает флаг -v, я должен проверить, почему

0
ответ дан 7 May 2020 в 11:33

Теги

Похожие вопросы