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

Ad


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

perf-report - ํด๋ผ์šฐ๋“œ์˜ ์˜จ๋ผ์ธ

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

์ด๊ฒƒ์€ 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 ์‚ฌ์šฉ


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

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

  • 1
    KompoZer
    KompoZer
    KompoZer๋Š” ๋‹ค์Œ์„ ์‚ฌ์šฉํ•˜๋Š” wysiwyg HTML ํŽธ์ง‘๊ธฐ์ž…๋‹ˆ๋‹ค.
    Mozilla Composer ์ฝ”๋“œ๋ฒ ์ด์Šค. ๊ฐ™์ด
    Nvu์˜ ๊ฐœ๋ฐœ์ด ์ค‘๋‹จ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
    2005๋…„ KompoZer๋Š” ๋งŽ์€ ๋ฒ„๊ทธ๋ฅผ ์ˆ˜์ •ํ•˜๊ณ 
    f๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค...
    KompoZer ๋‹ค์šด๋กœ๋“œ
  • 2
    ๋ฌด๋ฃŒ ๋งŒํ™” ๋‹ค์šด๋กœ๋”
    ๋ฌด๋ฃŒ ๋งŒํ™” ๋‹ค์šด๋กœ๋”
    FMD(๋ฌด๋ฃŒ ๋งŒํ™” ๋‹ค์šด๋กœ๋”)๋Š”
    ๋กœ ์ž‘์„ฑ๋œ ์˜คํ”ˆ ์†Œ์Šค ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜
    ๊ด€๋ฆฌ๋ฅผ ์œ„ํ•œ ์˜ค๋ธŒ์ ํŠธ ํŒŒ์Šค์นผ ๋ฐ
    ๋‹ค์–‘ํ•œ ์›น์‚ฌ์ดํŠธ์—์„œ ๋งŒํ™”๋ฅผ ๋‹ค์šด๋กœ๋“œํ•ฉ๋‹ˆ๋‹ค.
    ์ด๊ฒƒ์€ ๊ฑฐ์šธ...
    ๋ฌด๋ฃŒ ๋งŒํ™” ๋‹ค์šด๋กœ๋” ๋‹ค์šด๋กœ๋“œ
  • 3
    ์œ ์—” ๋ถ€์ธ
    ์œ ์—” ๋ถ€์ธ
    UNetbootin์„ ์‚ฌ์šฉํ•˜๋ฉด ๋ถ€ํŒ… ๊ฐ€๋Šฅํ•œ ํŒŒ์ผ์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    Ubuntu, Fedora ๋ฐ
    ์—†๋Š” ๋‹ค๋ฅธ Linux ๋ฐฐํฌํŒ
    CD ๊ตฝ๊ธฐ. ์œˆ๋„์šฐ, ๋ฆฌ๋ˆ…์Šค,
    ๊ทธ๋ฆฌ๊ณ  ...
    UNetbootin ๋‹ค์šด๋กœ๋“œ
  • 4
    ๋Œ๋ฆฌ๋ฐ” ERP - CRM
    ๋Œ๋ฆฌ๋ฐ” ERP - CRM
    Dolibarr ERP - CRM์€ ์‚ฌ์šฉํ•˜๊ธฐ ์‰ฝ์Šต๋‹ˆ๋‹ค.
    ERP ๋ฐ CRM ์˜คํ”ˆ ์†Œ์Šค ์†Œํ”„ํŠธ์›จ์–ด ํŒจํ‚ค์ง€
    (์›น PHP ์„œ๋ฒ„๋กœ ์‹คํ–‰ํ•˜๊ฑฐ๋‚˜
    ๋…๋ฆฝ ์‹คํ–‰ํ˜• ์†Œํ”„ํŠธ์›จ์–ด),
    ๊ธฐ์ดˆ...
    ๋‹ค์šด๋กœ๋“œ Dolibarr ERP - CRM
  • 5
    SQuirreL SQL ํด๋ผ์ด์–ธํŠธ
    SQuirreL SQL ํด๋ผ์ด์–ธํŠธ
    SQuirreL SQL ํด๋ผ์ด์–ธํŠธ๋Š” ๊ทธ๋ž˜ํ”ฝ SQL์ž…๋‹ˆ๋‹ค.
    ํ—ˆ์šฉํ•˜๋Š” Java๋กœ ์ž‘์„ฑ๋œ ํด๋ผ์ด์–ธํŠธ
    JDBC์˜ ๊ตฌ์กฐ๋ฅผ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
    ์ค€์ˆ˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ๋ฐ์ดํ„ฐ ์ฐพ์•„๋ณด๊ธฐ
    ํ…Œ์ด๋ธ”...
    SQuirreL SQL ํด๋ผ์ด์–ธํŠธ ๋‹ค์šด๋กœ๋“œ
  • 6
    ๊ด„ํ˜ธ
    ๊ด„ํ˜ธ
    Brackets๋Š” ๋ฌด๋ฃŒ๋กœ ์ œ๊ณต๋˜๋Š” ์ตœ์‹  ์˜คํ”ˆ ์†Œ์Šค์ž…๋‹ˆ๋‹ค.
    ์›น์šฉ์œผ๋กœ ํŠน๋ณ„ํžˆ ์ œ์ž‘๋œ ํ…์ŠคํŠธ ํŽธ์ง‘๊ธฐ
    ๊ฐœ๋ฐœ. HTML, CSS ๋ฐ
    ์ดˆ์ ์ด ๋งž์ถฐ์ง„ ์‹œ๊ฐ์  ๋„๊ตฌ์™€
    ์ค€๋น„...
    ๊ด„ํ˜ธ ๋‹ค์šด๋กœ๋“œ
  • ๋”ยป

Linux ๋ช…๋ น

Ad