์˜์–ดํ”„๋ž‘์Šค์–ด์ŠคํŽ˜์ธ์–ด

Ad


์˜จ์›์Šค ํŒŒ๋น„์ฝ˜

arm-linux-androideabi-gprof - ํด๋ผ์šฐ๋“œ์—์„œ์˜ ์˜จ๋ผ์ธ

Ubuntu Online, Fedora Online, Windows ์˜จ๋ผ์ธ ์—๋ฎฌ๋ ˆ์ดํ„ฐ ๋˜๋Š” MAC OS ์˜จ๋ผ์ธ ์—๋ฎฌ๋ ˆ์ดํ„ฐ๋ฅผ ํ†ตํ•ด OnWorks ๋ฌด๋ฃŒ ํ˜ธ์ŠคํŒ… ์ œ๊ณต์—…์ฒด์—์„œ arm-linux-androideabi-gprof๋ฅผ ์‹คํ–‰ํ•˜์„ธ์š”.

Ubuntu Online, Fedora Online, Windows ์˜จ๋ผ์ธ ์—๋ฎฌ๋ ˆ์ดํ„ฐ ๋˜๋Š” MAC OS ์˜จ๋ผ์ธ ์—๋ฎฌ๋ ˆ์ดํ„ฐ์™€ ๊ฐ™์€ ์—ฌ๋Ÿฌ ๋ฌด๋ฃŒ ์˜จ๋ผ์ธ ์›Œํฌ์Šคํ…Œ์ด์…˜ ์ค‘ ํ•˜๋‚˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ OnWorks ๋ฌด๋ฃŒ ํ˜ธ์ŠคํŒ… ์ œ๊ณต์—…์ฒด์—์„œ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” arm-linux-androideabi-gprof ๋ช…๋ น์ž…๋‹ˆ๋‹ค.

ํ”„๋กœ๊ทธ๋žจ:

์ด๋ฆ„


gprof - ํ˜ธ์ถœ ๊ทธ๋ž˜ํ”„ ํ”„๋กœํ•„ ๋ฐ์ดํ„ฐ ํ‘œ์‹œ

๊ฐœ์š”


gprof [ -[abcDhilLrsTvwxyz] ] [ -[ACEEfFJnNOpPqQZ][name] ]
[ -NS dirs ] [ -NS[NUM] ] [ -k ์—์„œ๋ถ€ํ„ฐ ]
[ -๋ฏธ๋””์—„ ์ตœ์†Œ ๊ฐœ์ˆ˜ ] [ -NS ์ง€๋„ ํŒŒ์ผ ] [ -NS ํ…Œ์ด๋ธ” ๊ธธ์ด ]
[ --[no-]์ฃผ์„์ด ์žˆ๋Š” ์†Œ์Šค[=name] ]
[ --[no-]์‹คํ–‰ ํšŸ์ˆ˜[=name] ]
[ --[no-]ํ‰๋ฉด ํ”„๋กœํ•„[=name] ] [ --[no-]๊ทธ๋ž˜ํ”„[=name] ]
[ --[no-]์‹œ๊ฐ„=name] [ --๋ชจ๋“  ๋ผ์ธ ] [ --brief ]
[ --๋””๋ฒ„๊ทธ[=์ˆ˜ํ‰] ] [ --ํ•จ์ˆ˜ ์ˆœ์„œ ]
[ --ํŒŒ์ผ ์ˆœ์„œ ์ง€๋„ ํŒŒ์ผ ] [ --๋””๋ ‰ํ† ๋ฆฌ-๊ฒฝ๋กœ=dirs ]
[ --display-unused-functions ] [ -- ํŒŒ์ผ ํ˜•์‹ =name ]
[ --file-info ] [ --help ] [ --line ] [ --inline-ํŒŒ์ผ ์ด๋ฆ„ ]
[ --์ตœ์†Œ ๊ฐœ์ˆ˜=n ] [ --no-static ] [ --print-path ]
[ --separate-files ] [ --static-call-graph ] [ --sum ]
[ --ํ…Œ์ด๋ธ” ๊ธธ์ด=๋ Œ ] [ --์ „ํ†ต ] [ -- ๋ฒ„์ „ ]
[ --๋„ˆ๋น„=n ] [ --๋น„ํ•จ์ˆ˜ ๋ฌด์‹œ ]
[ --demangle[=STYLE] ] [ --no-demangle ]
[--์™ธ๋ถ€ ๊ธฐํ˜ธ ํ…Œ์ด๋ธ”=์ด๋ฆ„]
[ ์ด๋ฏธ์ง€ ํŒŒ์ผ ] [ ํ”„๋กœํ•„ ํŒŒ์ผ ... ]

๊ธฐ์ˆ 


"gprof"๋Š” C, Pascal ๋˜๋Š” Fortran77 ํ”„๋กœ๊ทธ๋žจ์˜ ์‹คํ–‰ ํ”„๋กœํ•„์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. ์˜ ํšจ๊ณผ
ํ˜ธ์ถœ๋œ ๋ฃจํ‹ด์€ ๊ฐ ํ˜ธ์ถœ์ž์˜ ํ”„๋กœํ•„์— ํ†ตํ•ฉ๋ฉ๋‹ˆ๋‹ค. ํ”„๋กœํ•„ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค
ํ˜ธ์ถœ ๊ทธ๋ž˜ํ”„ ํ”„๋กœํ•„ ํŒŒ์ผ(gmon.out default)๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ํ”„๋กœ๊ทธ๋žจ์— ์˜ํ•ด ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค.
๋กœ ์ปดํŒŒ์ผ -ํŽ˜์ด์ง€ "cc", "pc" ๋ฐ "f77" ์˜ต์…˜. NS -ํŽ˜์ด์ง€ ์˜ต์…˜๋„ ๋งํฌ
ํ”„๋กœํŒŒ์ผ๋ง์„ ์œ„ํ•ด ์ปดํŒŒ์ผ๋œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋ฃจํ‹ด์˜ ๋ฒ„์ „. "Gprof"๋Š” ์ฃผ์–ด์ง„ ์ฝ๊ธฐ
๊ฐ์ฒด ํŒŒ์ผ(๊ธฐ๋ณธ๊ฐ’์€ "a.out")์ด๋ฉฐ ํ•ด๋‹น ๊ธฐํ˜ธ ํ…Œ์ด๋ธ” ๊ฐ„์˜ ๊ด€๊ณ„๋ฅผ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.
๋ฐ ํ˜ธ์ถœ ๊ทธ๋ž˜ํ”„ ํ”„๋กœํ•„ gmon.out. ๋‘˜ ์ด์ƒ์˜ ํ”„๋กœํ•„ ํŒŒ์ผ์ด ์ง€์ •๋œ ๊ฒฝ์šฐ
"gprof" ์ถœ๋ ฅ์€ ์ฃผ์–ด์ง„ ํ”„๋กœํ•„ ํŒŒ์ผ์— ์žˆ๋Š” ํ”„๋กœํ•„ ์ •๋ณด์˜ ํ•ฉ๊ณ„๋ฅผ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.

gcc 2.95.x ๋˜๋Š” 3.0์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐ”์ด๋„ˆ๋ฆฌ๋ฅผ ์ปดํŒŒ์ผํ•˜๋Š” ๊ฒฝ์šฐ ๋‹ค์Œ์„ ์ถ”๊ฐ€ํ•ด์•ผ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
-fprofile-ํ˜ธ ํ˜ธ์ถœ ๊ทธ๋ž˜ํ”„๊ฐ€ ์ œ๋Œ€๋กœ ํ‘œ์‹œ๋˜๋„๋ก ์ปดํŒŒ์ผ ๋ช…๋ น์ค„์—
gmon.out์— ์ €์žฅ๋ฉ๋‹ˆ๋‹ค.

"Gprof"๋Š” ๊ฐ ๋ฃจํ‹ด์— ์†Œ์š”๋œ ์‹œ๊ฐ„์„ ๊ณ„์‚ฐํ•ฉ๋‹ˆ๋‹ค. ๋‹ค์Œ์œผ๋กœ ์ด ์‹œ๊ฐ„๋“ค์€
ํ˜ธ์ถœ ๊ทธ๋ž˜ํ”„์˜ ๊ฐ€์žฅ์ž๋ฆฌ๋ฅผ ๋”ฐ๋ผ ์ „ํŒŒ๋ฉ๋‹ˆ๋‹ค. ์ฃผ๊ธฐ๊ฐ€ ๋ฐœ๊ฒฌ๋˜๊ณ 
์ฃผ๊ธฐ๋Š” ์ฃผ๊ธฐ์˜ ์‹œ๊ฐ„์„ ๊ณต์œ ํ•˜๊ธฐ ์œ„ํ•ด ๋งŒ๋“ค์–ด์ง‘๋‹ˆ๋‹ค.

๋ถ„์„์—์„œ ์—ฌ๋Ÿฌ ํ˜•ํƒœ์˜ ์ถœ๋ ฅ์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

XNUMXD๋ดํƒˆ์˜ ํ”Œ๋žซ ์œค๊ณฝ ํ”„๋กœ๊ทธ๋žจ์ด ๊ฐ ๊ธฐ๋Šฅ์— ์–ผ๋งˆ๋‚˜ ๋งŽ์€ ์‹œ๊ฐ„์„ ์†Œ๋น„ํ–ˆ๋Š”์ง€ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.
ํ•ด๋‹น ํ•จ์ˆ˜๊ฐ€ ํ˜ธ์ถœ๋œ ํšŸ์ˆ˜์ž…๋‹ˆ๋‹ค. ์–ด๋–ค ๊ธฐ๋Šฅ์ด ๊ฐ€์žฅ ๋งŽ์ด ์†Œ๋ชจ๋˜๋Š”์ง€ ์•Œ๊ณ  ์‹ถ๋‹ค๋ฉด
์ฃผ๊ธฐ, ์—ฌ๊ธฐ์— ๊ฐ„๋žตํ•˜๊ฒŒ ์„ค๋ช…๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

XNUMXD๋ดํƒˆ์˜ ์ „ํ™” ๊ทธ๋ž˜ํ”„ ๊ฐ ํ•จ์ˆ˜์— ๋Œ€ํ•ด ์–ด๋–ค ํ•จ์ˆ˜๊ฐ€ ํ˜ธ์ถœํ–ˆ๋Š”์ง€, ๋‹ค๋ฅธ ํ•จ์ˆ˜๋Š” ๋ฌด์—‡์ธ์ง€ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.
๊ทธ๊ฒƒ์€ ํ˜ธ์ถœ, ๊ทธ๋ฆฌ๊ณ  ๋ช‡ ๋ฒˆ. ์— ์†Œ์š”๋œ ์‹œ๊ฐ„์— ๋Œ€ํ•œ ์ถ”์ •๋„ ์žˆ์Šต๋‹ˆ๋‹ค.
๊ฐ ๊ธฐ๋Šฅ์˜ ์„œ๋ธŒ๋ฃจํ‹ด ์ด๊ฒƒ์€ ๋‹น์‹ ์ด ์‹œ๋„ํ•  ์ˆ˜ ์žˆ๋Š” ์žฅ์†Œ๋ฅผ ์ œ์•ˆํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค
๋งŽ์€ ์‹œ๊ฐ„์„ ์‚ฌ์šฉํ•˜๋Š” ํ•จ์ˆ˜ ํ˜ธ์ถœ์„ ์ œ๊ฑฐํ•ฉ๋‹ˆ๋‹ค.

XNUMXD๋ดํƒˆ์˜ ์ฃผ์„์ด ๋‹ฌ๋ฆฐ ๋ชฉ๋ก์€ ๋‹ค์Œ๊ณผ ๊ฐ™์ด ๋ ˆ์ด๋ธ”์ด ์ง€์ •๋œ ํ”„๋กœ๊ทธ๋žจ ์†Œ์Šค ์ฝ”๋“œ์˜ ๋ณต์‚ฌ๋ณธ์ž…๋‹ˆ๋‹ค.
ํ”„๋กœ๊ทธ๋žจ์˜ ๊ฐ ํ–‰์ด ์‹คํ–‰๋œ ํšŸ์ˆ˜.

์˜ต์…˜


์ด ์˜ต์…˜์€ "gprof"๊ฐ€ ์ƒ์„ฑํ•ด์•ผ ํ•˜๋Š” ์—ฌ๋Ÿฌ ์ถœ๋ ฅ ํ˜•์‹์„ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.

์ด๋Ÿฌํ•œ ์˜ต์…˜ ์ค‘ ๋Œ€๋ถ€๋ถ„์€ ์„ ํƒ ์‚ฌํ•ญ์ž…๋‹ˆ๋‹ค. ์‹ฌ์ŠคํŽ™ ํฌํ•จํ•  ๊ธฐ๋Šฅ์„ ์ง€์ •ํ•˜๊ฑฐ๋‚˜
์ œ์™ธ ๋œ. ์ด๋Ÿฌํ•œ ์˜ต์…˜์€ ์„œ๋กœ ๋‹ค๋ฅธ symspec์„ ์‚ฌ์šฉํ•˜์—ฌ ์—ฌ๋Ÿฌ ๋ฒˆ ์ง€์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
๊ธฐํ˜ธ ์ง‘ํ•ฉ์„ ํฌํ•จํ•˜๊ฑฐ๋‚˜ ์ œ์™ธํ•ฉ๋‹ˆ๋‹ค.

์ด๋Ÿฌํ•œ ์˜ต์…˜์„ ์ง€์ •ํ•˜๋ฉด ๊ธฐ๋ณธ๊ฐ’(-p -q), ํ”Œ๋žซ ํ”„๋กœํŒŒ์ผ์„ ์ธ์‡„ํ•ฉ๋‹ˆ๋‹ค.
๋ชจ๋“  ๊ธฐ๋Šฅ์— ๋Œ€ํ•œ ๊ทธ๋ž˜ํ”„ ๋ถ„์„์„ ํ˜ธ์ถœํ•ฉ๋‹ˆ๋‹ค.

"-NS[์‹ฌ์ŠคํŽ™]"
"--์ฃผ์„์ด ์žˆ๋Š” ์†Œ์Šค[=์‹ฌ์ŠคํŽ™]"
XNUMXD๋ดํƒˆ์˜ -A ์˜ต์…˜์€ "gprof"๊ฐ€ ์ฃผ์„์ด ๋‹ฌ๋ฆฐ ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ์ธ์‡„ํ•˜๋„๋ก ํ•ฉ๋‹ˆ๋‹ค. ๋งŒ์•ฝ์— ์‹ฌ์ŠคํŽ™ ์ง€์ •๋˜๊ณ ,
์ผ์น˜ํ•˜๋Š” ๊ธฐํ˜ธ์— ๋Œ€ํ•ด์„œ๋งŒ ์ถœ๋ ฅ์„ ์ธ์‡„ํ•ฉ๋‹ˆ๋‹ค.

"-NS"
"--์งง์€"
๊ฒฝ์šฐ -b ์˜ต์…˜์ด ์ฃผ์–ด์ง€๋ฉด "gprof"๋Š”
ํ‘œ์— ์žˆ๋Š” ๋ชจ๋“  ํ•„๋“œ์˜ ์˜๋ฏธ๋ฅผ ์„ค๋ช…ํ•˜์‹ญ์‹œ์˜ค. ์˜๋„ํ•˜๋Š” ๊ฒฝ์šฐ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.
์ถœ๋ ฅ๋ฌผ์„ ์ธ์‡„ํ•˜๊ฑฐ๋‚˜ ๊ด‘๊ณ  ๋ฌธ๊ตฌ๋ฅผ ๋ณด๋Š” ๋ฐ ์ง€์ณค์Šต๋‹ˆ๋‹ค.

"-์”จ[์‹ฌ์ŠคํŽ™]"
"--์‹คํ–‰ ํšŸ์ˆ˜[=์‹ฌ์ŠคํŽ™]"
XNUMXD๋ดํƒˆ์˜ -C ์˜ต์…˜์€ "gprof"๊ฐ€ ํ•จ์ˆ˜์˜ ์ง‘๊ณ„์™€ ํšŸ์ˆ˜๋ฅผ ์ธ์‡„ํ•˜๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.
๊ฐ๊ฐ ๋ถˆ๋ ธ๋‹ค. ๋งŒ์•ฝ์— ์‹ฌ์ŠคํŽ™ ๊ฐ€ ์ง€์ •๋˜๋ฉด ์ผ์น˜ํ•˜๋Š” ๊ธฐํ˜ธ์— ๋Œ€ํ•ด์„œ๋งŒ ์ง‘๊ณ„๋ฅผ ์ธ์‡„ํ•ฉ๋‹ˆ๋‹ค.

ํ”„๋กœํŒŒ์ผ ๋ฐ์ดํ„ฐ ํŒŒ์ผ์— ๊ธฐ๋ณธ ๋ธ”๋ก ์ˆ˜ ๋ ˆ์ฝ”๋“œ๊ฐ€ ํฌํ•จ๋œ ๊ฒฝ์šฐ -l ์„ ํƒ๊ถŒ,
์™€ ํ•จ๊ป˜ -C, ๊ธฐ๋ณธ ๋ธ”๋ก ์‹คํ–‰ ํšŸ์ˆ˜๊ฐ€ ์ง‘๊ณ„๋˜๊ณ  ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

"-๋‚˜๋Š”"
"--ํŒŒ์ผ ์ •๋ณด"
XNUMXD๋ดํƒˆ์˜ -i ์˜ต์…˜์€ "gprof"๊ฐ€ ํ”„๋กœํ•„ ๋ฐ์ดํ„ฐ์— ๋Œ€ํ•œ ์š”์•ฝ ์ •๋ณด๋ฅผ ํ‘œ์‹œํ•˜๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.
ํŒŒ์ผ์„ ์ข…๋ฃŒํ•œ ๋‹ค์Œ ์ข…๋ฃŒํ•ฉ๋‹ˆ๋‹ค. ํžˆ์Šคํ† ๊ทธ๋žจ ์ˆ˜, ํ˜ธ์ถœ ๊ทธ๋ž˜ํ”„ ์ˆ˜, ๊ธฐ๋ณธ ๋ธ”๋ก ์ˆ˜
๊ธฐ๋ก์ด ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.

"-NS ๋””๋ ‰ํ† ๋ฆฌ"
"--๋””๋ ‰ํ† ๋ฆฌ-๊ฒฝ๋กœ=๋””๋ ‰ํ† ๋ฆฌ"
XNUMXD๋ดํƒˆ์˜ -I ์˜ต์…˜์€ ์†Œ์Šค ํŒŒ์ผ์„ ์ฐพ์„ ๊ฒ€์ƒ‰ ๋””๋ ‰ํ† ๋ฆฌ ๋ชฉ๋ก์„ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.
ํ™˜๊ฒฝ ๋ณ€์ˆ˜ GPROF_PATH ์ด ์ •๋ณด๋ฅผ ์ „๋‹ฌํ•˜๋Š” ๋ฐ์—๋„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์‚ฌ์šฉ ๋œ
์ฃผ๋กœ ์ฃผ์„์ด ๋‹ฌ๋ฆฐ ์†Œ์Šค ์ถœ๋ ฅ์šฉ์ž…๋‹ˆ๋‹ค.

"-์ œ์ด[์‹ฌ์ŠคํŽ™]"
"--no-annotated-source[=์‹ฌ์ŠคํŽ™]"
XNUMXD๋ดํƒˆ์˜ -J ์˜ต์…˜์„ ์‚ฌ์šฉํ•˜๋ฉด "gprof"๊ฐ€ ์ฃผ์„์ด ๋‹ฌ๋ฆฐ ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ์ธ์‡„ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋งŒ์•ฝ์— ์‹ฌ์ŠคํŽ™ is
์ง€์ •๋œ ๊ฒฝ์šฐ "gprof"๋Š” ์ฃผ์„์ด ๋‹ฌ๋ฆฐ ์†Œ์Šค๋ฅผ ์ธ์‡„ํ•˜์ง€๋งŒ ์ผ์น˜ํ•˜๋Š” ๊ธฐํ˜ธ๋Š” ์ œ์™ธํ•ฉ๋‹ˆ๋‹ค.

"-์—˜"
"--์ธ์‡„ ๊ฒฝ๋กœ"
์ผ๋ฐ˜์ ์œผ๋กœ ์†Œ์Šค ํŒŒ์ผ ์ด๋ฆ„์€ ๊ฒฝ๋กœ ๊ตฌ์„ฑ ์š”์†Œ๊ฐ€ ์–ต์ œ๋œ ์ƒํƒœ๋กœ ์ธ์‡„๋ฉ๋‹ˆ๋‹ค. NS -L
์˜ต์…˜์€ "gprof"๊ฐ€ ์†Œ์Šค ํŒŒ์ผ ์ด๋ฆ„์˜ ์ „์ฒด ๊ฒฝ๋กœ ์ด๋ฆ„์„ ์ธ์‡„ํ•˜๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.
์ด๋ฏธ์ง€ ํŒŒ์ผ์˜ ์‹ฌ๋ณผ๋ฆญ ๋””๋ฒ„๊น… ์ •๋ณด์—์„œ ๊ฒฐ์ •๋˜๋ฉฐ
์ปดํŒŒ์ผ๋Ÿฌ๊ฐ€ ํ˜ธ์ถœ๋œ ๋””๋ ‰ํ† ๋ฆฌ.

"-NS[์‹ฌ์ŠคํŽ™]"
"--ํ‰๋ฉด ํ”„๋กœํ•„[=์‹ฌ์ŠคํŽ™]"
XNUMXD๋ดํƒˆ์˜ -p ์˜ต์…˜์€ "gprof"๊ฐ€ ํ”Œ๋žซ ํ”„๋กœํŒŒ์ผ์„ ์ธ์‡„ํ•˜๋„๋ก ํ•ฉ๋‹ˆ๋‹ค. ๋งŒ์•ฝ์— ์‹ฌ์ŠคํŽ™ ์ง€์ •๋˜๋ฉด ์ธ์‡„
์ผ์น˜ํ•˜๋Š” ๊ธฐํ˜ธ์— ๋Œ€ํ•ด์„œ๋งŒ ํ”Œ๋žซ ํ”„๋กœํŒŒ์ผ.

"-NS[์‹ฌ์ŠคํŽ™]"
"--no-flat-profile[=์‹ฌ์ŠคํŽ™]"
XNUMXD๋ดํƒˆ์˜ -P ์˜ต์…˜์€ "gprof"๊ฐ€ ํ”Œ๋žซ ํ”„๋กœํŒŒ์ผ ์ธ์‡„๋ฅผ ์–ต์ œํ•˜๋„๋ก ํ•ฉ๋‹ˆ๋‹ค. ๋งŒ์•ฝ์— ์‹ฌ์ŠคํŽ™ is
์ง€์ •๋œ ๊ฒฝ์šฐ "gprof"๋Š” ํ‰๋ฉด ํ”„๋กœํ•„์„ ์ธ์‡„ํ•˜์ง€๋งŒ ์ผ์น˜ํ•˜๋Š” ๊ธฐํ˜ธ๋Š” ์ œ์™ธํ•ฉ๋‹ˆ๋‹ค.

"-NS[์‹ฌ์ŠคํŽ™]"
"--๊ทธ๋ž˜ํ”„[=์‹ฌ์ŠคํŽ™]"
XNUMXD๋ดํƒˆ์˜ -q ์˜ต์…˜์€ "gprof"๊ฐ€ ํ˜ธ์ถœ ๊ทธ๋ž˜ํ”„ ๋ถ„์„์„ ์ธ์‡„ํ•˜๋„๋ก ํ•ฉ๋‹ˆ๋‹ค. ๋งŒ์•ฝ์— ์‹ฌ์ŠคํŽ™ is
์ง€์ •๋œ ๊ฒฝ์šฐ ์ผ์น˜ํ•˜๋Š” ๊ธฐํ˜ธ ๋ฐ ํ•ด๋‹น ์ž์‹์— ๋Œ€ํ•ด์„œ๋งŒ ํ˜ธ์ถœ ๊ทธ๋ž˜ํ”„๋ฅผ ์ธ์‡„ํ•ฉ๋‹ˆ๋‹ค.

"-NS[์‹ฌ์ŠคํŽ™]"
"--๊ทธ๋ž˜ํ”„ ์—†์Œ[=์‹ฌ์ŠคํŽ™]"
XNUMXD๋ดํƒˆ์˜ -Q ์˜ต์…˜์€ "gprof"๊ฐ€ ํ˜ธ์ถœ ๊ทธ๋ž˜ํ”„ ์ธ์‡„๋ฅผ ์–ต์ œํ•˜๋„๋ก ํ•ฉ๋‹ˆ๋‹ค. ๋งŒ์•ฝ์— ์‹ฌ์ŠคํŽ™ is
์ง€์ •๋œ ๊ฒฝ์šฐ "gprof"๋Š” ํ˜ธ์ถœ ๊ทธ๋ž˜ํ”„๋ฅผ ์ธ์‡„ํ•˜์ง€๋งŒ ์ผ์น˜ํ•˜๋Š” ๊ธฐํ˜ธ๋Š” ์ œ์™ธํ•ฉ๋‹ˆ๋‹ค.

"-NS"
"--ํ…Œ์ด๋ธ” ๊ธธ์ด=์ˆซ์ž"
XNUMXD๋ดํƒˆ์˜ -t ์˜ต์…˜์ด ์›์ธ NUM ๋‚˜์—ดํ•  ๊ฐ ์†Œ์Šค ํŒŒ์ผ์—์„œ ๊ฐ€์žฅ ํ™œ๋™์ ์ธ ์†Œ์Šค ๋ผ์ธ
์†Œ์Šค ์ฃผ์„์ด ํ™œ์„ฑํ™”๋œ ๊ฒฝ์šฐ. ๊ธฐ๋ณธ๊ฐ’์€ 10์ž…๋‹ˆ๋‹ค.

"-์™€์ด"
"--๋ณ„๋„ ํŒŒ์ผ"
์ด ์˜ต์…˜์€ ์ฃผ์„์ด ๋‹ฌ๋ฆฐ ์†Œ์Šค ์ถœ๋ ฅ์—๋งŒ ์˜ํ–ฅ์„ ์ค๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์œผ๋กœ "gprof"๋Š” ์ฃผ์„์„ ์ธ์‡„ํ•ฉ๋‹ˆ๋‹ค.
์†Œ์Šค ํŒŒ์ผ์„ ํ‘œ์ค€ ์ถœ๋ ฅ์œผ๋กœ ๋ณ€ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ์˜ต์…˜์„ ์ง€์ •ํ•˜๋ฉด ์ฃผ์„์ด ๋‹ฌ๋ฆฐ ์†Œ์Šค
์ด๋ฆ„์ด ์ง€์ •๋œ ํŒŒ์ผ ๊ฒฝ๋กœ/ํŒŒ์ผ๋ช… ํŒŒ์ผ์— ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค ํŒŒ์ผ๋ช…-์•ค. ๊ธฐ์ดˆ๊ฐ€ ๋˜๋Š” ๊ฒฝ์šฐ
ํŒŒ์ผ ์‹œ์Šคํ…œ์ด ์ž˜๋ฆฝ๋‹ˆ๋‹ค. ํŒŒ์ผ๋ช…-์•ค ์›๋ณธ์„ ๋ฎ์–ด์“ฐ๋„๋ก ํŒŒ์ผ ์ด๋ฆ„,
"gprof"๋Š” ํŒŒ์ผ์— ์ฃผ์„์ด ๋‹ฌ๋ฆฐ ์†Œ์Šค๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. ํŒŒ์ผ๋ช….ann ๋Œ€์‹ (์›๋ณธ์ธ ๊ฒฝ์šฐ
ํŒŒ์ผ ์ด๋ฆ„์— ํ™•์žฅ์ž๊ฐ€ ์žˆ๊ณ  ํ•ด๋‹น ํ™•์žฅ์ž๋Š” ๋Œ€์ฒด ๊ณผ .์•ˆ).

"-์ง€[์‹ฌ์ŠคํŽ™]"
"--no-exec-counts[=์‹ฌ์ŠคํŽ™]"
XNUMXD๋ดํƒˆ์˜ -Z ์ด ์˜ต์…˜์„ ์‚ฌ์šฉํ•˜๋ฉด "gprof"๊ฐ€ ํ•จ์ˆ˜ ๋ฐ ํšŸ์ˆ˜ ์ง‘๊ณ„๋ฅผ ์ธ์‡„ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
๊ฐ๊ฐ ๋ถˆ๋ ธ๋‹ค. ๋งŒ์•ฝ์— ์‹ฌ์ŠคํŽ™ ์ง€์ •๋˜๋ฉด ์ง‘๊ณ„๋ฅผ ์ธ์‡„ํ•˜์ง€๋งŒ ์ผ์น˜ํ•˜๋Š” ๊ธฐํ˜ธ๋Š” ์ œ์™ธํ•ฉ๋‹ˆ๋‹ค.

"-NS"
"--ํ•จ์ˆ˜ ์ˆœ์„œ"
XNUMXD๋ดํƒˆ์˜ --ํ•จ์ˆ˜ ์ˆœ์„œ ์˜ต์…˜์€ "gprof"๊ฐ€ ์ œ์•ˆ๋œ ํ•จ์ˆ˜ ์ˆœ์„œ๋ฅผ ์ธ์‡„ํ•˜๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.
ํ”„๋กœํŒŒ์ผ๋ง ๋ฐ์ดํ„ฐ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์šฉ ์ด ์˜ต์…˜์€ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ˆœ์„œ๋ฅผ ์ œ์•ˆํ•ฉ๋‹ˆ๋‹ค.
์ง€์›ํ•˜๋Š” ์‹œ์Šคํ…œ์—์„œ ํ”„๋กœ๊ทธ๋žจ์— ๋Œ€ํ•œ ํŽ˜์ด์ง•, tlb ๋ฐ ์บ์‹œ ๋™์ž‘ ๊ฐœ์„ 
์‹คํ–‰ ํŒŒ์ผ์—์„œ ์ž„์˜์˜ ํ•จ์ˆ˜ ์ˆœ์„œ.

๋ง์ปค๊ฐ€ ํŠน์ • ์ˆœ์„œ๋กœ ๊ธฐ๋Šฅ์„ ๋ฐฐ์น˜ํ•˜๋„๋ก ํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•œ ์ •ํ™•ํ•œ ์„ธ๋ถ€ ์ •๋ณด
์‹œ์Šคํ…œ์— ๋”ฐ๋ผ ๋‹ค๋ฅด๋ฉฐ ์ด ์„ค๋ช…์„œ์˜ ๋ฒ”์œ„๋ฅผ ๋ฒ—์–ด๋‚ฉ๋‹ˆ๋‹ค.

"-NS map_file"
"--ํŒŒ์ผ ์ˆœ์„œ map_file"
XNUMXD๋ดํƒˆ์˜ --ํŒŒ์ผ ์ˆœ์„œ ์˜ต์…˜์€ "gprof"๊ฐ€ ์ œ์•ˆ๋œ .o ๋งํฌ ๋ผ์ธ ์ˆœ์„œ๋ฅผ ์ธ์‡„ํ•˜๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.
ํ”„๋กœํŒŒ์ผ๋ง ๋ฐ์ดํ„ฐ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์šฉ ์ด ์˜ต์…˜์€ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ˆœ์„œ๋ฅผ ์ œ์•ˆํ•ฉ๋‹ˆ๋‹ค.
์ง€์›ํ•˜์ง€ ์•Š๋Š” ์‹œ์Šคํ…œ์—์„œ ํ”„๋กœ๊ทธ๋žจ์— ๋Œ€ํ•œ ํŽ˜์ด์ง•, tlb ๋ฐ ์บ์‹œ ๋™์ž‘ ๊ฐœ์„ 
์‹คํ–‰ ํŒŒ์ผ์—์„œ ์ž„์˜์˜ ํ•จ์ˆ˜ ์ˆœ์„œ.

์˜ ์‚ฌ์šฉ -a ์ด ์˜ต์…˜๊ณผ ํ•จ๊ป˜ ์ธ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค.

XNUMXD๋ดํƒˆ์˜ ์ง€๋„ ํŒŒ์ผ ์ธ์ˆ˜๋Š” ๊ฐ์ฒด์— ํ•จ์ˆ˜ ์ด๋ฆ„์„ ์ œ๊ณตํ•˜๋Š” ํŒŒ์ผ์˜ ๊ฒฝ๋กœ ์ด๋ฆ„์ž…๋‹ˆ๋‹ค.
ํŒŒ์ผ ๋งคํ•‘. ํŒŒ์ผ ํ˜•์‹์€ "nm" ํ”„๋กœ๊ทธ๋žจ์˜ ์ถœ๋ ฅ๊ณผ ์œ ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

c-parse.o:00000000 T yyparse
c-parse.o:00000004 C yyerrfflag
c-lang.o:00000000 T ์•„๋งˆ๋„_objc_method_name
c-lang.o:00000000 T print_lang_statistics
c-lang.o:00000000 T recognition_objc_keyword
c-decl.o:00000000 T print_lang_identifier
c-decl.o:00000000 T print_lang_type
...

๋ฅผ ๋งŒ๋“ค๋ ค๋ฉด ์ง€๋„ ํŒŒ์ผ GNU "nm"๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ "nm --extern-only"์™€ ๊ฐ™์€ ๋ช…๋ น์„ ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค.
--defined-only -v --print-file-name ํ”„๋กœ๊ทธ๋žจ ์ด๋ฆ„".

"-NS"
"--์ „ํ†ต์ ์ธ"
XNUMXD๋ดํƒˆ์˜ -T ์˜ต์…˜์„ ์‚ฌ์šฉํ•˜๋ฉด "gprof"๊ฐ€ ์ถœ๋ ฅ์„ "์ „ํ†ต์ ์ธ" BSD ์Šคํƒ€์ผ๋กœ ์ธ์‡„ํ•ฉ๋‹ˆ๋‹ค.

"-w ๋„ˆ๋น„"
"--๋„ˆ๋น„=๋„ˆ๋น„"
์ถœ๋ ฅ ๋ผ์ธ์˜ ๋„ˆ๋น„๋ฅผ ๋‹ค์Œ์œผ๋กœ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค. ํญ. ํ˜„์žฌ ๊ธฐ๋Šฅ์„ ์ธ์‡„ํ•  ๋•Œ๋งŒ ์‚ฌ์šฉ
์ฝœ ๊ทธ๋ž˜ํ”„ ํ•˜๋‹จ์˜ ์ธ๋ฑ์Šค.

"-NS"
"--๋ชจ๋“  ์ค„"
์ด ์˜ต์…˜์€ ์ฃผ์„์ด ๋‹ฌ๋ฆฐ ์†Œ์Šค ์ถœ๋ ฅ์—๋งŒ ์˜ํ–ฅ์„ ์ค๋‹ˆ๋‹ค. ๊ธฐ๋ณธ์ ์œผ๋กœ ๋‹ค์Œ ๋ผ์ธ๋งŒ
๊ธฐ๋ณธ ๋ธ”๋ก์˜ ์‹œ์ž‘ ๋ถ€๋ถ„์— ์ฃผ์„์ด ๋‹ฌ๋ ค ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ์˜ต์…˜์„ ์ง€์ •ํ•˜๋ฉด ๋ชจ๋“  ๋ผ์ธ
๊ธฐ๋ณธ ๋ธ”๋ก์€ ์ฒซ ๋ฒˆ์งธ ์ค„์— ๋Œ€ํ•œ ์ฃผ์„์„ ๋ฐ˜๋ณตํ•˜์—ฌ ์ฃผ์„์„ ๋‹ต๋‹ˆ๋‹ค. ์ด๊ฒƒ
๋™์ž‘์€ "tcov"์™€ ์œ ์‚ฌํ•ฉ๋‹ˆ๋‹ค. -a.

"--demangle[=์Šคํƒ€์ผ]"
"--๋””๋งน๊ธ€"
์ด ์˜ต์…˜์€ ์ธ์‡„ํ•  ๋•Œ C++ ๊ธฐํ˜ธ ์ด๋ฆ„์„ demangleํ•ด์•ผ ํ•˜๋Š”์ง€ ์—ฌ๋ถ€๋ฅผ ์ œ์–ดํ•ฉ๋‹ˆ๋‹ค.
์‚ฐ์ถœ. ๊ธฐ๋ณธ๊ฐ’์€ ๊ธฐํ˜ธ๋ฅผ demangleํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. "--no-demangle" ์˜ต์…˜์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
๋””๋งน๊ธ€๋ง์„ ๋•๋‹ˆ๋‹ค. ์ปดํŒŒ์ผ๋Ÿฌ๋งˆ๋‹ค ๋งน๊ธ€๋ง ์Šคํƒ€์ผ์ด ๋‹ค๋ฆ…๋‹ˆ๋‹ค. NS
์„ ํƒ์  ๋””๋ง๊ธ€๋ง ์Šคํƒ€์ผ ์ธ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ ์ ˆํ•œ ๋””๋งน๊ธ€๋ง์„ ์„ ํƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
์ปดํŒŒ์ผ๋Ÿฌ์— ๋Œ€ํ•œ ์Šคํƒ€์ผ.

Analysis ์˜ต์…˜
"-NS"
"--์ •์  ์—†์Œ"
XNUMXD๋ดํƒˆ์˜ -a ์ด ์˜ต์…˜์„ ์‚ฌ์šฉํ•˜๋ฉด "gprof"๊ฐ€ ์ •์ ์œผ๋กœ ์„ ์–ธ๋œ(๋น„๊ณต๊ฐœ) ์ธ์‡„๋ฅผ ์–ต์ œํ•ฉ๋‹ˆ๋‹ค.
๊ธฐ๋Šฅ. (์ด๋“ค์€ ์ด๋ฆ„์ด ์ „์—ญ์œผ๋กœ ๋‚˜์—ด๋˜์ง€ ์•Š์€ ํ•จ์ˆ˜์ด๋ฉฐ
์ •์˜๋œ ํŒŒ์ผ/ํ•จ์ˆ˜/๋ธ”๋ก ์™ธ๋ถ€์—์„œ๋Š” ๋ณผ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.) ์†Œ์š” ์‹œ๊ฐ„
์ด๋Ÿฌํ•œ ํ•จ์ˆ˜, ํ˜ธ์ถœ ๋“ฑ์€ ๋ชจ๋‘ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ํ•จ์ˆ˜์— ๊ท€์†๋ฉ๋‹ˆ๋‹ค.
์‹คํ–‰ ํŒŒ์ผ์—์„œ ๋ฐ”๋กœ ์•ž์— ๋กœ๋“œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด ์˜ต์…˜์€ ๋‘ ๊ฐ€์ง€ ๋ชจ๋‘์— ์˜ํ–ฅ์„ ์ค๋‹ˆ๋‹ค.
ํ‰๋ฉด ํ”„๋กœํ•„ ๋ฐ ํ˜ธ์ถœ ๊ทธ๋ž˜ํ”„.

"-์”จ"
"--์ •์  ํ˜ธ์ถœ ๊ทธ๋ž˜ํ”„"
XNUMXD๋ดํƒˆ์˜ -c ์˜ต์…˜์€ ํ”„๋กœ๊ทธ๋žจ์˜ ํ˜ธ์ถœ ๊ทธ๋ž˜ํ”„๊ฐ€ ํœด๋ฆฌ์Šคํ‹ฑ์— ์˜ํ•ด ์ฆ๊ฐ€๋˜๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.
๊ฐœ์ฒด ํŒŒ์ผ์˜ ํ…์ŠคํŠธ ๊ณต๊ฐ„์„ ๊ฒ€์‚ฌํ•˜๊ณ  ํ•จ์ˆ˜ ํ˜ธ์ถœ์„ ์‹๋ณ„ํ•ฉ๋‹ˆ๋‹ค.
์ด์ง„ ๊ธฐ๊ณ„ ์ฝ”๋“œ. ์ผ๋ฐ˜ ์ฝœ ๊ทธ๋ž˜ํ”„ ๊ธฐ๋ก์€ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ๊ฒฝ์šฐ์—๋งŒ ์ƒ์„ฑ๋˜๊ธฐ ๋•Œ๋ฌธ์—
ํ•จ์ˆ˜๊ฐ€ ์ž…๋ ฅ๋˜๋ฉด ์ด ์˜ต์…˜์€ ํ˜ธ์ถœ๋  ์ˆ˜ ์žˆ๋Š” ์ž์‹์„ ์‹๋ณ„ํ•ฉ๋‹ˆ๋‹ค.
๊ทธ๋Ÿฌ๋‚˜ ๊ฒฐ์ฝ” ์—†์—ˆ๋‹ค. ํ”„๋กœํŒŒ์ผ๋ง์ด ํ™œ์„ฑํ™”๋œ ์ƒํƒœ์—์„œ ์ปดํŒŒ์ผ๋˜์ง€ ์•Š์€ ํ•จ์ˆ˜์— ๋Œ€ํ•œ ํ˜ธ์ถœ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.
๊ธฐํ˜ธ ํ…Œ์ด๋ธ” ํ•ญ๋ชฉ์ด ์žˆ๋Š” ๊ฒฝ์šฐ์—๋งŒ ์‹๋ณ„๋ฉ๋‹ˆ๋‹ค. ์ „ํ™” ๊ฑธ๊ธฐ
๋™์  ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ๋ฃจํ‹ด์€ ์ผ๋ฐ˜์ ์œผ๋กœ ์ง€์› ์ด ์˜ต์…˜์œผ๋กœ ์ฐพ์•˜์Šต๋‹ˆ๋‹ค. ๋ถ€๋ชจ ๋˜๋Š” ์ž๋…€
์ด ํœด๋ฆฌ์Šคํ‹ฑ์„ ํ†ตํ•ด ์‹๋ณ„๋œ ํ˜ธ์ถœ ๊ทธ๋ž˜ํ”„์— ํ˜ธ์ถœ ํšŸ์ˆ˜๊ฐ€ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค. 0.

"-NS"
"--๋น„ํ•จ์ˆ˜ ๋ฌด์‹œ"
XNUMXD๋ดํƒˆ์˜ -D ์˜ต์…˜์€ "gprof"๊ฐ€ ํ•จ์ˆ˜๋กœ ์•Œ๋ ค์ง€์ง€ ์•Š์€ ๊ธฐํ˜ธ๋ฅผ ๋ฌด์‹œํ•˜๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.
์ด ์˜ต์…˜์€ ์ง€์›๋˜๋Š” ์‹œ์Šคํ…œ์—์„œ ๋ณด๋‹ค ์ •ํ™•ํ•œ ํ”„๋กœํ•„ ๋ฐ์ดํ„ฐ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
(์˜ˆ: Solaris ๋ฐ HPUX).

"-์ผ€์ด ์—์„œ๋ถ€ํ„ฐ"
XNUMXD๋ดํƒˆ์˜ -k ์˜ต์…˜์„ ์‚ฌ์šฉํ•˜๋ฉด ์ผ์น˜ํ•˜๋Š” ๊ธฐํ˜ธ์˜ ๋ชจ๋“  ํ˜ธ๋ฅผ ํ˜ธ์ถœ ๊ทธ๋ž˜ํ”„์—์„œ ์‚ญ์ œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
์‹ฌ์ŠคํŽ™ ์— ์ผ์น˜ํ•˜๋Š” symspec์— ์—.

"-์—˜"
"--์„ "
XNUMXD๋ดํƒˆ์˜ -l ์˜ต์…˜์€ ๋ผ์ธ๋ณ„ ํ”„๋กœํŒŒ์ผ๋ง์„ ํ™œ์„ฑํ™”ํ•˜์—ฌ ํžˆ์Šคํ† ๊ทธ๋žจ ํžˆํŠธ๊ฐ€
๊ธฐ๋Šฅ ๋Œ€์‹  ๊ฐœ๋ณ„ ์†Œ์Šค ์ฝ”๋“œ ๋ผ์ธ์— ์ฒญ๊ตฌ๋ฉ๋‹ˆ๋‹ค. ์ด ๊ธฐ๋Šฅ๋งŒ
"gcc" ์ปดํŒŒ์ผ๋Ÿฌ์˜ ์ด์ „ ๋ฒ„์ „์œผ๋กœ ์ปดํŒŒ์ผ๋œ ํ”„๋กœ๊ทธ๋žจ๊ณผ ํ•จ๊ป˜ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ์ตœ์‹  ๋ฒ„์ „
"gcc"๋Š” ๋Œ€์‹  "gcov" ๋„๊ตฌ์™€ ํ•จ๊ป˜ ์ž‘๋™ํ•˜๋„๋ก ์„ค๊ณ„๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

ํ”„๋กœ๊ทธ๋žจ์ด ๊ธฐ๋ณธ ๋ธ”๋ก ๊ณ„์‚ฐ์ด ํ™œ์„ฑํ™”๋œ ์ƒํƒœ๋กœ ์ปดํŒŒ์ผ๋œ ๊ฒฝ์šฐ ์ด ์˜ต์…˜๋„
๊ฐ ์ฝ”๋“œ ํ–‰์ด ์‹คํ–‰๋œ ํšŸ์ˆ˜๋ฅผ ์‹๋ณ„ํ•ฉ๋‹ˆ๋‹ค. ๋ผ์ธ๋ณ„๋กœ ํ”„๋กœํŒŒ์ผ๋งํ•˜๋Š” ๋™์•ˆ
ํฐ ๊ธฐ๋Šฅ์—์„œ ํ”„๋กœ๊ทธ๋žจ์ด ์‹œ๊ฐ„์„ ๋ณด๋‚ด๋Š” ์œ„์น˜๋ฅผ ๋ถ„๋ฆฌํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
"gprof"์˜ ์‹คํ–‰ ์‹œ๊ฐ„์„ ํฌ๊ฒŒ ๋Š˜๋ฆฌ๊ณ  ํ†ต๊ณ„๋ฅผ ํ™•๋Œ€ํ•ฉ๋‹ˆ๋‹ค.
๋ถ€์ •ํ™•.

"--์ธ๋ผ์ธ ํŒŒ์ผ ์ด๋ฆ„"
์ด ์˜ต์…˜์„ ์‚ฌ์šฉํ•˜๋ฉด "gprof"๊ฐ€ ๋‘ ํ‰๋ฉด์˜ ๊ฐ ๊ธฐํ˜ธ ๋’ค์— ์†Œ์Šค ํŒŒ์ผ์„ ์ธ์‡„ํ•ฉ๋‹ˆ๋‹ค.
ํ”„๋กœํ•„ ๋ฐ ํ˜ธ์ถœ ๊ทธ๋ž˜ํ”„. ํŒŒ์ผ์˜ ์ „์ฒด ๊ฒฝ๋กœ๋Š” ๋‹ค์Œ๊ณผ ํ•จ๊ป˜ ์‚ฌ์šฉ๋˜๋Š” ๊ฒฝ์šฐ ์ธ์‡„๋ฉ๋‹ˆ๋‹ค. -L
์˜ต์…˜์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

"-๋ฏธ๋””์—„ ์ˆซ์ž"
"--์ตœ์†Œ ํšŸ์ˆ˜=์ˆซ์ž"
์ด ์˜ต์…˜์€ ์‹คํ–‰ ํšŸ์ˆ˜ ์ถœ๋ ฅ์—๋งŒ ์˜ํ–ฅ์„ ์ค๋‹ˆ๋‹ค. ๋ฏธ๋งŒ์œผ๋กœ ์‹คํ–‰๋˜๋Š” ๊ธฐํ˜ธ
NUM ์‹œ๊ฐ„์ด ์–ต์ œ๋ฉ๋‹ˆ๋‹ค.

"-N์‹ฌ์ŠคํŽ™"
"--์‹œ๊ฐ„=์‹ฌ์ŠคํŽ™"
XNUMXD๋ดํƒˆ์˜ -n ์ด ์˜ต์…˜์€ ํ˜ธ์ถœ ๊ทธ๋ž˜ํ”„ ๋ถ„์„์—์„œ "gprof"๊ฐ€ ์‹œ๊ฐ„๋งŒ ์ „ํŒŒํ•˜๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.
๊ธฐํ˜ธ ์ผ์น˜ ์‹ฌ์ŠคํŽ™.

"-N์‹ฌ์ŠคํŽ™"
"--์‹œ๊ฐ„์ด ์—†๋‹ค=์‹ฌ์ŠคํŽ™"
XNUMXD๋ดํƒˆ์˜ -n ์ด ์˜ต์…˜์€ ํ˜ธ์ถœ ๊ทธ๋ž˜ํ”„ ๋ถ„์„์—์„œ "gprof"๊ฐ€ ์‹œ๊ฐ„์„ ์ „ํŒŒํ•˜์ง€ ์•Š๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.
๊ธฐํ˜ธ ์ผ์น˜ ์‹ฌ์ŠคํŽ™.

"-NSํŒŒ์ผ ์ด๋ฆ„"
"--์™ธ๋ถ€ ๊ธฐํ˜ธ ํ…Œ์ด๋ธ”=ํŒŒ์ผ ์ด๋ฆ„"
XNUMXD๋ดํƒˆ์˜ -S ์˜ต์…˜์€ "gprof"๊ฐ€ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์™ธ๋ถ€ ๊ธฐํ˜ธ ํ…Œ์ด๋ธ” ํŒŒ์ผ์„ ์ฝ๊ฒŒ ํ•ฉ๋‹ˆ๋‹ค.
/proc/kallsyms, ์ฃผ์–ด์ง„ ๋ชฉ์  ํŒŒ์ผ์—์„œ ์‹ฌ๋ณผ ํ…Œ์ด๋ธ”์„ ์ฝ๋Š” ๊ฒƒ๋ณด๋‹ค
๊ธฐ๋ณธ๊ฐ’์€ "a.out"์ž…๋‹ˆ๋‹ค). ์ด๊ฒƒ์€ ์ปค๋„ ๋ชจ๋“ˆ์„ ํ”„๋กœํŒŒ์ผ๋งํ•˜๋Š” ๋ฐ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค.

"-์ง€"
"--๋””์Šคํ”Œ๋ ˆ์ด-๋ฏธ์‚ฌ์šฉ-๊ธฐ๋Šฅ"
๋‹น์‹ ์ด ์ค€๋‹ค๋ฉด -z ์˜ต์…˜์—์„œ "gprof"๋Š” ํ”Œ๋žซ ํ”„๋กœํ•„์˜ ๋ชจ๋“  ๊ธฐ๋Šฅ์„ ์–ธ๊ธ‰ํ•ฉ๋‹ˆ๋‹ค.
๋ถ€๋ฆ„์„ ๋ฐ›์€ ์ ๋„ ์—†๊ณ  ์‹œ๊ฐ„์„ ๋ณด๋‚ด์ง€ ์•Š์€ ์‚ฌ๋žŒ๋“ค๊นŒ์ง€๋„. ์ด๊ฒƒ์€ ์œ ์šฉํ•˜๋‹ค
๊ณผ ํ•จ๊ป˜ -c ํ˜ธ์ถœ๋˜์ง€ ์•Š์€ ๋ฃจํ‹ด์„ ๊ฒ€์ƒ‰ํ•˜๊ธฐ ์œ„ํ•œ ์˜ต์…˜์ž…๋‹ˆ๋‹ค.

๊ทธ ์™ธ ์˜ต์…˜
"-NS[์ˆซ์ž]"
"--๋””๋ฒ„๊ทธ[=์ˆซ์ž]"
XNUMXD๋ดํƒˆ์˜ -d NUM ์˜ต์…˜์€ ๋””๋ฒ„๊น… ์˜ต์…˜์„ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. ๋งŒ์•ฝ์— NUM ์ง€์ •๋˜์ง€ ์•Š์€ ๊ฒฝ์šฐ ๋ชจ๋‘ ํ™œ์„ฑํ™”
๋””๋ฒ„๊น….

"-์‹œ๊ฐ„"
"--๋•๋‹ค"
XNUMXD๋ดํƒˆ์˜ -h ์˜ต์…˜์€ ๋ช…๋ น์ค„ ์‚ฌ์šฉ๋ฒ•์„ ์ธ์‡„ํ•ฉ๋‹ˆ๋‹ค.

"-์˜ํ˜•์ด๋ฆ„"
"--ํŒŒ์ผ ํ˜•์‹=์ด๋ฆ„"
ํ”„๋กœํ•„ ๋ฐ์ดํ„ฐ ํŒŒ์ผ์˜ ํ˜•์‹์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค. ์ธ์‹๋˜๋Š” ํ˜•์‹์€ ์ž๋™ (
๊ธฐ๋ณธ), bsd, 4.4BSD, ๋งˆ๋ฒ•๋ฐ ๊ต์ˆ˜ (์•„์ง ์ง€์›๋˜์ง€ ์•Š์Œ).

"-NS"
"--ํ•ฉ์ง‘ํ•ฉ"
XNUMXD๋ดํƒˆ์˜ -s ์˜ต์…˜์€ "gprof"๊ฐ€ ํ”„๋กœํ•„ ๋ฐ์ดํ„ฐ ํŒŒ์ผ์˜ ์ •๋ณด๋ฅผ ์š”์•ฝํ•˜๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.
๋ผ๋Š” ํ”„๋กœํ•„ ๋ฐ์ดํ„ฐ ํŒŒ์ผ์„ ์ฝ๊ณ  ์”๋‹ˆ๋‹ค. gmon.sum, ๋ชจ๋“  ๋‚ด์šฉ์„ ํฌํ•จํ•˜๋Š”
"gprof"๊ฐ€ ์ฝ์€ ํ”„๋กœํ•„ ๋ฐ์ดํ„ฐ ํŒŒ์ผ์˜ ์ •๋ณด. ํŒŒ์ผ gmon.sum ๏ผ•์›”
์ง€์ •๋œ ์ž…๋ ฅ ํŒŒ์ผ ์ค‘ ํ•˜๋‚˜์—ฌ์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์˜ ํšจ๊ณผ๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ๋ณ‘ํ•ฉํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
๋‹ค๋ฅธ ์ž…๋ ฅ ํŒŒ์ผ gmon.sum.

๊ฒฐ๊ตญ ๋‹ค์Œ ์—†์ด "gprof"๋ฅผ ๋‹ค์‹œ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. -s ๋ˆ„์  ๋ฐ์ดํ„ฐ๋ฅผ ๋ถ„์„ํ•˜๊ธฐ ์œ„ํ•ด
ํŒŒ์ผ gmon.sum.

"-V"
"--๋ฒ„์ „"
XNUMXD๋ดํƒˆ์˜ -v ํ”Œ๋ž˜๊ทธ๋Š” "gprof"๊ฐ€ ํ˜„์žฌ ๋ฒ„์ „ ๋ฒˆํ˜ธ๋ฅผ ์ธ์‡„ํ•˜๋„๋ก ํ•œ ๋‹ค์Œ ์ข…๋ฃŒํ•ฉ๋‹ˆ๋‹ค.

์ถ”์ฒœํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค ์˜ต์…˜
์ด๋Ÿฌํ•œ ์˜ต์…˜์€ symspecs๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ตœ์‹  ๋ฒ„์ „์œผ๋กœ ๋Œ€์ฒด๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

"-์ด์žํ˜• function_name"
XNUMXD๋ดํƒˆ์˜ -e ๊ธฐ๋Šฅ ์˜ต์…˜์€ ํ•จ์ˆ˜์— ๋Œ€ํ•œ ์ •๋ณด๋ฅผ ์ธ์‡„ํ•˜์ง€ ์•Š๋„๋ก "gprof"์— ์ง€์‹œํ•ฉ๋‹ˆ๋‹ค.
ํ•จ์ˆ˜ ์ด๋ฆ„ (๋ฐ ๊ทธ ์ž์‹...) ํ˜ธ์ถœ ๊ทธ๋ž˜ํ”„. ๊ธฐ๋Šฅ์€ ์—ฌ์ „ํžˆ
๊ทธ๊ฒƒ์„ ํ˜ธ์ถœํ•˜๋Š” ๋ชจ๋“  ํ•จ์ˆ˜์˜ ์ž์‹์œผ๋กœ ๋‚˜์—ด๋˜์ง€๋งŒ ์ธ๋ฑ์Šค ๋ฒˆํ˜ธ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์ด ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.
[์•„๋‹ˆ๋‹ค ์ธ์‡„๋จ]. ํ•˜๋‚˜ ์ด์ƒ -e ์˜ต์…˜์ด ์ฃผ์–ด์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋‹จ ํ•˜๋‚˜ ํ•จ์ˆ˜ ์ด๋ฆ„ ์ˆ˜
๊ฐ๊ฐ์œผ๋กœ ํ‘œ์‹œ -e ์˜ต์…˜์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

"-์ด์žํ˜• function_name"
"-E ๊ธฐ๋Šฅ" ์˜ต์…˜์€ "-e" ์˜ต์…˜์ฒ˜๋Ÿผ ์ž‘๋™ํ•˜์ง€๋งŒ ํ•จ์ˆ˜์— ์†Œ์š”๋œ ์‹œ๊ฐ„
(๋ฐ ๋‹ค๋ฅธ ๊ณณ์—์„œ ํ˜ธ์ถœ๋˜์ง€ ์•Š์€ ์–ด๋ฆฐ์ด)๋Š” ๊ณ„์‚ฐ์— ์‚ฌ์šฉ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
ํ˜ธ์ถœ ๊ทธ๋ž˜ํ”„์˜ ์‹œ๊ฐ„ ๋ฐฑ๋ถ„์œจ. ํ•˜๋‚˜ ์ด์ƒ -E ์˜ต์…˜์ด ์ฃผ์–ด์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ค์ง
ํ•œ ํ•จ์ˆ˜ ์ด๋ฆ„ ๊ฐ๊ฐ ํ‘œ์‹œ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. -E ์˜ต์…˜์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

"-NS function_name"
XNUMXD๋ดํƒˆ์˜ -f ๊ธฐ๋Šฅ ์˜ต์…˜์€ "gprof"๊ฐ€ ํ˜ธ์ถœ ๊ทธ๋ž˜ํ”„๋ฅผ ํ•จ์ˆ˜๋กœ ์ œํ•œํ•˜๋„๋ก ํ•ฉ๋‹ˆ๋‹ค.
ํ•จ์ˆ˜ ์ด๋ฆ„ ๊ทธ๋ฆฌ๊ณ  ๊ทธ ์•„์ด๋“ค(๊ทธ๋ฆฌ๊ณ  ๊ทธ๋“ค์˜ ์•„์ด๋“ค...). ํ•˜๋‚˜ ์ด์ƒ -f ์˜ต์…˜์€
์ฃผ์–ด์ง„; ๋‹จ ํ•˜๋‚˜ ํ•จ์ˆ˜ ์ด๋ฆ„ ๊ฐ๊ฐ ํ‘œ์‹œ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. -f ์˜ต์…˜์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

"-NS function_name"
XNUMXD๋ดํƒˆ์˜ -F ๊ธฐ๋Šฅ ์˜ต์…˜์€ "-f" ์˜ต์…˜์ฒ˜๋Ÿผ ์ž‘๋™ํ•˜์ง€๋งŒ ํ•จ์ˆ˜์—์„œ ๋ณด๋‚ธ ์‹œ๊ฐ„๋งŒ
๊ทธ๋ฆฌ๊ณ  ๊ทธ ์ž์‹๋“ค(๊ทธ๋ฆฌ๊ณ  ๊ทธ ์ž์‹๋“ค...)์€ ์ด ์‹œ๊ฐ„๊ณผ
ํ˜ธ์ถœ ๊ทธ๋ž˜ํ”„์˜ ์‹œ๊ฐ„ ๋ฐฑ๋ถ„์œจ. ํ•˜๋‚˜ ์ด์ƒ -F ์˜ต์…˜์ด ์ฃผ์–ด์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ค์ง
ํ•œ ํ•จ์ˆ˜ ์ด๋ฆ„ ๊ฐ๊ฐ ํ‘œ์‹œ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. -F ์„ ํƒ๊ถŒ. ๊ทธ๋งŒํผ -F ์˜ต์…˜์€
-E ์˜ต์…˜์„ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

onworks.net ์„œ๋น„์Šค๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์˜จ๋ผ์ธ์œผ๋กœ arm-linux-androideabi-gprof๋ฅผ ์‚ฌ์šฉํ•˜์„ธ์š”.


๋ฌด๋ฃŒ ์„œ๋ฒ„ ๋ฐ ์›Œํฌ์Šคํ…Œ์ด์…˜

Windows ๋ฐ Linux ์•ฑ ๋‹ค์šด๋กœ๋“œ

Linux ๋ช…๋ น

Ad