์ด๊ฒ์ Ubuntu Online, Fedora Online, Windows ์จ๋ผ์ธ ์๋ฎฌ๋ ์ดํฐ ๋๋ MAC OS ์จ๋ผ์ธ ์๋ฎฌ๋ ์ดํฐ์ ๊ฐ์ ์ฌ๋ฌ ๋ฌด๋ฃ ์จ๋ผ์ธ ์ํฌ์คํ ์ด์ ์ค ํ๋๋ฅผ ์ฌ์ฉํ์ฌ OnWorks ๋ฌด๋ฃ ํธ์คํ ์ ๊ณต์ ์ฒด์์ ์คํํ ์ ์๋ perf-report ๋ช ๋ น์ ๋๋ค.
ํ๋ก๊ทธ๋จ:
์ด๋ฆ
perf-report - perf.data(perf ๋ ์ฝ๋๋ก ์์ฑ๋จ)๋ฅผ ์ฝ๊ณ ํ๋กํ์ ํ์ํฉ๋๋ค.
๊ฐ์
๋ฐํ ํ ์ ๊ณ [-๋ | --์ ๋ ฅ=ํ์ผ]
๊ธฐ์
์ด ๋ช ๋ น์ perf๋ฅผ ํตํด ๊ธฐ๋ก๋ ์ฑ๋ฅ ์นด์ดํฐ ํ๋กํ ์ ๋ณด๋ฅผ ํ์ํฉ๋๋ค.
๊ธฐ๋ก.
์ต์
-i, --์ ๋ ฅ=
ํ์ผ๋ช ์ ์ ๋ ฅํฉ๋๋ค. (๊ธฐ๋ณธ๊ฐ: stdin์ด fifo๊ฐ ์๋ ๊ฒฝ์ฐ perf.data)
-v, --์์ธํ
์ข ๋ ์์ธํ ์ค๋ช ํ์ธ์. (๊ธฐํธ ์ฃผ์ ๋ฑ ํ์)
-n, --show-nr-์ํ
๊ฐ ๊ธฐํธ์ ์ํ ์ ํ์
--show-cpu-์ฌ์ฉ๋ฅ
๋ค์ํ CPU ๋ชจ๋์ ๋ํ ์ํ ๋น์จ์ ํ์ํฉ๋๋ค.
-T, --์ค๋ ๋
์ค๋ ๋๋ณ ์ด๋ฒคํธ ์นด์ดํฐ๋ฅผ ํ์ํฉ๋๋ค. ์ ๋ ฅ ๋ฐ์ดํฐ ํ์ผ์ -s ์ต์ ์ผ๋ก ๊ธฐ๋กํด์ผ ํฉ๋๋ค.
-c, --ํต์ =
์ด๋ฌํ ํต์ ์์๋ ๊ธฐํธ๋ง ๊ณ ๋ คํ์ญ์์ค. ์ดํดํ๋ CSV ํ์ผ://ํ์ผ์ด๋ฆ ํญ๋ชฉ.
์ด ์ต์ ์ ์ค๋ฒํค๋ ์ด์ ๋น์จ์ ์ํฅ์ ๋ฏธ์นฉ๋๋ค. --percentage๋ฅผ ์ฐธ์กฐํ์ธ์.
๋ ๋ง์ ์ ๋ณด.
--pid=
์ง์ ๋ ํ๋ก์ธ์ค ID์ ๋ํ ์ด๋ฒคํธ๋ง ํ์ํฉ๋๋ค(์ผํ๋ก ๊ตฌ๋ถ๋ ๋ชฉ๋ก).
--์๊ฐ=
์ง์ ๋ ์ค๋ ๋ ID์ ๋ํ ์ด๋ฒคํธ๋ง ํ์ํฉ๋๋ค(์ผํ๋ก ๊ตฌ๋ถ๋ ๋ชฉ๋ก).
-d, --dsos=
์ด๋ฌํ dsos์ ๊ธฐํธ๋ง ๊ณ ๋ คํ์ญ์์ค. ์ดํดํ๋ CSV ํ์ผ://ํ์ผ์ด๋ฆ ํญ๋ชฉ.
์ด ์ต์ ์ ์ค๋ฒํค๋ ์ด์ ๋น์จ์ ์ํฅ์ ๋ฏธ์นฉ๋๋ค. --percentage๋ฅผ ์ฐธ์กฐํ์ธ์.
๋ ๋ง์ ์ ๋ณด.
-S, --๊ธฐํธ=
๋ค์ ๊ธฐํธ๋ง ๊ณ ๋ คํ์ญ์์ค. ์ดํดํ๋ CSV ํ์ผ://ํ์ผ์ด๋ฆ ํญ๋ชฉ. ์ด ์ต์
์ค๋ฒํค๋ ์ด์ ๋น์จ์ ์ํฅ์ ๋ฏธ์นฉ๋๋ค. ์์ธํ ๋ด์ฉ์ --percentage๋ฅผ ์ฐธ์กฐํ์ธ์.
--๊ธฐํธ-ํํฐ=
์ด ํํฐ์ (๋ถ๋ถ์ ์ผ๋ก) ์ผ์นํ๋ ๊ธฐํธ๋ง ํ์ํฉ๋๋ค.
-U, --hide-๋ฏธํด๊ฒฐ
๊ธฐํธ๋ก ํด์๋ ํญ๋ชฉ๋ง ํ์ํฉ๋๋ค.
-s, --sort=
์ฃผ์ด์ง ํค๋ฅผ ๊ธฐ์ค์ผ๋ก ํ์คํ ๊ทธ๋จ ํญ๋ชฉ์ ์ ๋ ฌํฉ๋๋ค. ์ฌ๋ฌ ํค๋ฅผ CSV ํ์์ผ๋ก ์ง์ ํ ์ ์์ต๋๋ค.
๋ค์ ์ ๋ ฌ ํค๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค: pid, comm, dso, ๊ธฐํธ, ๋ถ๋ชจ, CPU, ์์ผ,
srcline, ๋ฌด๊ฒ, local_weight.
๊ฐ ํค์๋ ๋ค์๊ณผ ๊ฐ์ ์๋ฏธ๊ฐ ์์ต๋๋ค.
ยท comm: ์ฝ์ ์ ์๋ ์์ ์ ๋ช ๋ น(์ด๋ฆ) /ํ๋ก์์ //comm
ยท pid: ์์ ์ ๋ช ๋ น ๋ฐ tid
ยท dso : ์ํ์ ์คํ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ ๋ชจ๋์ ์ด๋ฆ
ยท ๊ธฐํธ : ์ํ์ ์คํ๋ ํจ์๋ช
ยท parent: ์์ ์ ๊ท์ ํํฐ์ ์ผ์นํ๋ ํจ์์ ์ด๋ฆ์ ๋๋ค. ์ผ์นํ์ง ์๋ ํญ๋ชฉ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
"[๊ธฐํ]"๋ก ํ์๋ฉ๋๋ค.
ยท CPU: ์ํ ์์ ์ ์์ ์ด ์คํ๋ CPU ๋ฒํธ
ยท ์์ผ: ์ํ ๋น์ ์์ ์ด ์คํ๋ ํ๋ก์ธ์ ์์ผ ๋ฒํธ
ยท srcline: ์ํ ์์ ์ ์คํ๋ ํ์ผ ์ด๋ฆ๊ณผ ์ค ๋ฒํธ์ ๋๋ค. ๋์์ด
๋๋ฒ๊น ์ ๋ณด๋ฅผ ์ ๊ณตํด์ผ ํฉ๋๋ค.
ยท srcfile: ๋์ผํ ์์ค ํ์ผ์ ํ์ผ ์ด๋ฆ์ ๋๋ค. ๋์ํ ์ ๋ณด๊ฐ ํ์ํฉ๋๋ค.
ยท ๊ฐ์ค์น: ์ด๋ฒคํธ๋ณ ๊ฐ์ค์น(์: ๋ฉ๋ชจ๋ฆฌ ๋๊ธฐ ์๊ฐ ๋๋ ํธ๋์ญ์ ์ค๋จ ๋น์ฉ). ์ด๊ฒ
์ ์ฒด ๊ฐ์ค์น์ ๋๋ค.
ยท local_weight: ์ ๊ฐ์ค์น์ ๋ก์ปฌ ๊ฐ์ค์น ๋ฒ์ ์ ๋๋ค.
ยท ํธ๋์ญ์ : ํธ๋์ญ์ ์ค๋จ ํ๋๊ทธ.
ยท ์ค๋ฒํค๋: ์ํ์ ์ค๋ฒํค๋ ๋น์จ
ยทoverhead_sys: ์์คํ ๋ชจ๋์์ ์คํ๋๋ ์ํ์ ์ค๋ฒํค๋ ๋น์จ
ยทoverhead_us: ์ฌ์ฉ์ ๋ชจ๋์์ ์คํ๋๋ ์ํ์ ์ค๋ฒํค๋ ๋น์จ
ยทoverhead_guest_sys: ๊ฒ์คํธ์ ์์คํ ๋ชจ๋์์ ์คํ๋๋ ์ํ์ ์ค๋ฒํค๋ ๋น์จ
๊ธฐ๊ณ
ยทoverhead_guest_us: ๊ฒ์คํธ์ ์ฌ์ฉ์ ๋ชจ๋์์ ์คํ๋๋ ์ํ์ ์ค๋ฒํค๋ ๋น์จ
๊ธฐ๊ณ
ยท ์ํ : ์ํ ๊ฐ์
ยท ๊ธฐ๊ฐ: ์ํ์ ์ด๋ฒคํธ ์์ ์์ ์
๊ธฐ๋ณธ์ ์ผ๋ก comm, dso ๋ฐ ๊ธฐํธ ํค๊ฐ ์ฌ์ฉ๋ฉ๋๋ค.
(์ฆ --sort comm,dso,symbol)
--branch-stack ์ต์ ์ ์ฌ์ฉํ๋ฉด ๋ค์ ์ ๋ ฌ ํค๋ ์ฌ์ฉ๋ฉ๋๋ค.
์ฌ์ฉํ ์ :
dso_from, dso_to, ๊ธฐํธ_from, ๊ธฐํธ_to, ์๋ชป๋ ์์ธก.
ยท dso_from: ๋ถ๊ธฐ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋๋ ๋ชจ๋์ ์ด๋ฆ
ยท dso_to: ๋ถ๊ธฐ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋๋ ๋ชจ๋์ ์ด๋ฆ
ยท Symbol_from : ๋ถ๊ธฐ๋ ํจ์์ ์ด๋ฆ
ยท Symbol_to : ๋ถ๊ธฐ๋ ํจ์์ ์ด๋ฆ
ยท mispredict: ์์ธก๋ ๋ถ๊ธฐ์ ๊ฒฝ์ฐ "N", ์๋ชป ์์ธก๋ ๋ถ๊ธฐ์ ๊ฒฝ์ฐ "Y"
ยท in_tx: TSX ํธ๋์ญ์ ์ ๋ถ๊ธฐ
ยท ์ค๋จ: TSX ํธ๋์ญ์ ์ด ์ค๋จ๋ฉ๋๋ค.
ยท ์ฌ์ดํด: ๊ธฐ๋ณธ ๋ธ๋ก์ ์ฌ์ดํด
๊ธฐ๋ณธ ์ ๋ ฌ ํค๋ comm, dso_from, Symbol_from, dso_to๋ก ๋ณ๊ฒฝ๋ฉ๋๋ค.
๋ฐ ๊ธฐํธ_to๋ '--branch-stack'์ ์ฐธ์กฐํ์ธ์.
-F, --ํ๋=
์ถ๋ ฅ ํ๋ ์ง์ - CSV ํ์์ผ๋ก ์ฌ๋ฌ ํค๋ฅผ ์ง์ ํ ์ ์์ต๋๋ค. ๋ค์ ํ๋
์ฌ์ฉ ๊ฐ๋ฅ:overhead,overhead_sys,overhead_us,overhead_children,์ํ ๋ฐ
๊ธฐ๊ฐ. ๋ํ ๋ชจ๋ ์ ๋ ฌ ํค๋ฅผ ํฌํจํ ์ ์์ต๋๋ค.
๊ธฐ๋ณธ์ ์ผ๋ก -F์ ์ง์ ๋์ง ์์ ๋ชจ๋ ์ ๋ ฌ ํค๊ฐ ์ถ๊ฐ๋ฉ๋๋ค.
์๋์ผ๋ก.
--mem-mode ์ต์ ์ ์ฌ์ฉํ๋ฉด ๋ค์๊ณผ ๊ฐ์ ์ ๋ ฌ ํค๋ ์ฌ์ฉํ ์ ์์ต๋๋ค.
(--branch-stack๊ณผ ํธํ๋์ง ์์):
Symbol_daddr, dso_daddr, ์ ๊น, tlb, mem, snoop, dcacheline.
ยท Symbol_daddr : ์ํ์ ์คํ์ค์ธ ๋ฐ์ดํฐ ์ฌ๋ณผ์ ์ด๋ฆ
ยท dso_daddr: ์คํ ์ค์ธ ๋ฐ์ดํฐ๊ฐ ํฌํจ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋๋ ๋ชจ๋์ ์ด๋ฆ
์ํ ์๊ฐ
ยท ์ ๊น: ์ํ ๋น์ ๋ฒ์ค๊ฐ ์ ๊ฒจ ์์๋์ง ์ฌ๋ถ
ยท tlb : ์ํ ๋น์ ๋ฐ์ดํฐ์ ๋ํ tlb ์ก์ธ์ค ์ ํ
ยท mem: ์ํ ์์ ์ ๋ฐ์ดํฐ์ ๋ํ ๋ฉ๋ชจ๋ฆฌ ์ก์ธ์ค ์ ํ
ยท snoop: ์ํ๋ง ๋น์ ๋ฐ์ดํฐ์ ๋ํ snoop ์ ํ(์๋ ๊ฒฝ์ฐ)
ยท dcacheline: ์ํ ์์ ์ ๋ฐ์ดํฐ ์ฃผ์๊ฐ ์๋ ์บ์๋ผ์ธ
๊ธฐ๋ณธ ์ ๋ ฌ ํค๋ local_weight, mem, Sym, dso๋ก ๋ณ๊ฒฝ๋ฉ๋๋ค.
Symbol_daddr, dso_daddr, snoop, tlb, ์ ๊น, '--mem-mode'๋ฅผ ์ฐธ์กฐํ์ธ์.
-p, --๋ถ๋ชจ=
๋ถ๋ชจ๋ฅผ ์๋ณํ๋ ์ ๊ท์ ํํฐ์ ๋๋ค. ๋ถ๋ชจ๋ ์ด ํจ์์ ํธ์ถ์์ด๋ฉฐ
์ฝ์ฒด์ธ์ ํตํด ๊ฒ์๋๋ฏ๋ก ์ฝ์ฒด์ธ ์ ๋ณด ๊ธฐ๋ก์ด ํ์ํฉ๋๋ค. ๊ทธ๋งํผ
ํจํด์ ํ์ฅ๋ ์ ๊ท์ ํ์์ด๋ฉฐ ๊ธฐ๋ณธ๊ฐ์ "^sys_|^do_page_fault"์ ๋๋ค.
--์ข ๋ฅ ๋ถ๋ชจ์.
-x, --์ ์ธ-๊ธฐํ
์์ ์ผ์น ํญ๋ชฉ๋ง ํ์ํฉ๋๋ค.
-w, --์ด-๋๋น=
ํฐ ํฐ๋ฏธ๋ ๊ฐ๋ ์ฑ์ ์ํด ๊ฐ ์ด ๋๋น๋ฅผ ์ ๊ณต๋ ๋ชฉ๋ก์ ์ ์ฉํฉ๋๋ค. 0์
์ ํ ์์(๊ธฐ๋ณธ ๋์)
-t, --ํ๋ ๊ตฌ๋ถ์=
ํน์ ๊ตฌ๋ถ ๋ฌธ์๋ฅผ ์ฌ์ฉํ๊ณ ๊ณต๋ฐฑ์ผ๋ก ์ฑ์ฐ์ง ๋ง๊ณ ๋ชจ๋ ํญ๋ชฉ์ ๋ฐ๊ฟ๋๋ค.
๊ธฐํธ ์ด๋ฆ(๋ฐ ๊ธฐํ ์ถ๋ ฅ)์์ ์ด ๊ตฌ๋ถ ๊ธฐํธ๋ฅผ . ์ฑ๊ฒฉ, ๊ทธ๋์
์ด๋ ์ ์ผํ๊ฒ ์ ํจํ์ง ์์ ๊ตฌ๋ถ ๊ธฐํธ์ ๋๋ค.
-D, --dump-raw-trace
์์ ์ถ์ ์ ASCII๋ก ๋คํํฉ๋๋ค.
-g, --call-graph=
์ ํ, ์ต์ ๋ฐฑ๋ถ์จ ์๊ณ๊ฐ, ์ธ์ ์ ํ, ํธ์ถ ์์, ์ ๋ ฌ์ ์ฌ์ฉํ์ฌ ํธ์ถ ์ฒด์ธ ํ์
ํค์ ๋ธ๋์น. ๋งค๊ฐ๋ณ์์ ์์๋ ๊ณ ์ ๋์ด ์์ง ์์ผ๋ฏ๋ก ๋ชจ๋ ๋งค๊ฐ๋ณ์๋ฅผ ์ง์ ํ ์ ์์ต๋๋ค.
์ค์ฌ ์์๋ก ์ ๊ณต๋ฉ๋๋ค. ํ ๊ฐ์ง ์์ธ๋ ์์ ์์ด์ผ ํ๋ print_limit์ ๋๋ค.
์๊ณ ๊ฐ์ผ๋ก.
print_type์ ๋ค์ ์ค ํ๋์ผ ์ ์์ต๋๋ค.
- ํ๋ซ: ๋จ์ผ ์ด, ์ฝ ์ฒด์ธ์ ์ ํ ๋ ธ์ถ.
- ๊ทธ๋ํ: ์ ๋ ๊ฐ์ ๋น ๋น์จ์ ํ์ํ๋ ๊ทธ๋ํ ํธ๋ฆฌ๋ฅผ ์ฌ์ฉํฉ๋๋ค. (๊ธฐ๋ณธ)
- ํ๋ํ: ๊ทธ๋ํ์ ๋น์ทํ์ง๋ง ์๋ ๋น์จ์ ํ์ํฉ๋๋ค. ๊ฐ ์ง์ ์
ํธ๋ฆฌ๋ ์๋ก์ด ํ๋กํ์ผ๋ง ๊ฐ์ฒด๋ก ๊ฐ์ฃผ๋ฉ๋๋ค.
- ์์: ์ฝ ์ฒด์ธ ํ์๋ฅผ ๋นํ์ฑํํฉ๋๋ค.
์๊ณ๊ฐ์ ์ต์ ๋ฐฑ๋ถ์จ์ ์ง์ ํ๋ ๋ฐฑ๋ถ์จ ๊ฐ์ ๋๋ค.
์ถ๋ ฅ ํธ์ถ ๊ทธ๋ํ์ ํฌํจ๋ฉ๋๋ค. ๊ธฐ๋ณธ๊ฐ์ 0.5(%)์ ๋๋ค.
print_limit๋ stdio ์ธํฐํ์ด์ค๋ฅผ ์ฌ์ฉํ ๋๋ง ์ ์ฉ๋ฉ๋๋ค. ์ ํํ๋ ๊ฑฐ์ฃ
๋จ์ผ ํ์คํธ ํญ๋ชฉ์ ํธ์ถ ๊ทธ๋ํ ํญ๋ชฉ ์์ ๋๋ค. ํ์ํ๋ค๋ ์ ์ฐธ๊ณ ํ์ธ์
์๊ณ๊ฐ ์ดํ์ ์ ๊ณต๋ฉ๋๋ค(๋ฐ๋์ ์ฐ์์ ์ผ ํ์๋ ์์).
๊ธฐ๋ณธ๊ฐ์ 0(๋ฌด์ ํ)์ ๋๋ค.
์์๋ ๋ค์ ์ค ํ๋์ผ ์ ์์ต๋๋ค.
- ํธ์ถ ์์ ์: ํธ์ถ ์์ ์ ๊ธฐ๋ฐ ํธ์ถ ๊ทธ๋ํ์ ๋๋ค.
- ํธ์ถ์: ๋ฐ์ ๋ ํธ์ถ์ ๊ธฐ๋ฐ ํธ์ถ ๊ทธ๋ํ.
--children์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ ๊ธฐ๋ณธ๊ฐ์ 'caller'์ด๊ณ , ๊ทธ๋ ์ง ์์ผ๋ฉด 'callee'์ ๋๋ค.
sort_key๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
- ํจ์: ํจ์ ๋น๊ต(๊ธฐ๋ณธ๊ฐ)
- ์ฃผ์ : ๊ฐ๋ณ ์ฝ๋ ์ฃผ์ ๋น๊ต
์ง์ ์ ๋ค์๊ณผ ๊ฐ์ ์ ์์ต๋๋ค:
- ๋ถ๊ธฐ: ๊ฐ๋ฅํ ๊ฒฝ์ฐ ์ฝ ๊ทธ๋ํ์ ๋ง์ง๋ง ๋ถ๊ธฐ ์ ๋ณด๋ฅผ ํฌํจํฉ๋๋ค.
์ผ๋ฐ์ ์ผ๋ก --branch-history๋ฅผ ์ฌ์ฉํ๋ ๊ฒ์ด ๋ ํธ๋ฆฌํฉ๋๋ค.
--์ด๋ฆฐ์ด๋ค
ํ์ ํญ๋ชฉ์ ์ฝ์ฒด์ธ์ ์์ ํญ๋ชฉ์ ์ถ์ ํ์ฌ
์ฐ์ถ. ์ถ๋ ฅ์๋ ์๋ก์ด "ํ์" ์ด์ด ์์ผ๋ฉฐ ๋ฐ์ดํฐ๋ฅผ ๊ธฐ์ค์ผ๋ก ์ ๋ ฌ๋ฉ๋๋ค.
์ฝ์ฒด์ธ์ด ๊ธฐ๋ก๋์ด์ผ ํฉ๋๋ค. ์์ธํ ๋ด์ฉ์ '์ค๋ฒํค๋ ๊ณ์ฐ' ์น์ ์ ์ฐธ์กฐํ์ธ์.
์ธ๋ถ.
--์ต๋ ์คํ
์ฝ์ฒด์ธ์ ๊ตฌ๋ฌธ ๋ถ์ํ ๋ ์ง์ ๋ ๋ฒ์๋ฅผ ์ด๊ณผํ๋ ์คํ ๊น์ด ์ ํ์ ์ค์ ํฉ๋๋ค.
๊น์ด๋ ๋ฌด์๋ฉ๋๋ค. ์ด๋ ์ ๋ณด ์์ค๊ณผ ์๋ ์ฌ์ด์ ๊ท ํ์ ๋๋ค.
๋งค์ฐ ๊ธด ์ฝ์ฒด์ธ ์คํ์ ๊ฐ์ง ์ ์๋ ์์ ๋ถํ์ ๋ํด ํนํ ์ฒ๋ฆฌํฉ๋๋ค. ๋ฉ๋ชจ
--itrace ์ต์ ์ ์ฌ์ฉํ ๋ ํฉ์ฑ๋ ์ฝ์ฒด์ธ ํฌ๊ธฐ๊ฐ ์ด๋ฅผ ์ฌ์ ์ํฉ๋๋ค.
ํฉ์ฑ๋ ์ฝ์ฒด์ธ ํฌ๊ธฐ๊ฐ ๋ ํฐ ๊ฒฝ์ฐ ๊ฐ์ ๋๋ค.
๊ธฐ๋ณธ๊ฐ : 127
-G, --๋ฐ์ ๋จ
๋ฐ์ ๋ ํธ์ถ์ ๊ธฐ๋ฐ ํธ์ถ ๊ทธ๋ํ์ ๋ณ์นญ์ ๋๋ค.
--๋ฌด์-ํธ์ถ์=
์ฃผ์ด์ง ์ ๊ท์๊ณผ ์ผ์นํ๋ ํจ์์ ํผํธ์ถ์๋ฅผ ๋ฌด์ํฉ๋๋ค. ์ด๋ ๋ค์๊ณผ ๊ฐ์ ํจ๊ณผ๊ฐ ์์ต๋๋ค.
๊ฐ ํจ์์ ํธ์ถ์๋ฅผ ํธ์ถ ๊ทธ๋ํ ํธ๋ฆฌ์ ํ ์์น์ ์์งํฉ๋๋ค.
--์์๋ค=
์์ ํ๋ฆฐํ ์คํ์ผ. ํค: ๋ ธ๋ฉ, ๋ก์ฐ
--stdio
stdio ์ธํฐํ์ด์ค๋ฅผ ์ฌ์ฉํ์ญ์์ค.
--ํฌ์ด
์ฃผ์๊ณผ ํตํฉ๋์ด DSO๋ฅผ ํ๋ํ ์ ์๋ TUI ์ธํฐํ์ด์ค๋ฅผ ์ฌ์ฉํ์ญ์์ค.
๋๋ ์ค๋ ๋ ๋ฑ์ ๊ธฐ๋ฅ์ด ์์ต๋๋ค. --tui๋ฅผ ์ฌ์ฉํ๋ ค๋ฉด tty๊ฐ ํ์ํฉ๋๋ค(์์ผ๋ฉด tty).
๋ค๋ฅธ ๋ช ๋ น์ผ๋ก ํ์ดํํ ๋์ ๋ง์ฐฌ๊ฐ์ง๋ก stdio ์ธํฐํ์ด์ค๊ฐ ์ฌ์ฉ๋ฉ๋๋ค.
--gtk
GTK2 ์ธํฐํ์ด์ค๋ฅผ ์ฌ์ฉํ์ญ์์ค.
-k, --vmlinux=
vmlinux ๊ฒฝ๋ก ์ด๋ฆ
--kallsyms=
kallsyms ๊ฒฝ๋ก ์ด๋ฆ
-m, --๋ชจ๋
๋ชจ๋ ๊ธฐํธ๋ฅผ ๋ก๋ํฉ๋๋ค. ๊ฒฝ๊ณ : ์ด๋ -k ๋ฐ LIVE ์ปค๋๊ณผ ํจ๊ป ์ฌ์ฉํด์ผ ํฉ๋๋ค.
-f, --ํ
๋ถํํ์ง ๋ง๊ณ ํ์ธ์.
--symfs=
์ด ๋๋ ํ ๋ฆฌ์ ๊ด๋ จ๋ ๊ธฐํธ๊ฐ ์๋ ํ์ผ์ ์ฐพ์ผ์ญ์์ค.
-C, --cpu
์ ๊ณต๋ CPU ๋ชฉ๋ก์ ๋ํ ์ํ๋ง ๋ณด๊ณ ํฉ๋๋ค. ์ฌ๋ฌ ๊ฐ์ CPU๋ฅผ ํ๋์ ์ฅ์น๋ก ์ ๊ณตํ ์ ์์ต๋๋ค.
๊ณต๋ฐฑ ์์ด ์ผํ๋ก ๊ตฌ๋ถ๋ ๋ชฉ๋ก: 0,1. CPU ๋ฒ์๋ -: 0-2๋ก ์ง์ ๋ฉ๋๋ค.
๊ธฐ๋ณธ๊ฐ์ ๋ชจ๋ CPU์์ ์ํ์ ๋ณด๊ณ ํ๋ ๊ฒ์ ๋๋ค.
-M, --๋์ค์ด์ ๋ธ๋ฌ ์คํ์ผ=
objdump์ ๋ํ ๋์ค์ด์ ๋ธ๋ฌ ์คํ์ผ์ ์ค์ ํฉ๋๋ค.
--์์ฒ
์์ค ์ฝ๋๋ฅผ ์ด์ ๋ธ๋ฆฌ ์ฝ๋์ ์ธํฐ๋ฆฌ๋ธํฉ๋๋ค. ๊ธฐ๋ณธ์ ์ผ๋ก ํ์ฑํ, ๋นํ์ฑํ
--์์ค ์์.
--asm-raw
์ด์ ๋ธ๋ฆฌ ๋ช ๋ น์ด์ ์์ ๋ช ๋ น์ด ์ธ์ฝ๋ฉ์ ํ์ํฉ๋๋ค.
--show-์ด ๊ธฐ๊ฐ
๊ธฐ๊ฐ ํฉ๊ณ๊ฐ ํฌํจ๋ ์ด์ ํ์ํฉ๋๋ค.
-๋, --์ผ-์ ๋ณด
perf.data ํ์ผ์ ๋ํ ํ์ฅ ์ ๋ณด๋ฅผ ํ์ํฉ๋๋ค. ์ด๋ ๋ค์๊ณผ ๊ฐ์ ์ ๋ณด๋ฅผ ์ถ๊ฐํฉ๋๋ค.
ํฌ๊ธฐ๊ฐ ๋งค์ฐ ์ปค์ ๋์คํ๋ ์ด๊ฐ ์ด์์ ํด์ง ์ ์์ต๋๋ค. ํ์ฌ ํฌํจ๋๋ ํญ๋ชฉ: CPU ๋ฐ Numa
ํธ์คํธ ์์คํ ์ ํ ํด๋ก์ง.
-b, --๋ธ๋์น ์คํ
๋ช ๋ น์ด ์ฃผ์ ๋์ ์ํ๋ง๋ ๋ถ๊ธฐ์ ์ฃผ์๋ฅผ ์ฌ์ฉํ์ฌ
ํ์คํ ๊ทธ๋จ์ ์์ฑํฉ๋๋ค. ์๋ฏธ ์๋ ์ถ๋ ฅ์ ์์ฑํ๋ ค๋ฉด perf.data ํ์ผ์ด ์์ด์ผ ํฉ๋๋ค.
perf Record -b ๋๋ perf Record --branch-filter xxx๋ฅผ ์ฌ์ฉํ์ฌ ์ป์ต๋๋ค. ์ฌ๊ธฐ์ xxx๋ ๋ถ๊ธฐ์ ๋๋ค.
ํํฐ ์ต์ . ์ฑ๋ฅ ๋ณด๊ณ ์๋ perf.data ํ์ผ์ ๋ค์์ด ํฌํจ๋์ด ์๋์ง ์๋ ๊ฐ์งํ ์ ์์ต๋๋ค.
๋ธ๋์น ์คํ์ ์ ์ฅํ๊ณ ์๋์ผ๋ก ๋ธ๋์น ๋ณด๊ธฐ ๋ชจ๋๋ก ์ ํ๋ฉ๋๋ค.
--no-branch-stack์ด ์ฌ์ฉ๋ฉ๋๋ค.
--์ง์ ์ญ์ฌ
์ํ๋ง๋ ๋ถ๊ธฐ์ ์ฃผ์๋ฅผ ํธ์ถ ์คํ์ ์ถ๊ฐํฉ๋๋ค. ์ด๋ฅผ ํตํด ๊ฒ์ฌํ ์ ์์ต๋๋ค.
ํ๋ก๊ทธ๋จ์ด ๊ฐ ์ํ์ ๋๋ฌํ ๊ฒฝ๋ก. ๋ฐ์ดํฐ ์์ง์์๋ -b(๋๋
-j) ๋ฐ -g.
--์ค๋ธ์ ํธ๋คํ=
objdump ๋ฐ์ด๋๋ฆฌ์ ๊ฒฝ๋ก์ ๋๋ค.
--๊ทธ๋ฃน
์ด๋ฒคํธ ๊ทธ๋ฃน ์ ๋ณด๋ฅผ ํจ๊ป ๋ณด์ฌ์ค๋๋ค.
--demangle
์ฌ๋์ด ์ฝ์ ์ ์๋ ํ์์ผ๋ก ๊ธฐํธ ์ด๋ฆ์ ํด๋ ํฉ๋๋ค. ๊ธฐ๋ณธ์ ์ผ๋ก ํ์ฑํ๋์ด ์์ต๋๋ค.
-- demangle ์์.
--demangle-์ปค๋
์ปค๋ ๊ธฐํธ ์ด๋ฆ์ ์ฌ๋์ด ์ฝ์ ์ ์๋ ํ์์ผ๋ก ์ ๋ฆฌํฉ๋๋ค(C++ ์ปค๋์ ๊ฒฝ์ฐ).
--mem ๋ชจ๋
๋ช ๋ น์ด ์ฃผ์ ์ธ์ ์ํ์ ๋ฐ์ดํฐ ์ฃผ์๋ฅผ ์ฌ์ฉํ์ฌ
ํ์คํ ๊ทธ๋จ. ์๋ฏธ ์๋ ์ถ๋ ฅ์ ์์ฑํ๋ ค๋ฉด perf.data ํ์ผ์ ๊ฐ์ ธ์์ผ ํฉ๋๋ค.
perf ๋ ์ฝ๋ -d -W ์ฌ์ฉ ๋ฐ ํน์ ์ด๋ฒคํธ -e cpu/mem-loads/ ๋๋ -e ์ฌ์ฉ
CPU/๋ฉ๋ชจ๋ฆฌ ์ ์ฅ์/. ๋ณด๋ค ๋ฐํ ํ (MEM) ๋ ์ฝ๊ฒ ์ ๊ทผํ ์ ์์ต๋๋ค.
--ํผ์ผํธ ์ ํ
ํด๋น ๋น์จ ๋ฏธ๋ง์ ์ค๋ฒํค๋๊ฐ ์๋ ํญ๋ชฉ์ ํ์ํ์ง ์์ต๋๋ค. (๊ธฐ๋ณธ๊ฐ: 0).
--๋ฐฑ๋ถ์จ
ํํฐ๋ง๋ ํญ๋ชฉ์ ์ค๋ฒํค๋ ๋น์จ์ ํ์ํ๋ ๋ฐฉ๋ฒ์ ๊ฒฐ์ ํฉ๋๋ค. ํํฐ๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
--comms, --dsos ๋ฐ/๋๋ --symbols ์ต์ ๊ณผ TUI์ ํ๋/์ถ์ ์์ ์ ์ํด ์ ์ฉ๋จ
(์ค๋ ๋, DSO ๋ฑ).
'์๋'๋ ํํฐ๋ง๋ ํญ๋ชฉ์๋ง ์๋์ ์ด๋ผ๋ ์๋ฏธ์ ๋๋ค.
ํ์๋ ํญ๋ชฉ์ ํฉ๊ณ๋ ํญ์ 100%์ ๋๋ค. "์ ๋์ "์ ์ ์งํ๋ค๋ ์๋ฏธ์ ๋๋ค.
ํํฐ ์ ์ฉ ์ ํ์ ์๋ ๊ฐ์ ๋๋ค.
--ํค๋
perf.data ํ์ผ์ ํค๋ ์ ๋ณด๋ฅผ ํ์ํฉ๋๋ค. ์ฌ๊ธฐ์๋ ๋ค์๊ณผ ๊ฐ์ ๋ค์ํ ์ ๋ณด๊ฐ ํฌํจ๋ฉ๋๋ค.
ํธ์คํธ ์ด๋ฆ, OS ๋ฐ ์ฑ๋ฅ ๋ฒ์ , CPU/๋ฉ๋ชจ๋ฆฌ ์ ๋ณด, ์ฑ๋ฅ ๋ช ๋ น์ค, ์ด๋ฒคํธ ๋ชฉ๋ก ๋ฑ.
ํ์ฌ --stdio ์ถ๋ ฅ๋ง ์ด ๊ธฐ๋ฅ์ ์ง์ํฉ๋๋ค.
--ํค๋ ์ ์ฉ
perf.data ํค๋๋ง ํ์ํฉ๋๋ค(--stdio ๊ฐ์ ).
--itrace
๋ช ๋ น์ด ์ถ์ ๋ฐ์ดํฐ๋ฅผ ๋์ฝ๋ฉํ๊ธฐ ์ํ ์ต์ ์ ๋๋ค. ์ต์ ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค:
๋๋ ๋ช ๋ น์ด ์ด๋ฒคํธ๋ฅผ ํฉ์ฑํ๋ค
b ๋ถ๊ธฐ ์ด๋ฒคํธ๋ฅผ ํฉ์ฑํฉ๋๋ค.
c ๋ถ๊ธฐ ์ด๋ฒคํธ ํฉ์ฑ(ํธ์ถ๋ง ํด๋น)
r ๋ถ๊ธฐ ์ด๋ฒคํธ ํฉ์ฑ(๋ฐํ๋ง ํด๋น)
x ๊ฑฐ๋ ์ด๋ฒคํธ๋ฅผ ํฉ์ฑํฉ๋๋ค.
e ์ค๋ฅ ์ด๋ฒคํธ๋ฅผ ์ข ํฉํฉ๋๋ค.
d ๋๋ฒ๊ทธ ๋ก๊ทธ๋ฅผ ์์ฑํฉ๋๋ค.
g ํธ์ถ ์ฒด์ธ์ ํฉ์ฑํฉ๋๋ค(i ๋๋ x์ ํจ๊ป ์ฌ์ฉ).
l ๋ง์ง๋ง ๋ถ๊ธฐ ํญ๋ชฉ์ ํฉ์ฑํฉ๋๋ค(i ๋๋ x์ ํจ๊ป ์ฌ์ฉ).
๊ธฐ๋ณธ๊ฐ์ ๋ชจ๋ ์ด๋ฒคํธ์ ๋๋ค. ์ฆ --itrace=ibxe์ ๋์ผํฉ๋๋ค.
๋ํ, ์๋ด ์ด๋ฒคํธ ๊ธฐ๊ฐ(๊ธฐ๋ณธ๊ฐ 100000)
๋ค์ ๋จ์๋ก ์ง์ ํ ์ ์์ต๋๋ค.
๋ ์ง์์ฌํญ
ํฐ ํฑ
ms ๋ฐ๋ฆฌ์ด
์ฐ๋ฆฌ ๋ง์ดํฌ๋ก์ด
ns ๋๋ ธ์ด(๊ธฐ๋ณธ๊ฐ)
๋ํ ์ง์นจ์ ๋ํ ํธ์ถ ์ฒด์ธ ํฌ๊ธฐ(๊ธฐ๋ณธ๊ฐ 16, ์ต๋ 1024) ๋๋
๊ฑฐ๋ ์ด๋ฒคํธ๋ฅผ ์ง์ ํ ์ ์์ต๋๋ค.
๋ํ ๋ง์ง๋ง ๋ถ๊ธฐ ํญ๋ชฉ ์(๊ธฐ๋ณธ๊ฐ 64, ์ต๋ 1024)
์ง์นจ์ด๋ ๊ฑฐ๋ ์ด๋ฒคํธ๋ฅผ ์ง์ ํ ์ ์์ต๋๋ค.
๋์ฝ๋ฉ์ ์์ ํ ๋นํ์ฑํํ๋ ค๋ฉด --no-itrace๋ฅผ ์ฌ์ฉํ์ญ์์ค.
--์ ์ฒด ์์ค ๊ฒฝ๋ก
srcline ์ถ๋ ฅ์ ์ํ ์์ค ํ์ผ์ ์ ์ฒด ๊ฒฝ๋ก๋ฅผ ํ์ํฉ๋๋ค.
--show-ref-call-๊ทธ๋ํ
์ฌ๋ฌ ์ด๋ฒคํธ๊ฐ ์ํ๋ง๋๋ฉด ๋ชจ๋ ์ด๋ฒคํธ์ ๋ํ ์ฝ๊ทธ๋ํ๋ฅผ ์์งํ ํ์๊ฐ ์์ ์๋ ์์ต๋๋ค.
๊ทธ๋ค์. ์ํ ์ฌ์ดํธ๋ ์ผ๋ฐ์ ์ผ๋ก ๊ทผ์ฒ์ ์์ผ๋ฉฐ, ์ํ์ ์์งํ๊ธฐ์ ์ถฉ๋ถํฉ๋๋ค.
์ฐธ์กฐ ์ด๋ฒคํธ์ ๋ํ ์ฝ๊ทธ๋ํ. ๋ฐ๋ผ์ ์ฌ์ฉ์๋ "call-graph=no" ์ด๋ฒคํธ ์์ ์๋ฅผ ์ฌ์ฉํ์ฌ ๋ค์์ ์ํํ ์ ์์ต๋๋ค.
์ค๋ฒํค๋๋ฅผ ์ค์ด๊ธฐ ์ํด ๋ค๋ฅธ ์ด๋ฒคํธ์ ๋ํ ํธ์ถ ๊ทธ๋ํ๋ฅผ ๋นํ์ฑํํฉ๋๋ค. ๊ทธ๋ฌ๋ ์ฑ๋ฅ ๋ณด๊ณ ์๋ ๋ถ๊ฐ๋ฅํฉ๋๋ค.
์ฝ๊ทธ๋ํ๋ฅผ ๋นํ์ฑํํ๋ ์ด๋ฒคํธ์ ๋ํ ์ฝ๊ทธ๋ํ๋ฅผ ํ์ํฉ๋๋ค. ์ด ์ต์ ์
์ฐธ์กฐ ์ด๋ฒคํธ๋ก ์์ง๋ ์ฐธ์กฐ ํธ์ถ ๊ทธ๋ํ๋ฅผ ํ์ํ๋ ์ฑ๋ฅ ๋ณด๊ณ ์
์ฝ๊ทธ๋ํ ์ด๋ฒคํธ.
--์์ผ ํํฐ
์ด ํํฐ์ ์ผ์นํ๋ ํ๋ก์ธ์ ์์ผ์ ์ํ๋ง ๋ณด๊ณ ํฉ๋๋ค.
๊ฐ์ ๋น ๊ณ์ฐ
์ค๋ฒํค๋๋ ๋ค์๊ณผ ๊ฐ์ด ๋ ๊ฐ์ ์ด๋ก ํ์๋ ์ ์์ต๋๋ค. ์ด๋ฆฐ์ด ๋ฐ ์ ํ ์ฑ๋ฅ์ด ์์ง๋ ๋
์ฝ์ฒด์ธ. ๊ทธ๋งํผ ์๊ธฐ ์ค๋ฒํค๋๋ ๋จ์ํ ํด๋น ๊ธฐ๊ฐ์ ๋ชจ๋ ๊ธฐ๊ฐ ๊ฐ์ ๋ํ์ฌ ๊ณ์ฐ๋ฉ๋๋ค.
ํญ๋ชฉ - ์ผ๋ฐ์ ์ผ๋ก ๊ธฐ๋ฅ(๊ธฐํธ)์ ๋๋ค. ์ด๊ฒ์ด perf๊ฐ ์ ํต์ ์ผ๋ก ๋ณด์ฌ์ฃผ๋ ๊ฐ์น์ด๋ฉฐ,
๋ชจ๋ ๊ฒ์ ํฉ ์๊ธฐ ์ค๋ฒํค๋ ๊ฐ์ 100%์ฌ์ผ ํฉ๋๋ค.
XNUMXD๋ดํ์ ์ด๋ฆฐ์ด ์ค๋ฒํค๋๋ ํ์ ํจ์์ ๋ชจ๋ ๊ธฐ๊ฐ ๊ฐ์ ์ถ๊ฐํ์ฌ ๊ณ์ฐ๋ฉ๋๋ค.
๊ทธ๋ ์ง ์๋๋ผ๋ ์์ ์์ค ๊ธฐ๋ฅ์ ์ด ์ค๋ฒํค๋๋ฅผ ํ์ํ ์ ์์ต๋๋ค.
์ง์ ์คํํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค. ์ด๋ฆฐ์ด ์ฌ๊ธฐ์๋ ๋ค๋ฅธ(๋ถ๋ชจ)์์ ํธ์ถ๋๋ ํจ์๋ฅผ ์๋ฏธํฉ๋๋ค.
๊ธฐ๋ฅ.
๋ชจ๋ ๊ธ์ก์ ํฉ์ฐํ๋ฉด ํผ๋์ค๋ฌ์ธ ์๋ ์์ต๋๋ค. ์ด๋ฆฐ์ด ๊ฐ์ ๋น ๊ฐ์ด 100%๋ฅผ ์ด๊ณผํฉ๋๋ค.
๊ทธ๋ค ๊ฐ๊ฐ์ ์ด๋ฏธ ์ถ์ ๋์ด ์์ต๋๋ค. ์๊ธฐ ํ์ ํจ์์ ์ค๋ฒํค๋์ ๋๋ค. ํ์ง๋ง ํจ๊ป
์ด๋ฅผ ํ์ฑํํ๋ฉด ์ฌ์ฉ์๋ ์ํ์ด ์กด์ฌํ๋๋ผ๋ ๊ฐ์ฅ ๋ง์ ์ค๋ฒํค๋๊ฐ ์๋ ๊ธฐ๋ฅ์ ์ฐพ์ ์ ์์ต๋๋ค.
์์ด๋ค์๊ฒ ํผ์ก์ต๋๋ค.
๋ค์ ์๋ฅผ ๊ณ ๋ คํ์ญ์์ค. ์๋์ ๊ฐ์ด ์ธ ๊ฐ์ง ๊ธฐ๋ฅ์ด ์์ต๋๋ค.
.ํผํธ C
๋ฌดํจ foo(๊ณตํ) {
/* ๋ญ๊ฐ๋ฅผ ํด๋ผ */
}
๋ณด์ด๋ ๋ฐ(void) {
/* ๋ญ๊ฐ๋ฅผ ํด๋ผ */
ํธ();
}
int main(void) {
์ ์ง()
0๊ฐ ๋์;
}
.ํผํธ
์ด ๊ฒฝ์ฐ ํธ ~์ ์๋ ์ด๋ค ๋ฐ๋ฐ ๋ฐ ์ ์ง๊ณ ์๋ ์ ๋๋ค. ๋ณธ๊ด so ํธ ๋ํ
์ ์์ด ๋ณธ๊ด. ๋ค๋ฅธ ๋ง๋ก, ๋ณธ๊ด ์ ๋ถ๋ชจ์ด๋ค ํธ ๋ฐ ๋ฐ๋ฐ ๋ฐ ์ ๋ถ๋ชจ์ด๋ค
ํธ.
๋ชจ๋ ์ํ์ด ํธ ๋ฐ ๋ฐ ์ค์ง. ์ฝ์ฒด์ธ์ผ๋ก ๊ธฐ๋ก๋๋ ๊ฒฝ์ฐ
์ถ๋ ฅ์ perf์ ์ผ๋ฐ์ ์ธ(์์ฒด ์ค๋ฒํค๋ ์ ์ฉ) ์ถ๋ ฅ์์ โโ์๋์ ๊ฐ์ด ํ์๋ฉ๋๋ค.
๋ณด๊ณ ์ :
.ํผํธ C
์ค๋ฒํค๋ ๊ธฐํธ
........ .................
60.00% ํธ
|
--- ํธ
๋ฐ
๋ณธ๊ด
__libc_start_main
40.00% ๋ฐ
|
--- ์ ์ง
๋ณธ๊ด
__libc_start_main
.ํผํธ
--children ์ต์ ์ด ํ์ฑํ๋๋ฉด ์๊ธฐ ํ์ ํจ์์ ์ค๋ฒํค๋ ๊ฐ(์:
ํธ ๋ฐ ๋ฐ)๋ฅผ ์์ ํญ๋ชฉ์ ์ถ๊ฐํ์ฌ ๊ณ์ฐํฉ๋๋ค. ์ด๋ฆฐ์ด ๊ฐ์ ๋น. ์ด ๊ฒฝ์ฐ์๋
๋ณด๊ณ ์๋ ๋ค์๊ณผ ๊ฐ์ด ํ์๋ ์ ์์ต๋๋ค.
.ํผํธ C
์ด๋ฆฐ์ด ์๊ธฐ ๊ธฐํธ
........ .......... ...................
100.00% 0.00% __libc_start_main
|
--- __libc_start_main
100.00% 0.00% ๋ฉ์ธ
|
--- ๊ธฐ๋ณธ
__libc_start_main
100.00% 40.00% ๋ฐ
|
--- ์ ์ง
๋ณธ๊ด
__libc_start_main
60.00% 60.00% ํธ
|
--- ํธ
๋ฐ
๋ณธ๊ด
__libc_start_main
.ํผํธ
์ ์ถ๋ ฅ์์, ์๊ธฐ ๊ฐ์ ๋น ํธ (60%)๊ฐ ์ถ๊ฐ๋์์ต๋๋ค. ์ด๋ฆฐ์ด ๊ฐ์ ๋น
๋ฐ, ๋ณธ๊ด ๋ฐ __libc_start_main. ๋ง์ฐฌ๊ฐ์ง๋ก ์๊ธฐ ๊ฐ์ ๋น ๋ฐ (40%)๊ฐ ์ถ๊ฐ๋์์ต๋๋ค.
์ด๋ฆฐ์ด ๊ฐ์ ๋น ๋ณธ๊ด ๋ฐ \\_\_libc_start_main.
So \\_\_libc_start_main ๋ฐ ๋ณธ๊ด ๋์ผ(100%)ํ๋ฏ๋ก ๋จผ์ ํ์๋ฉ๋๋ค. ์ด๋ฆฐ์ด
์ค๋ฒํค๋(XNUMX์ด๋๋ผ๋ ์๊ธฐ ์ค๋ฒํค๋) ๊ทธ๋ค์ ๋ค์์ ๋ถ๋ชจ์ ๋๋ค. ํธ ๋ฐ
๋ฐ.
v3.16๋ถํฐ ์ด๋ฆฐ์ด ์ค๋ฒํค๋๋ ๊ธฐ๋ณธ์ ์ผ๋ก ํ์๋๋ฉฐ ์ถ๋ ฅ์ ํด๋น ํญ๋ชฉ์ ๋ฐ๋ผ ์ ๋ ฌ๋ฉ๋๋ค.
๊ฐ์น. ๊ทธ๋งํผ ์ด๋ฆฐ์ด --no-children ์ต์ ์ ์ง์ ํ๋ฉด ์ค๋ฒํค๋๊ฐ ๋นํ์ฑํ๋ฉ๋๋ค.
๋ช ๋ น์ค ๋๋ ์ถ๊ฐ ๋ณด๊ณ ์.์ด๋ฆฐ์ด = ๊ทธ๋ฆ๋ or ํ.์ด๋ฆฐ์ด = ๊ทธ๋ฆ๋ ์ฑ๋ฅ์
๊ตฌ์ฑ ํ์ผ.
onworks.net ์๋น์ค๋ฅผ ์ฌ์ฉํ์ฌ ์จ๋ผ์ธ์ผ๋ก perf-report ์ฌ์ฉ