Какой поток перфект использует?

Кажется, что это могло бы быть известной ошибкой: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=599129

Обходное решение предлагает явно добавить -display :0.0 (замена Вашим дисплеем по мере необходимости):

$ gunuplot -geometry -100-100 -display :0.0 -p -e 'locat "pqpss.plt"'

4
23.05.2017, 15:40
2 ответа

Более старые версии перфекта ~2.6.x

Я использую версию перфекта: 2.6.35.14-106.

Получите весь вывод

Я не имею -x включите мою систему Fedora 14, таким образом, я не уверен, является ли это Вашей фактической проблемой или нет. Я займусь расследованиями в более новой системе Ubuntu 12.10 позже, но это работало на меня:

$ (perf stat -ecache-misses ls ) > stat.log 2>&1
$
$ more stat.log 
maccheck.txt
sample.txt
stat.log

 Performance counter stats for 'ls':

              13209  cache-misses            

        0.018231264  seconds time elapsed

Я только хочу вывод перфекта

Вы могли попробовать это, вывод от ls будет перенаправлен к /dev/null. Выходная форма perf (и STDERR и STDOUT), переходит к файлу, stat.log.

$ (perf stat -ecache-misses ls > /dev/null ) > stat.log 2>&1
[saml@grinchy 89576]$ more stat.log 

 Performance counter stats for 'ls':

              12949  cache-misses            

        0.022831281  seconds time elapsed

Более новые версии перфекта 3.x +

Я использую версию перфекта: 3.5.7

Получение только вывода перфекта

С более новыми версиями perf существуют выделенные опции для управления, куда сообщения отправляются. У Вас есть выбор любой отправки их в файл через -o|--output опция. Просто дайте любой из тех переключателей имя файла для получения вывода.

-o file, --output file
    Print the output into the designated file.

Альтернатива должна перенаправить вывод к альтернативному дескриптору файла, 3, например. Все, что необходимо сделать, является прямым этот альтернативный дескриптор файла до потоковой передачи к нему.

--log-fd
    Log output to fd, instead of stderr. Complementary to --output, and 
    mutually exclusive with it. --append may be used here. Examples: 
       3>results perf stat --log-fd 3  — $cmd
       -or-
       3>>results perf stat --log-fd 3 --append — $cmd

Таким образом, если мы хотели собраться perf вывод для ls команда Вы могли использовать эту команду:

$ 3>results.log perf stat --log-fd 3 ls > /dev/null
$ 
$ more results.log

 Performance counter stats for 'ls':

          2.498964 task-clock                #    0.806 CPUs utilized          
                 0 context-switches          #    0.000 K/sec                  
                 0 CPU-migrations            #    0.000 K/sec                  
               258 page-faults               #    0.103 M/sec                  
           880,752 cycles                    #    0.352 GHz                    
           597,809 stalled-cycles-frontend   #   67.87% frontend cycles idle   
           652,087 stalled-cycles-backend    #   74.04% backend  cycles idle   
         1,261,424 instructions              #    1.43  insns per cycle        
                                             #    0.52  stalled cycles per insn [55.31%]
     <not counted> branches                
     <not counted> branch-misses           

       0.003102139 seconds time elapsed

Если Вы используете --append версия затем контент нескольких команд будет добавлена к тому же файлу журнала, results.log в нашем случае.

Установка перфекта

Установка довольно тривиальна:

Fedora

$ yum install perf

Ubuntu/Debian

$ apt-get install linux-tool-common linux-tools

Ссылки

7
27.01.2020, 20:50
  • 1
    нет, все еще не перенаправляя в файл. Я хочу перенаправить вывод перфекта в файл, не мою команду. –  Dervin Thunk 06.09.2013, 01:20
  • 2
    @DervinThunk - Вы только хотите вывод perfs, корректный? –  slm♦ 06.09.2013, 01:21
  • 3
    Это корректно. Но я думаю, что нашел его... существует - добавляют опцию в перфекте –  Dervin Thunk 06.09.2013, 01:23
  • 4
    @DervinThunk - посмотрите обновления. На какой версии/ОС Вы? У меня нет этого также. –  slm♦ 06.09.2013, 01:24

Это - то, что наконец работало на меня:

3>results perf stat -x, -ecache-misses --log-fd 3 --append -- ./a.out

согласно man perf-stat, log-fd флаг.

1
27.01.2020, 20:50

Теги

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