Skip to content

[이동우] perf 성능분석보고서 #20

@dongwoLee

Description

@dongwoLee

Perf 성능 보고서

1)5가지의 스도쿠를 실행해본다 .

1)fxn 스도쿠 실행

$ gcc -O3 -std=c99 -o sudoku sudoku.c
$ ./sudoku
  1. imphasing 스도쿠 실행
$ cc -g -Wall solver.c graph.c graph_color.c -o solver 
$ ./solver 

실행 후 인풋으로 530070000600195000098000060800060003400803001700020006060000280000419005000080079
enter를 누르면 결과파일이 나온다.

  1. hmgle 스도쿠 실행
$  make
$ ./sudoku_solver -v hardest_sudoku.txt <- 여기선 인풋을 hardest_sudoku.txt에 입력했다
  1. rg3 실행
$ gcc -o sudoku sudoku.c
$./sudoku quiz 

quiz는 원래 제공 된 인풋파일이다

  1. geeksforgeeks 실행
$ g++ -o sudoku sudoku.c
$ ./sudoku 

2) perf record, stat를 사용하여 아래 event 뿐만아니라 여러 event로 초점을 바꿔가며 성능분석한다.

Input을 모든 소스에 넣어준다.
800000000
003600000
070090200
050007000
000045700
000100030
001000068
008500010
090000400

  1. fxn의 결과
$ perf stat -e cycles,branch-misses,cache-misses,cache-references,branch-instructions ./sudoku 118 233 246 327 359 372 425 467 554 565 577 641 683 731 786 798 838 845 881 929 974
$ perf record -e cycles,branch-misses,cache-misses,cache-references,branch-instructions ./sudoku 118 233 246 327 359 372 425 467 554 565 577 641 683 731 786 798 838 845 881 929 974
$perf report 

image
image

  1. Imphasing 결과
$ perf stat -e cycles,branch-misses,cache-misses,cache-references,branch-instructions ./solver
$ perf record -e cycles,branch-misses,cache-misses,cache-references,branch-instructions ./solver
$ perf report

image
image

  1. hmgle 실행
$ perf stat -e cycles,branch-misses,cache-misses,cache-references,branch-instructions ./sudoku_solver -v hardest_sudoku.txt
$ perf record -e cycles,branch-misses,cache-misses,cache-references,branch-instructions ./sudoku_solver -v hardest_sudoku.txt
$ perf report 

image
image

  1. rg3 실행
$perf stat -e cycles,branch-misses,cache-misses,cache-references,branch-instructions ./sudoku quiz
$perf record -e cycles,branch-misses,cache-misses,cache-references,branch-instructions ./sudoku quiz
$perf report

image
image

  1. geeksforgeeks
$ perf stat -e cycles,branch-misses,cache-misses,cache-references,branch-instructions ./sudoku
$ perf stat -e cycles,branch-misses,cache-misses,cache-references,branch-instructions ./sudoku
$ perf report

image
image

!!!각각의 두번째 사진에서는 항목별로 enter를 누르면 자세한 결과값을 볼 수 있다.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions