์ข…์†์„ฑ ์ธ์‹ ๋ฆฌํŒฉํ† ๋ง์„ ํ†ตํ•œ JIT ์ตœ์ ํ™” ํ•ด์ œ ์บ์Šค์ผ€์ด๋“œ ๊ฐ์†Œ

์ข…์†์„ฑ ์ธ์‹ ๋ฆฌํŒฉํ† ๋ง์„ ํ†ตํ•œ JIT ์ตœ์ ํ™” ํ•ด์ œ ์บ์Šค์ผ€์ด๋“œ ๊ฐ์†Œ

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

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

JVM ์•ˆ์ •์„ฑ ๊ฐ•ํ™”

Smart TS XL์€ ๋Œ€๊ทœ๋ชจ ์‹œ์Šคํ…œ์—์„œ JVM ์ตœ์ ํ™”๋ฅผ ์ž๋™์œผ๋กœ ํ•ด์ œํ•˜๋Š” ๊ตฌ์กฐ์  ์ข…์†์„ฑ์„ ๋“œ๋Ÿฌ๋ƒ…๋‹ˆ๋‹ค.

์ง€๊ธˆ ํƒ์ƒ‰

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

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

์ฐจ๋ก€

๋Œ€๊ทœ๋ชจ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์—์„œ JIT ์—ญ์ตœ์ ํ™” ์บ์Šค์ผ€์ด๋“œ์˜ ๊ทผ๋ณธ ์›์ธ

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

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

๊ด‘๋ฒ”์œ„ํ•œ ์—ญ์ตœ์ ํ™”๋ฅผ ์œ„ํ•œ ์ด‰๋งค๋กœ์„œ์˜ ์ˆจ๊ฒจ์ง„ ๋‹คํ˜•์„ฑ

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

์ˆจ๊ฒจ์ง„ ๋‹คํ˜•์„ฑ์€ ๋ชจ๋“ˆ์„ฑ์ด ์œ ๊ธฐ์ ์œผ๋กœ ํ™•์žฅ๋œ ์ฝ”๋“œ๋ฒ ์ด์Šค์—์„œ ์ข…์ข… ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ๊ธฐ๋Šฅ ํŒ€์€ ๊ธฐ์กด ์ธํ„ฐํŽ˜์ด์Šค๊ฐ€ ํ•ซ ๋ฃจํ”„์— ์–ผ๋งˆ๋‚˜ ์ž์ฃผ ๋‚˜ํƒ€๋‚˜๋Š”์ง€ ์ดํ•ดํ•˜์ง€ ๋ชปํ•œ ์ฑ„ ์ƒˆ๋กœ์šด ๊ตฌํ˜„์„ ๋„์ž…ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋Ÿฐํƒ€์ž„ ํ”„๋ ˆ์ž„์›Œํฌ๋Š” ์ •์  ๊ฒ€ํ† ์—์„œ๋Š” ๋ณด์ด์ง€ ์•Š๋Š” ๋ฐฉ์‹์œผ๋กœ ๊ฒ‰๋ณด๊ธฐ์— ์œ ํ˜• ๋‹ค์–‘์„ฑ์„ ํ™•๋Œ€ํ•˜๋Š” ํ”„๋ก์‹œ ์œ ํ˜•์ด๋‚˜ ์–ด๋Œ‘ํ„ฐ๋ฅผ ์ƒ์„ฑํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์ž‘์€ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์€ ์ถ”์ธก์ ์ธ ๊ฐ€์ •์„ ๋ณ€๊ฒฝํ•˜๊ณ  ๋ฐ˜๋ณต์ ์ธ ์žฌ์ปดํŒŒ์ผ ์ฃผ๊ธฐ๋ฅผ ์œ ๋ฐœํ•ฉ๋‹ˆ๋‹ค.

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

์ธ๋ผ์ด๋‹ ๊นŠ์ด ๋ฐ ํ˜ธ์ถœ ๊ทธ๋ž˜ํ”„ ๋ชจ์–‘์ด ์—ญ์ตœ์ ํ™” ์บ์Šค์ผ€์ด๋“œ์— ๋ฏธ์น˜๋Š” ์˜ํ–ฅ

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

ํ˜ธ์ถœ ๊ทธ๋ž˜ํ”„์˜ ๊ตฌ์กฐ๋Š” ์ด๋Ÿฌํ•œ ํšจ๊ณผ๊ฐ€ ์–ผ๋งˆ๋‚˜ ๋ฉ€๋ฆฌ๊นŒ์ง€ ๋ฏธ์น˜๋Š”์ง€ ๊ฒฐ์ •ํ•˜๋Š” ๋ฐ ์ค‘์š”ํ•œ ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค. ๋ฉ”์„œ๋“œ ํ˜ธ์ถœ์ด ๊ธด ์„ ํ˜• ์ฒด์ธ์œผ๋กœ ์—ฐ๊ฒฐ๋œ ํ•ซ ํŒจ์Šค๋Š” ์ธ๋ผ์ธ ์ฒ˜๋ฆฌ๊ฐ€ ์ง„ํ–‰๋จ์— ๋”ฐ๋ผ ์ถ”์ธก์ ์ธ ๊ฐ€์ •์ด ๋ˆ„์ ๋˜๊ธฐ ๋•Œ๋ฌธ์— ํŠนํžˆ ์ทจ์•ฝํ•ฉ๋‹ˆ๋‹ค. ์ธ๋ผ์ธ ๊ทธ๋ž˜ํ”„์˜ ๋ฐ”๊นฅ์ชฝ ๊ณ„์ธต์— ์œ„์น˜ํ•œ ๋ฉ”์„œ๋“œ์— ๋Œ€ํ•œ ์ž‘์€ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์กฐ์ฐจ๋„ ์ค‘์ฒฉ๋œ ํ•ซ ๋ฃจํ”„๋กœ ๋ฌดํšจํ™”๋ฅผ ์ „ํŒŒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฐ˜๋Œ€๋กœ, ๋„“์€ ๋ถ„๊ธฐ ๋˜๋Š” ๋ถˆ์•ˆ์ •ํ•œ ํŒจํ„ด์„ ํฌํ•จํ•˜๋Š” ํ˜ธ์ถœ ๊ทธ๋ž˜ํ”„๋Š” ์ธ๋ผ์ธ ์ฒ˜๋ฆฌ ๊ฒฐ์ •์„ ์ „์ฒด์ ์œผ๋กœ ๋ณต์žกํ•˜๊ฒŒ ๋งŒ๋“ค์–ด ์ปดํŒŒ์ผ๋Ÿฌ๊ฐ€ ํ”„๋กœํŒŒ์ผ๋ง ๊ฐ€๋“œ์— ๋” ๋งŽ์ด ์˜์กดํ•˜๊ฒŒ ๋งŒ๋“ญ๋‹ˆ๋‹ค.

๋งŽ์€ ํŒ€์ด ํ•ซ ํŒจ์Šค ๋‚ด์— ์œ ํ‹ธ๋ฆฌํ‹ฐ ๋ฉ”์„œ๋“œ๋ฅผ ๋ฐ˜๋ณต์ ์œผ๋กœ ์ถ”๊ฐ€ํ•˜๊ฑฐ๋‚˜ ์ผ๊ด€๋œ ํ”„๋กœํŒŒ์ผ๋ง์„ ์ €ํ•ดํ•˜๋Š” ๋ธŒ๋žœ์น˜๋ฅผ ๋„์ž…ํ•จ์œผ๋กœ์จ ์˜๋„์น˜ ์•Š๊ฒŒ ์ธ๋ผ์ด๋‹์„ ๋ถˆ์•ˆ์ •ํ•˜๊ฒŒ ๋งŒ๋“ญ๋‹ˆ๋‹ค. ์ด๋Š” ํŠนํžˆ ๋Ÿฐํƒ€์ž„ ์ตœ์ ํ™” ๋™์ž‘์„ ๊ณ ๋ คํ•˜์ง€ ์•Š๊ณ  ๊ณ„์ธตํ™”๊ฐ€ ๋ฐœ์ „ํ•œ ๋ ˆ๊ฑฐ์‹œ ์ฝ”๋“œ๋ฒ ์ด์Šค์—์„œ ํ”ํžˆ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ์ด๋กœ ์ธํ•ด ์ธ๋ผ์ด๋‹ ๋ณ€๋™์„ฑ์ด ๋ฐœ์ƒํ•˜์—ฌ ๊ณ„์ธต ์Šน๊ฒฉ๊ณผ ์ตœ์ ํ™” ํ•ด์ œ ์ฃผ๊ธฐ๊ฐ€ ๋ฐ˜๋ณต๋ฉ๋‹ˆ๋‹ค.

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

๋ฐ˜๋ณต์ ์ธ ๊ณ„์ธต ์ „ํ™˜์„ ์œ ๋ฐœํ•˜๋Š” ๋ถˆ์•ˆ์ •ํ•œ ํ”„๋กœํŒŒ์ผ๋ง ๋ฐ์ดํ„ฐ์˜ ์—ญํ• 

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

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

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

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

๋ชจ๋“ˆ ๊ฐ„ ์ข…์†์„ฑ์ด ์ตœ์ ํ™” ํ•ด์ œ ์˜ํ–ฅ์„ ์ฆํญํ•˜๋Š” ๋ฐฉ์‹

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

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

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

๋ชจ๋“ˆ ๊ฐ„ ์ข…์†์„ฑ๊ณผ ํ•ซ ํŒจ์Šค(hot path)์— ๋ฏธ์น˜๋Š” ์˜ํ–ฅ์„ ๋งคํ•‘ํ•˜๋Š” ๊ฒƒ์€ ์ตœ์ ํ™” ํ•ด์ œ ์ด๋ฒคํŠธ๊ฐ€ ๊ฐ€์žฅ ํฐ ์˜ํ–ฅ์„ ๋ฏธ์น˜๋Š” ๋ถ€๋ถ„์„ ์˜ˆ์ธกํ•˜๋Š” ๋ฐ ํ•„์ˆ˜์ ์ž…๋‹ˆ๋‹ค. ์ข…์†์„ฑ ๋ฐ€๋„๋ฅผ ์ค„์ด๊ณ  ๊ณ ์œ„ํ—˜ ๋ชจ๋“ˆ์„ ๊ฒฉ๋ฆฌํ•จ์œผ๋กœ์จ ์กฐ์ง์€ ๊ด‘๋ฒ”์œ„ํ•œ ๋ฌดํšจํ™” ์—ฐ์‡„๋ฅผ ๋ฐฉ์ง€ํ•˜๊ณ  ์„ฑ๋Šฅ ์˜ˆ์ธก ๊ฐ€๋Šฅ์„ฑ์„ ํ–ฅ์ƒ์‹œํ‚ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋นˆ๋ฒˆํ•œ ์žฌ์ปดํŒŒ์ผ์„ ๊ฐ•์ œํ•˜๋Š” ์ˆจ๊ฒจ์ง„ ๋‹คํ˜•์„ฑ ํ•ซ์ŠคํŒŸ ์‹๋ณ„

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

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

ํ˜ธ์ถœ ์‚ฌ์ดํŠธ ํ”„๋กœํŒŒ์ผ๋ง์„ ํ†ตํ•œ ์œ ํ˜• ์ธํ”Œ๋ ˆ์ด์…˜ ๊ฐ์ง€

์œ ํ˜• ์ธํ”Œ๋ ˆ์ด์…˜์€ ๋‹จ์ผ ํ˜ธ์ถœ ์‚ฌ์ดํŠธ์—์„œ ๊ด€์ฐฐ๋˜๋Š” ์ˆ˜์‹ ์ž ์œ ํ˜• ์ˆ˜๊ฐ€ JIT๊ฐ€ ์ตœ์ ํ™” ๊ฐ€๋Šฅํ•œ ๊ฒƒ์œผ๋กœ ๊ฐ„์ฃผํ•˜๋Š” ๋ฒ”์œ„๋ฅผ ์ดˆ๊ณผํ•  ๋•Œ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ์ˆ˜์‹ ์ž ๋ถ„ํฌ๋ฅผ ํฌํ•จํ•˜๋Š” ํ”„๋กœํŒŒ์ผ๋ง ๋ฐ์ดํ„ฐ๋Š” ์ด๋Ÿฌํ•œ ์œ„์น˜๋ฅผ ์‹๋ณ„ํ•˜๋Š” ๋ฐ ํ•„์ˆ˜์ ์ž…๋‹ˆ๋‹ค. JVM ํ™˜๊ฒฝ์—์„œ ๊ณ„์ธตํ˜• ์ปดํŒŒ์ผ์€ ๋‹ค์–‘ํ•œ ๋‹จ๊ณ„์—์„œ ์œ ํ˜• ํ”„๋กœํŒŒ์ผ์„ ์บก์ฒ˜ํ•˜๋ฉฐ, ์ด๋Ÿฌํ•œ ํ”„๋กœํŒŒ์ผ์€ ์ธ๋ผ์ด๋‹, ๋ฃจํ”„ ์–ธ๋กค๋ง, ์ƒ์ˆ˜ ํด๋”ฉ๊ณผ ๊ฐ™์€ ์ตœ์ ํ™”๋ฅผ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค. ์ˆ˜์‹ ์ž ๋‹ค์–‘์„ฑ์ด ์ž„๊ณ„๊ฐ’์„ ์ดˆ๊ณผํ•˜๋ฉด ์ปดํŒŒ์ผ๋Ÿฌ๋Š” ํ˜ธ์ถœ ์‚ฌ์ดํŠธ ์ตœ์ ํ™”๋ฅผ ์ค‘๋‹จํ•˜๊ฑฐ๋‚˜ ์‹คํ–‰ ์ค‘์— ์ตœ์ ํ™”๋œ ํ”„๋ ˆ์ž„์„ ๋˜๋Œ๋ฆด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋™์ž‘์€ ์œ ํ‹ธ๋ฆฌํ‹ฐ ๋ชจ๋“ˆ, ํ”„๋ ˆ์ž„์›Œํฌ ๊ฒฝ๊ณ„ ๋ฐ ๋™์ ์œผ๋กœ ์ƒ์„ฑ๋œ ํ”„๋ก์‹œ์—์„œ ์ž์ฃผ ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค.

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

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

ํ”„๋ ˆ์ž„์›Œํฌ ๋ฐ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ ํ™•์žฅ์œผ๋กœ ํ˜•์„ฑ๋œ ๊ฑฐ๋Œ€ ํ˜•ํƒœ ์‚ฌ์ดํŠธ ์ธ์‹

๋ฆฌํ”Œ๋ ‰์…˜, ๋ฐ”์ดํŠธ์ฝ”๋“œ ์ƒ์„ฑ ๋˜๋Š” ๋Œ€๊ทœ๋ชจ ์ข…์†์„ฑ ๊ทธ๋ž˜ํ”„์— ์˜์กดํ•˜๋Š” ํ”„๋ ˆ์ž„์›Œํฌ๋Š” ์„ค๊ณ„์ƒ ๋ฉ”๊ฐ€๋ชจํ”ฝ(megamorphic) ํ˜ธ์ถœ ์‚ฌ์ดํŠธ๋ฅผ ๋„์ž…ํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์Šต๋‹ˆ๋‹ค. ์ข…์†์„ฑ ์ฃผ์ž… ํ”„๋ ˆ์ž„์›Œํฌ, ์ง๋ ฌํ™” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ, ํ”„๋ก์‹œ ๊ธฐ๋ฐ˜ ์ธํ„ฐ์…‰ํ„ฐ๋Š” JIT๊ฐ€ ํšจ์œจ์ ์œผ๋กœ ํ”„๋กœํŒŒ์ผ๋งํ•  ์ˆ˜ ์žˆ๋Š” ๋ฒ”์œ„๋ฅผ ๋„˜์–ด ์œ ํ˜• ์‹œ๊ทธ๋‹ˆ์ฒ˜๋ฅผ ํ™•์žฅํ•˜๋Š” ์—ฌ๋Ÿฌ ๋ž˜ํผ ์œ ํ˜•์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ํ”„๋ ˆ์ž„์›Œํฌ๋Š” ํ•ฉ์„ฑ ํด๋ž˜์Šค๋ฅผ ๋™์ ์œผ๋กœ ์ƒ์„ฑํ•˜๊ณ , JIT๋Š” ๊ฐ ํด๋ž˜์Šค๋ฅผ ๊ณ ์œ ํ•œ ์ˆ˜์‹ ์ž ์œ ํ˜•์œผ๋กœ ์ฒ˜๋ฆฌํ•ฉ๋‹ˆ๋‹ค. ์‹œ๊ฐ„์ด ์ง€๋‚จ์— ๋”ฐ๋ผ ์ด๋Ÿฌํ•œ ๋ˆ„์ ์€ ์ดˆ๊ธฐ์—๋Š” ์•ˆ์ •์ ์ด์—ˆ์ง€๋งŒ ๋‹จํ˜•์ ์ธ ์œ„์น˜๋ฅผ ์ธ๋ผ์ด๋‹ ๋ฐ ํŠน์ˆ˜ํ™”์— ์ €ํ•ญํ•˜๋Š” ๋ฉ”๊ฐ€๋ชจํ”ฝ ํ•ซ์ŠคํŒŸ์œผ๋กœ ๋ณ€ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

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

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

์ž‘์€ ์ธํ„ฐํŽ˜์ด์Šค ๋ณ€๊ฒฝ์œผ๋กœ ์ธํ•ด ์ˆจ๊ฒจ์ง„ ๋‹คํ˜•์„ฑ์ด ์–ด๋–ป๊ฒŒ ๋“œ๋Ÿฌ๋‚˜๋Š”์ง€ ์ดํ•ดํ•˜๊ธฐ

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

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

์ˆจ๊ฒจ์ง„ ๋‹คํ˜•์„ฑ์„ ๋ฐฉ์ง€ํ•˜๋ ค๋ฉด ์ธํ„ฐํŽ˜์ด์Šค์˜ ์ง„ํ™” ๋ฐฉ์‹์„ ์ œ์–ดํ•˜๊ณ , ์ƒˆ๋กœ์šด ๊ตฌํ˜„์ฒด์˜ ๋„์ž…์„ ์ œํ•œํ•˜๋ฉฐ, ํ•„์š”ํ•œ ๊ฒฝ์šฐ ์ถ”์ƒํ™”๋ฅผ ๋ถ„ํ• ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์‹ ์ค‘ํ•œ ๊ฑฐ๋ฒ„๋„Œ์Šค๋ฅผ ํ†ตํ•ด ๊ธฐ๋Šฅ์ด ํ™•์žฅ๋˜๋”๋ผ๋„ ์„ฑ๋Šฅ์ด ์ค‘์š”ํ•œ ๊ฒฝ๋กœ๊ฐ€ ์•ˆ์ •์ ์œผ๋กœ ์œ ์ง€๋˜๋„๋ก ๋ณด์žฅํ•ฉ๋‹ˆ๋‹ค.

์ข…์†์„ฑ ์žฌ๊ตฌ์กฐํ™”๋ฅผ ํ†ตํ•œ ๋‹คํ˜•์„ฑ ์„ฑ์žฅ ์™„ํ™”

๋‹คํ˜•์„ฑ ํ™•์žฅ์€ ์‹คํ–‰ ๊ฒฝ๋กœ์˜ ์ค‘์š”ํ•œ ์ง€์ ์— ๊ด‘๋ฒ”์œ„ํ•œ ์ถ”์ƒํ™”๋ฅผ ๋ฐฐ์น˜ํ•˜๋Š” ์ข…์†์„ฑ ๊ตฌ์กฐ๋กœ ์ธํ•ด ๋ฐœ์ƒํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์Šต๋‹ˆ๋‹ค. ์‹œ๊ฐ„์ด ์ง€๋‚จ์— ๋”ฐ๋ผ ํŒ€์€ ์ƒˆ๋กœ์šด ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ •์˜ํ•˜๋Š” ๋Œ€์‹  ๊ธฐ์กด ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๊ตฌํ˜„ํ•˜์—ฌ ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” ๊ฒฐํ•ฉ๋„๋ฅผ ๋†’์ด๊ณ  ํƒ€์ž… ๊ทธ๋ž˜ํ”„๋ฅผ ํ™•๋Œ€ํ•˜์—ฌ JIT ๊ฒฐ์ •์— ๋ถ€์ •์ ์ธ ์˜ํ–ฅ์„ ๋ฏธ์นฉ๋‹ˆ๋‹ค. ๋„ˆ๋ฌด ๋งŽ์€ ๋ชจ๋“ˆ์ด ํƒ€์ž…์„ ์ œ๊ณตํ•˜๋ฉด ๋‹คํ˜•์„ฑ ์‚ฌ์ดํŠธ๋Š” ๊ฑฐ๋Œ€ํ˜•์„ฑ ์‚ฌ์ดํŠธ๊ฐ€ ๋˜๊ณ , JIT๋Š” ๋””์ŠคํŒจ์น˜๋ฅผ โ€‹โ€‹์ตœ์ ํ™”ํ•˜๋Š” ๊ธฐ๋Šฅ์„ ์ƒ์‹คํ•ฉ๋‹ˆ๋‹ค.

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

๋ฆฌํŒฉํ† ๋ง์—๋Š” ์˜ค๋ฒ„๋กœ๋“œ๋œ ์ธํ„ฐํŽ˜์ด์Šค ๋ถ„ํ• , ์ž์ฃผ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” ๊ตฌํ˜„ ๋ถ„๋ฆฌ, ๋˜๋Š” ์„œ๋น„์Šค ๊ฒฝ๊ณ„ ์žฌ๊ตฌ์„ฑ์„ ํ†ตํ•ด ์œ ํ˜• ๊ฐ€๋ณ€์„ฑ์œผ๋กœ ์ธํ•ด ํ•ซ ํŒจ์Šค(hot path)๊ฐ€ ์˜ค์—ผ๋˜์ง€ ์•Š๋„๋ก ํ•˜๋Š” ์ž‘์—…์ด ํฌํ•จ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ข…์†์„ฑ ์žฌ๊ตฌ์„ฑ์„ ํ†ตํ•ด ์กฐ์ง์€ JIT ์•ˆ์ •์„ฑ์„ ํšŒ๋ณตํ•˜๊ณ  ๋Œ€๊ทœ๋ชจ JVM ๋ฐฐํฌ ํ™˜๊ฒฝ์—์„œ ์žฌ์ปดํŒŒ์ผ ๋นˆ๋„๋ฅผ ์ค„์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ตฌ์กฐ์  ์ฝ”๋“œ ๊ด€๊ณ„๋ฅผ ํ†ตํ•œ ์ธ๋ผ์ด๋‹ ๋ถˆ์•ˆ์ •์„ฑ ๋งคํ•‘

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

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

๋”ฅ ์ธ๋ผ์ธ ์ฒด์ธ์ด ๋ฌดํšจํ™”๋ฅผ ์ฆํญํ•˜๋Š” ๋ฐฉ์‹

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

์ด๋Ÿฌํ•œ ์ฒด์ธ์€ ์ข…์ข… ์˜๋„์น˜ ์•Š๊ฒŒ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ๊ฐœ๋ฐœ์ž๋Š” ์ฝ”๋“œ ๋ชจ๋“ˆ์„ฑ์„ ๊ฐœ์„ ํ•˜๊ณ , ๋ช…ํ™•์„ฑ์„ ์œ„ํ•ด ๋ฉ”์„œ๋“œ๋ฅผ ์ถ”์ถœํ•˜๊ฑฐ๋‚˜, ๊ฒ‰๋ณด๊ธฐ์—๋Š” ๋ฌดํ•ดํ•ด ๋ณด์ด์ง€๋งŒ ํ•ซ ํŒจ์Šค(hot path)์— ์ „์ด์ ์œผ๋กœ ํฌํ•จ๋˜๋Š” ์ž‘์€ ์œ ํ‹ธ๋ฆฌํ‹ฐ๋ฅผ ์‚ฝ์ž…ํ•ฉ๋‹ˆ๋‹ค. JIT๊ฐ€ ์ด๋Ÿฌํ•œ ๊ตฌ์กฐ๋ฅผ ์ตœ์ ํ™”ํ•  ๋•Œ, ๊ฒ‰๋ณด๊ธฐ์— ๊ด€๋ จ์„ฑ์ด ์—†์–ด ๋ณด์ด๋Š” ๋ชจ๋“ˆ์˜ ๋ณ€๊ฒฝ์กฐ์ฐจ๋„ ์—ฌ๋Ÿฌ ๊ณ„์ธต์— ๊ฑธ์ณ ์ตœ์ ํ™” ํ•ด์ œ๋ฅผ ์œ ๋ฐœํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ถˆ์•ˆ์ •ํ•œ ์ฒด์ธ์„ ์‹๋ณ„ํ•˜๋ ค๋ฉด ํ˜ธ์ถœ ๊ทธ๋ž˜ํ”„ ๊นŠ์ด์™€ ๋ฉ”์„œ๋“œ ๋ณ€๋™์„ฑ์„ ๋ชจ๋‘ ํ‰๊ฐ€ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์œ ํ˜•์˜ ๊ตฌ์กฐ ์กฐ์‚ฌ๋Š” ๋‹ค์Œ ๋ถ„์„๊ณผ ์œ ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ์ฝ”๋“œ ์ถ”์  ๊ฐ€์ด๋“œ์˜ˆ์ƒ์น˜ ๋ชปํ•œ ๊ฒฐ๊ณผ๋ฅผ ํ”ผํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์ƒ๋ฅ˜์™€ ํ•˜๋ฅ˜ ๊ด€๊ณ„๋ฅผ ์ดํ•ดํ•˜๋Š” ๊ฒƒ์ด ํ•„์ˆ˜์ ์ž…๋‹ˆ๋‹ค.

์™„ํ™”์ฑ…์—๋Š” ์‹ฌ์ธต ์ฒด์ธ์„ ๋‹จ์ˆœํ™”ํ•˜๊ณ , ์ž์ฃผ ๋ณ€๊ฒฝ๋˜๋Š” ๊ตฌ์„ฑ ์š”์†Œ๋ฅผ ๋ถ„๋ฆฌํ•˜๋ฉฐ, ์„ฑ๋Šฅ์ด ์ค‘์š”ํ•œ ๊ฒฝ๋กœ์—์„œ ๊ณผ๋„ํ•œ ๊ณ„์ธตํ™”๋ฅผ ์–ต์ œํ•˜๋Š” ๊ฒƒ์ด ํฌํ•จ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์„ค๊ณ„ ์กฐ์ •์€ ์ถ”์ธก์  ๊ฐ€์ •์˜ ๋ฒ”์œ„๋ฅผ ์ œํ•œํ•˜๊ณ  ๊ด‘๋ฒ”์œ„ํ•œ ๋ฌดํšจํ™”๋ฅผ ๋ฐฉ์ง€ํ•ฉ๋‹ˆ๋‹ค.

์ธ๋ผ์ด๋‹ ๊ฒฐ์ •์„ ์ œํ•œํ•˜๋Š” ๋ถˆ์•ˆ์ •ํ•œ ๋ถ„๊ธฐ ํŒจํ„ด

๋ถ„๊ธฐ ์˜ˆ์ธก ๊ฐ€๋Šฅ์„ฑ์€ JIT๊ฐ€ ๋ฉ”์„œ๋“œ๋ฅผ ์ ํ•ฉํ•œ ์ธ๋ผ์ด๋‹ ํ›„๋ณด๋กœ ๊ฐ„์ฃผํ•˜๋Š”์ง€ ์—ฌ๋ถ€์— ์˜ํ–ฅ์„ ๋ฏธ์นฉ๋‹ˆ๋‹ค. ์˜ˆ์ธก ๋ถˆ๊ฐ€๋Šฅํ•˜๊ฑฐ๋‚˜ ์ž์ฃผ ์ด๋™ํ•˜๋Š” ๋ถ„๊ธฐ๋ฅผ ํฌํ•จํ•˜๋Š” ๋ฉ”์„œ๋“œ๋Š” ํ”„๋กœํŒŒ์ผ๋ง ์•ˆ์ •์„ฑ์„ ์ €ํ•˜์‹œํ‚ต๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ์ ์œผ๋กœ ์ปดํŒŒ์ผ๋Ÿฌ๋Š” ํ•ด๋‹น ๋ฉ”์„œ๋“œ๋ฅผ ์ธ๋ผ์ด๋‹ํ•˜์ง€ ์•Š๊ฑฐ๋‚˜, ๋” ๋‚˜์œ ๊ฒฝ์šฐ ์‹คํ–‰ ์ค‘ ์ค‘๋‹จ๋˜๋Š” ์ž˜๋ชป๋œ ๊ฐ€์ • ํ•˜์— ์ธ๋ผ์ด๋‹ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ถ„๊ธฐ ๋กœ์ง์˜ ์ž‘์€ ๋ณ€ํ™”์กฐ์ฐจ๋„ ์ปดํŒŒ์ผ๋Ÿฌ์˜ ์‹คํ–‰ ๋นˆ๋„์— ๋Œ€ํ•œ ์ดํ•ด๋ฅผ ๋ฐ”๊พธ๊ณ  ๊ด‘๋ฒ”์œ„ํ•œ ์ตœ์ ํ™” ์‹คํŒจ๋ฅผ ์ดˆ๋ž˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

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

์ด ์—ญ๋™์„ฑ์€ ๋‹ค์Œ์— ์„ค๋ช…๋œ ๊ฑด์ถ•์  ๋ถˆ์•ˆ์ •์„ฑ๊ณผ ๋งค์šฐ ์œ ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ์—”ํ„ฐํ”„๋ผ์ด์ฆˆ ํ†ตํ•ฉ ํŒจํ„ด๋ชจ๋“ˆ ๊ฐ„์˜ ๋ณต์žกํ•œ ์ƒํ˜ธ์ž‘์šฉ์œผ๋กœ ์ธํ•ด ์‹œ์Šคํ…œ ๋™์ž‘์ด ์ผ๊ด€๋˜์ง€ ์•Š์€ ๊ฒฝ์šฐ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์กฐ์ง์€ ๋ถ„๊ธฐ ์„ธ๋ถ„ํ™”๋ฅผ ๊ฐœ์„ ํ•˜๊ณ , ๋ถˆ์•ˆ์ •ํ•œ ๋กœ์ง์„ ๋ถ„๋ฆฌํ•˜๊ณ , ๋ฉ”์„œ๋“œ๋ฅผ ๋ถ„ํ• ํ•˜์—ฌ ์ปดํŒŒ์ผ ๊ณผ์ •์—์„œ ์•ˆ์ •์ ์ธ ํ•ซ ํŒจ์Šค(hot path)๋ฅผ ์˜ˆ์ธก ๊ฐ€๋Šฅํ•˜๊ฒŒ ์œ ์ง€ํ•จ์œผ๋กœ์จ ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ธ๋ผ์ด๋‹ ์ถ”์ธก์„ ๊นจ๋Š” ์ง„ํ™”ํ•˜๋Š” ํ˜ธ์ถœ์ž ๋™์ž‘

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

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

ํ˜ธ์ถœ์ž๋ฅผ ์•ˆ์ •ํ™”ํ•˜๋ฉด ์ฝ”๋“œ ์ง„ํ™” ์ฃผ๊ธฐ ์ „๋ฐ˜์— ๊ฑธ์ณ ์ตœ์ ํ™”๊ฐ€ ์œ ํšจํ•˜๊ฒŒ ์œ ์ง€๋ฉ๋‹ˆ๋‹ค. ์ž์ฃผ ์ˆ˜์ •๋˜๋Š” ๋ฉ”์„œ๋“œ๊ฐ€ ์„ฑ๋Šฅ์— ์ค‘์š”ํ•œ ์˜์—ญ์„ ๋ฒ—์–ด๋‚˜๋ฉด ์ตœ์ ํ™” ํ•ด์ œ ๋นˆ๋„๊ฐ€ ํ˜„์ €ํžˆ ๋‚ฎ์•„์ง‘๋‹ˆ๋‹ค.

๋ชจ๋“ˆ ๊ฒฝ๊ณ„๋ฅผ ๊ฐ€๋กœ์ง€๋ฅด๋Š” ์˜๋„์น˜ ์•Š์€ ์ธ๋ผ์ธ ์žฅ๋ฒฝ ์‹๋ณ„

๊ณผ๋„ํ•œ try-catch ๋ธ”๋ก, ๋™๊ธฐํ™”๋œ ์˜์—ญ, ๋ฐ˜์‚ฌ์  ํ˜ธ์ถœ, ๋˜๋Š” ๊ฐ€์‹œ์„ฑ์ด ๋ถ€์กฑํ•œ ๋ชจ๋“ˆ ๊ฒฝ๊ณ„๋ฅผ ํ†ตํ•œ ์ ‘๊ทผ๊ณผ ๊ฐ™์ด ํŠน์ • ํŒจํ„ด์€ ์ธ๋ผ์ด๋‹์„ ์™„์ „ํžˆ ๋ฐฉํ•ดํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์žฅ๋ฒฝ์€ ๊ธฐ๋Šฅ์  ์˜๋ฏธ๋ก ์„ ๋ณดํ˜ธํ•˜์ง€๋งŒ, JIT๊ฐ€ ํšŒํ”ผํ•  ์ˆ˜ ์—†๋Š” ๊ตฌ์กฐ์  ์žฅ์• ๋ฌผ์„ ์•ผ๊ธฐํ•ฉ๋‹ˆ๋‹ค. ์‹œ๊ฐ„์ด ์ง€๋‚จ์— ๋”ฐ๋ผ ๋ถ„์‚ฐ๋œ ์ธ๋ผ์ด๋‹ ์žฅ๋ฒฝ์€ ํ•ซ ํŒจ์Šค(hot path)์™€ ํ”„๋ž˜๊ทธ๋จผํŠธ ์ตœ์ ํ™” ๊ธฐํšŒ๋ฅผ ๋А๋ฆฌ๊ฒŒ ๋งŒ๋“ค๊ณ , ์ปดํŒŒ์ผ๋Ÿฌ์˜ ์ถ”์ธก์  ๊ฐ€๋“œ(speculative guard) ์˜์กด๋„๋ฅผ ๋†’์ž…๋‹ˆ๋‹ค.

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

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

์ธ๋ผ์ธ ์žฅ๋ฒฝ ๋ฆฌํŒฉํ† ๋ง์—๋Š” ํ•„์ˆ˜์ ์ด์ง€๋งŒ ๋ถˆ์•ˆ์ •ํ•œ ๋กœ์ง์„ ๋ถ„๋ฆฌํ•˜๊ณ , ์œ ํ‹ธ๋ฆฌํ‹ฐ์˜ ์ฑ…์ž„์„ ๋ถ„๋ฆฌํ•˜๊ณ , ์„ฑ๋Šฅ์— ๋ฏผ๊ฐํ•œ ์ž‘์—…์„ ์œ„ํ•œ ํŠนํ™”๋œ ๋น ๋ฅธ ๊ฒฝ๋กœ๋ฅผ ๋„์ž…ํ•˜๋Š” ๊ฒƒ์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๊ฒฝ๊ณ„๋ฅผ ๋ช…ํ™•ํžˆ ํ•จ์œผ๋กœ์จ ์กฐ์ง์€ ์ธ๋ผ์ธ ์ผ๊ด€์„ฑ์„ ํšŒ๋ณตํ•˜๊ณ  ๋ถˆํ•„์š”ํ•œ ์ตœ์ ํ™” ์‹คํŒจ๋ฅผ ์ค„์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

GraalVM ๋ฐ OpenJ9์—์„œ ๊ณ„์ธตํ˜• ์ปดํŒŒ์ผ ์Šค๋ž˜์‹œ ์ง„๋‹จ

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

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

ํ•ซ ๋ฉ”์†Œ๋“œ ์Šน๊ฒฉ ๋ฐ ๊ฐ•๋“ฑ ํŒจํ„ด ์ดํ•ด

๊ณ„์ธตํ˜• ์ปดํŒŒ์ผ์€ ๋ฉ”์„œ๋“œ๊ฐ€ ์ฒ˜์Œ์— ํ•ด์„๋œ ํ›„ C1 ์ปดํŒŒ์ผ๋กœ ์Šน๊ฒฉ๋˜๊ณ , ์ตœ์ข…์ ์œผ๋กœ JVM์— ๋”ฐ๋ผ C2 ๋˜๋Š” Graal์— ์˜ํ•ด ์ธ๋ผ์ธ ์ฒ˜๋ฆฌ๋˜๊ฑฐ๋‚˜ ์ถ”๊ฐ€ ์ตœ์ ํ™”๋˜๋Š” ๋‹จ๊ณ„์  ์Šน๊ฒฉ ๋ชจ๋ธ์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์Šน๊ฒฉ์—๋Š” ์•ˆ์ •์ ์ธ ํ”„๋กœํŒŒ์ผ๋ง ๋ฐ์ดํ„ฐ๊ฐ€ ํ•„์š”ํ•˜๋ฉฐ, ๊ฐ•๋“ฑ์—๋Š” ํ•ด๋‹น ๋ฐ์ดํ„ฐ๊ฐ€ ์‹ ๋ขฐํ•  ์ˆ˜ ์—†๊ฑฐ๋‚˜ ์œ ํšจํ•˜์ง€ ์•Š์„ ๋•Œ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ๊ณ„์ธต ๊ฐ„ ๋นˆ๋ฒˆํ•œ ์ „ํ™˜์€ JIT๊ฐ€ ๋ฉ”์„œ๋“œ์˜ ์žฅ๊ธฐ์ ์ธ ๋™์ž‘์„ ๋ฐ˜๋ณต์ ์œผ๋กœ ์ž˜๋ชป ํŒ๋‹จํ•จ์„ ๋‚˜ํƒ€๋ƒ…๋‹ˆ๋‹ค.

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

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

๋ฐ˜๋ณต์ ์ธ ๊ณ„์ธต ์ „ํ™˜์˜ ์›๋™๋ ฅ์œผ๋กœ์„œ์˜ ๋ณ€๋™์„ฑ ํ”„๋กœํŒŒ์ผ๋ง

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

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

ํ”„๋กœํŒŒ์ผ๋ง ๋ณ€๋™์„ฑ์„ ํŒŒ์•…ํ•˜๋ ค๋ฉด ๋Ÿฐํƒ€์ž„ ๋กœ๊ทธ์™€ ์—…์ŠคํŠธ๋ฆผ ๊ตฌ์กฐ์  ํŠธ๋ฆฌ๊ฑฐ๋ฅผ ๋ชจ๋‘ ๋ถ„์„ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ํ…Œ์ŠคํŠธ ํ™˜๊ฒฝ์—์„œ์˜ ํ”„๋กœํŒŒ์ผ๋ง์€ ์‹ค์ œ ์šด์˜ ํ™˜๊ฒฝ์„ ๋ฐ˜์˜ํ•˜์ง€ ๋ชปํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์œผ๋ฉฐ, ์ด๋Š” ์ œ์–ด๋œ ํ‰๊ฐ€์—์„œ๋Š” ์•ˆ์ •์ ์œผ๋กœ ๋ณด์ด๋Š” ๋ฉ”์„œ๋“œ๊ฐ€ ๋ถ€ํ•˜ ์ƒํ™ฉ์—์„œ๋Š” ๋ถˆ์•ˆ์ •ํ•ด์ง„๋‹ค๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์ฐจ์ด๋Š” ๋‹ค์Œ์—์„œ ์„ค๋ช…ํ•œ ์•„ํ‚คํ…์ฒ˜ ์ทจ์•ฝ์„ฑ์„ ๋ฐ˜์˜ํ•ฉ๋‹ˆ๋‹ค. ์—”ํ„ฐํ”„๋ผ์ด์ฆˆ ํ†ตํ•ฉ ํŒจํ„ด๋ณต์žกํ•œ ์ข…์†์„ฑ์ด ํ™˜๊ฒฝ๋งˆ๋‹ค ๋‹ค๋ฅด๊ฒŒ ๋™์ž‘ํ•˜๋Š” ๊ฒฝ์šฐ์ž…๋‹ˆ๋‹ค. ๋ณ€๋™์„ฑ์„ ์ค„์ด๋ ค๋ฉด ํ•ซ ํŒจ์Šค(hot path)๋ฅผ ๋ฆฌํŒฉํ† ๋งํ•˜๊ฑฐ๋‚˜, ๋ถˆํ•„์š”ํ•œ ๋ถ„๊ธฐ๋ฅผ ์ œ๊ฑฐํ•˜๊ฑฐ๋‚˜, ๋™์  ํ”„๋ ˆ์ž„์›Œํฌ ๊ธฐ๋Šฅ์„ ์ค‘์š”ํ•œ ํ˜ธ์ถœ ์ฒด์ธ์—์„œ ๋ถ„๋ฆฌํ•ด์•ผ ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

GraalVM๊ณผ OpenJ9์—์„œ ๊ณ„์ธตํ˜• ์ปดํŒŒ์ผ์ด ๋‹ค๋ฅด๊ฒŒ ๋™์ž‘ํ•˜๋Š” ๋ฐฉ์‹

GraalVM๊ณผ OpenJ9๋Š” ๊ณ„์ธต์  ์ปดํŒŒ์ผ์„ ๋‹ค๋ฅด๊ฒŒ ๊ตฌํ˜„ํ•˜์—ฌ ์„œ๋กœ ๋‹ค๋ฅธ ์‹คํŒจ ๋ชจ๋“œ๋ฅผ ๋ฐœ์ƒ์‹œํ‚ต๋‹ˆ๋‹ค. GraalVM์€ ๋ถ€๋ถ„ ์ด์Šค์ผ€์ดํ”„ ๋ถ„์„๊ณผ ๊ณ ๊ธ‰ ์ธ๋ผ์ด๋‹ ํœด๋ฆฌ์Šคํ‹ฑ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๋Š” ๊ณต๊ฒฉ์ ์ธ ์ถ”์ธก ์ตœ์ ํ™”์— ์ค‘์ ์„ ๋‘ก๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ๊ณ ๋„๋กœ ์ตœ์ ํ™”๋œ ํ•ซ ํŒจ์Šค(hot path)๋ฅผ ๊ตฌํ˜„ํ•  ์ˆ˜ ์žˆ์ง€๋งŒ, ํ”„๋กœํŒŒ์ผ๋ง ์ •ํ™•๋„์— ๋Œ€ํ•œ ๋ฏผ๊ฐ๋„๋Š” ๋†’์•„์ง‘๋‹ˆ๋‹ค. ๊ฐ€์ •์ด ์‹คํŒจํ•˜๋ฉด GraalVM์€ ์ธ๋ผ์ด๋‹๋œ ์ฝ”๋“œ์˜ ๋„“์€ ์˜์—ญ์„ ์‚ญ์ œํ•˜์—ฌ ๊ณ„๋‹จ์‹ ๊ณ„์ธต ์ „ํ™˜์˜ ์‹ฌ๊ฐ์„ฑ์„ ๋†’์ž…๋‹ˆ๋‹ค.

๋ฐ˜๋ฉด OpenJ9๋Š” ์ •์ƒ ์ƒํƒœ ์˜ˆ์ธก ๊ฐ€๋Šฅ์„ฑ์„ ๊ฐ•์กฐํ•˜๊ณ  ์ •๊ตํ•œ ํœด๋ฆฌ์Šคํ‹ฑ์„ ํ†ตํ•ฉํ•˜์—ฌ ์กฐ๊ธฐ ์Šน๊ฒฉ์ด๋‚˜ ๊ณผ๋„ํ•œ ์ถ”์ธก์„ ๋ฐฉ์ง€ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” ๊ณต๊ฒฉ์ ์ธ ์Šค๋ž˜์‹ฑ(thrashing) ์œ„ํ—˜์„ ์ค„์ด๋Š” ๋ฐ˜๋ฉด, ํŠน์ดํ•œ ์›Œํฌ๋กœ๋“œ ํŒจํ„ด์„ ๊ฐ€์ง„ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ๊ฒฝ์šฐ ์ตœ์ ํ™” ์ง€์—ฐ์ด ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Œ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. OpenJ9๊ฐ€ ๋™์ž‘์„ ์ž˜๋ชป ํ•ด์„ํ•˜๋Š” ๊ฒฝ์šฐ, ๊ฒฐ๊ณผ์ ์œผ๋กœ ๋ฐœ์ƒํ•˜๋Š” ๊ฐ•๋“ฑ ์ฃผ๊ธฐ๋Š” GraalVM์˜ ์žฌ์ปดํŒŒ์ผ ์บ์Šค์ผ€์ด๋“œ๋ณด๋‹ค ๋” ๋นˆ๋ฒˆํ•˜์ง€๋งŒ ์‹ฌ๊ฐ๋„๋Š” ๋‚ฎ์€ ๊ฒฝํ–ฅ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

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

JFR, ๋กœ๊ทธ ๋ฐ ํ˜ธ์ถœ ๊ทธ๋ž˜ํ”„ ๊ตฌ์กฐ์˜ ์ƒ๊ด€ ๊ด€๊ณ„๋ฅผ ํ†ตํ•œ ํ‹ฐ์–ด ์“ฐ๋ž˜์‹œ ๊ฐ์ง€

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

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

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

ํ•ซ ์ฝ”๋“œ ๊ฒฝ๋กœ์—์„œ ํ”„๋ ˆ์ž„์›Œํฌ๋กœ ์ธํ•œ ์˜ˆ์ธก ๋ถˆ๊ฐ€๋Šฅ์„ฑ ๊ฒฉ๋ฆฌ

์ตœ์‹  ์—”ํ„ฐํ”„๋ผ์ด์ฆˆ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ํ”„๋ ˆ์ž„์›Œํฌ, ์ข…์†์„ฑ ์ฃผ์ž… ์ปจํ…Œ์ด๋„ˆ, ๋™์  ํ”„๋ก์‹œ, ๋ฆฌํ”Œ๋ ‰์…˜, ๊ทธ๋ฆฌ๊ณ  ์–ด๋…ธํ…Œ์ด์…˜ ๊ธฐ๋ฐ˜ ๋™์ž‘์— ํฌ๊ฒŒ ์˜์กดํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์ถ”์ƒํ™”๋Š” ๊ฐœ๋ฐœ ์†๋„๋ฅผ ๋†’์ด์ง€๋งŒ, JIT ์ตœ์ ํ™”๋ฅผ ๋ถˆ์•ˆ์ •ํ•˜๊ฒŒ ๋งŒ๋“œ๋Š” ์‹คํ–‰ ๊ฐ€๋ณ€์„ฑ์„ ์•ผ๊ธฐํ•ฉ๋‹ˆ๋‹ค. ์†Œ์Šค ์ฝ”๋“œ์—์„œ๋Š” ๊ฐ„๋‹จํ•ด ๋ณด์ด๋Š” ํ•ซ ํŒจ์Šค(hot path)๋Š” ํ”„๋ ˆ์ž„์›Œํฌ์—์„œ ์ƒ์„ฑ๋œ ์—ฌ๋Ÿฌ ๊ณ„์ธต์˜ ๊ฐ„์ ‘ ์ฐธ์กฐ๋ฅผ ๊ฐ€๋ฆด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๊ณ„์ธต์€ ๊ฐœ๋ฐœ์ž๊ฐ€ ์ธ์ง€ํ•˜์ง€ ๋ชปํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ํ˜ธ์ถœ ๊ตฌ์กฐ๋ฅผ ๋ณ€๊ฒฝํ•˜๊ณ , ์ถ”๊ฐ€์ ์ธ ์œ ํ˜•์„ ๋„์ž…ํ•˜๋ฉฐ, ๋ถ„๊ธฐ ๋™์ž‘์„ ๋ณ€๊ฒฝํ•ฉ๋‹ˆ๋‹ค. ์ด๋กœ ์ธํ•œ ์˜ˆ์ธก ๋ถˆ๊ฐ€๋Šฅ์„ฑ์€ ๋‹ค์Œ์—์„œ ์„ค๋ช…ํ•œ ์šฐ๋ ค ์‚ฌํ•ญ๊ณผ ์ผ์น˜ํ•ฉ๋‹ˆ๋‹ค. ์†Œํ”„ํŠธ์›จ์–ด ์ธํ…”๋ฆฌ์ „์Šค ๊ฐœ์š”์‹œ์Šคํ…œ ๋™์ž‘์„ ์ดํ•ดํ•˜๊ธฐ ์œ„ํ•ด ๋” ๊นŠ์€ ๊ฐ€์‹œ์„ฑ์ด ํ•„์š”ํ•œ ๊ฒฝ์šฐ์ž…๋‹ˆ๋‹ค. ํ•ซ ์ฝ”๋“œ ๊ฒฝ๋กœ๋Š” JIT๊ฐ€ ์›Œ๋ฐ์—… ์ค‘์— ์„ค์ •๋œ ์˜ˆ์ƒ๊ณผ ๋‹ค๋ฅธ ๋Ÿฐํƒ€์ž„ ์‹ ํ˜ธ๋ฅผ ์ˆ˜์‹ ํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์ตœ์ ํ™” ํ•ด์ œ์— ์ทจ์•ฝํ•ด์ง‘๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์ •๋ ฌ ์˜ค๋ฅ˜๋Š” ์ถ”์ธก์  ๋ฌดํšจํ™”์˜ ๋นˆ๋„๋ฅผ ์ฆ๊ฐ€์‹œ์ผœ ์‹ค์ œ ์›Œํฌ๋กœ๋“œ์—์„œ ์„ฑ๋Šฅ ์ €ํ•˜๋กœ ์ด์–ด์ง‘๋‹ˆ๋‹ค.

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

ํ”„๋ก์‹œ ํญ๋ฐœ ๊ฐ์ง€ ๋ฐ ์œ ํ˜• ํ”„๋กœํ•„์— ๋ฏธ์น˜๋Š” ์˜ํ–ฅ

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

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

๊ฒฝ์šฐ์— ๋”ฐ๋ผ ํŒ€์€ ํ”„๋ ˆ์ž„์›Œํฌ ๊ธฐ๋ฐ˜ ๋™์ž‘์„ ์‚ฌ์ „ ๊ณ„์‚ฐ๋œ ๋งคํ•‘์ด๋‚˜ ๊ฐ€๋ฒผ์šด ๋””์ŠคํŒจ์น˜ ํ…Œ์ด๋ธ”๋กœ ๋Œ€์ฒดํ•˜์—ฌ ํ•ซ ํŒจ์Šค์—์„œ ํ”„๋ก์‹œ๋ฅผ ์™„์ „ํžˆ ์ œ๊ฑฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ์œ ํ˜• ๋ณ€๋™์ด ์ค„์–ด๋“ค๊ณ  JIT ์˜ˆ์ธก ๊ฐ€๋Šฅ์„ฑ์ด ๋ณต์›๋ฉ๋‹ˆ๋‹ค. ํ”„๋ก์‹œ๋ฅผ ์œ ์ง€ํ•ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ, ๋‚ด๋ถ€ ๋ฃจํ”„๋‚˜ ์„ฑ๋Šฅ์ด ์ค‘์š”ํ•œ ํ๋ฆ„ ์™ธ๋ถ€๋กœ ๊ฒฉ๋ฆฌํ•˜๋ฉด ์ตœ์ ํ™” ์•ˆ์ •์„ฑ์„ ์œ ์ง€ํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค.

๋ฐ˜์‚ฌ ๊ธฐ๋ฐ˜ ์ž‘์—…์ด ์ธ๋ผ์ด๋‹ ๋ฐ ํ”„๋กœํŒŒ์ผ๋ง ์•ˆ์ •์„ฑ์„ ๋ฐฉํ•ดํ•˜๋Š” ๋ฐฉ์‹

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

๋ฆฌํ”Œ๋ ‰์…˜์€ ์ง๋ ฌํ™” ํ”„๋ ˆ์ž„์›Œํฌ, ๋™์  ๋ผ์šฐํŒ… ์‹œ์Šคํ…œ, ORM ๋„๊ตฌ ๋ฐ ์–ด๋…ธํ…Œ์ด์…˜ ํ”„๋กœ์„ธ์„œ์—์„œ ํ”ํžˆ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ๋ฆฌํ”Œ๋ ‰์…˜์ด ํ•ซ ํŒจ์Šค(hot path) ๋‚ด์—์„œ ๋ฐœ์ƒํ•˜๋ฉด ์ธ๋ผ์ธ ์žฅ๋ฒฝ ์—ญํ• ์„ ํ•˜๋ฉฐ ํƒ€์ž… ์‚ฌ์šฉ์— ๊ฐ€๋ณ€์„ฑ์„ ์ดˆ๋ž˜ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ํŠน์„ฑ์€ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์˜ํ–ฅ์„ ๋ฐ›๋Š” ์•„ํ‚คํ…์ฒ˜์—์„œ ๋‚˜ํƒ€๋‚˜๋Š” ์˜ˆ์ธก ๋ถˆ๊ฐ€๋Šฅ์„ฑ์„ ๋ชจ๋ฐฉํ•ฉ๋‹ˆ๋‹ค. ์—”ํ„ฐํ”„๋ผ์ด์ฆˆ ํ†ตํ•ฉ ํŒจํ„ด๋™์  ๋™์ž‘์œผ๋กœ ์ธํ•ด ์˜ˆ์ธก ๊ฐ€๋Šฅํ•œ ์‹คํ–‰ ํ๋ฆ„์ด ๋ฐฉํ•ด๋ฐ›๋Š” ๊ฒฝ์šฐ์ž…๋‹ˆ๋‹ค.

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

๊ฒฐํ•ฉ๋œ ์ •์  ๋ฐ ๋Ÿฐํƒ€์ž„ ๋ทฐ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ”„๋ ˆ์ž„์›Œํฌ ํ•ซ์ŠคํŒŸ ์‹๋ณ„

ํ”„๋ ˆ์ž„์›Œํฌ๋กœ ์ธํ•œ ์„ฑ๋Šฅ ๋ฌธ์ œ๋Š” ์ถ”์ƒํ™” ๊ณ„์ธต ๋’ค์— ์ˆจ์–ด ์žˆ๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์•„ ์ •์  ๋ถ„์„๋งŒ์œผ๋กœ๋Š” ์ง„๋‹จํ•˜๊ธฐ ์–ด๋ ต์Šต๋‹ˆ๋‹ค. ๋Ÿฐํƒ€์ž„ ํ”„๋กœํŒŒ์ผ๋ง์€ ์‹คํ–‰ ํŠน์„ฑ์„ ๋ณด์—ฌ์ฃผ์ง€๋งŒ, ๊ตฌ์กฐ์  ๋งฅ๋ฝ์ด ์—†๋‹ค๋ฉด ํŒ€์€ ๋ถˆ์•ˆ์ •์„ฑ์˜ ์›์ธ์„ ์ž˜๋ชป ํ•ด์„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํšจ๊ณผ์ ์ธ ์ง„๋‹จ์„ ์œ„ํ•ด์„œ๋Š” ์ •์  ์ข…์†์„ฑ ๋งคํ•‘๊ณผ ๋Ÿฐํƒ€์ž„ ์›๊ฒฉ ์ธก์ •์„ ๊ฒฐํ•ฉํ•ด์•ผ ํ•˜๋ฉฐ, ์ด๋Š” ๋ณธ ๋ฌธ์„œ์—์„œ ์„ค๋ช…ํ•œ ๊ตฌ์กฐ์  ํ†ต์ฐฐ๋ ฅ๊ณผ ๋ถ€ํ•ฉํ•ฉ๋‹ˆ๋‹ค. ํ˜„๋Œ€ํ™” ๋„๊ตฌ ๊ฐœ์š”์ด๋Ÿฌํ•œ ์กฐํ•ฉ์„ ํ†ตํ•ด ํŒ€์€ JIT ์ด๋ฒคํŠธ์™€ ํ”„๋ ˆ์ž„์›Œํฌ๋ณ„ ์ž‘์—…์„ ์—ฐ๊ด€์‹œํ‚ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

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

์ด๋Ÿฌํ•œ ํ†ตํ•ฉ์ ์ธ ์ ‘๊ทผ ๋ฐฉ์‹์€ ์–ด๋–ค ํ”„๋ ˆ์ž„์›Œํฌ ์„ธ๊ทธ๋จผํŠธ๊ฐ€ ํ”„๋กœํŒŒ์ผ๋ง ๋ถˆ์•ˆ์ •์„ฑ์— ๊ฐ€์žฅ ํฐ ์˜ํ–ฅ์„ ๋ฏธ์น˜๋Š”์ง€ ํŒŒ์•…ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์ •๋ณด๋ฅผ ํ†ตํ•ฉํ•จ์œผ๋กœ์จ ์กฐ์ง์€ ํ”„๋ ˆ์ž„์›Œํฌ ํŽธ์˜์„ฑ์„ ์œ ์ง€ํ•˜๋ฉด์„œ๋„ ํ•ซ ํŒจ์Šค ์„ฑ๋Šฅ์„ ๋ณดํ˜ธํ•˜๋Š” ๋งž์ถคํ˜• ๊ฐœ์„  ์ „๋žต์„ ์ˆ˜๋ฆฝํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ฒฝ๊ณ„ ๊ฒฉ๋ฆฌ ๋ฐ ํŠน์ˆ˜ ์‹คํ–‰ ๊ฒฝ๋กœ๋ฅผ ํ†ตํ•œ ํ”„๋ ˆ์ž„์›Œํฌ ๊ฐ€๋ณ€์„ฑ ๊ฐ์†Œ

๋ถˆ์•ˆ์ •ํ•œ ํ”„๋ ˆ์ž„์›Œํฌ ์„ธ๊ทธ๋จผํŠธ๊ฐ€ ์‹๋ณ„๋˜๋ฉด ๊ฒฝ๊ณ„ ๊ฒฉ๋ฆฌ๊ฐ€ ์‹คํ–‰์„ ์•ˆ์ •ํ™”ํ•˜๋Š” ์ฃผ์š” ๋ฐฉ๋ฒ•์ด ๋ฉ๋‹ˆ๋‹ค. ๊ฒฝ๊ณ„ ๊ฒฉ๋ฆฌ๋Š” ๋™์  ๋™์ž‘์„ ์บก์Аํ™”ํ•˜๊ณ  ์„ฑ๋Šฅ์ด ์ค‘์š”ํ•œ ์˜์—ญ์œผ๋กœ ๋ˆ„์ถœ๋˜๋Š” ๊ฒƒ์„ ๋ฐฉ์ง€ํ•˜๋Š” ๋ช…ํ™•ํ•˜๊ฒŒ ์ •์˜๋œ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๋งŒ๋“œ๋Š” ๊ฒƒ์„ ํฌํ•จํ•ฉ๋‹ˆ๋‹ค. ์ด ์ ‘๊ทผ ๋ฐฉ์‹์€ ๋‹ค์Œ์—์„œ ์„ค๋ช…ํ•œ ์ฒด๊ณ„์ ์ธ ๊ฒฝ๊ณ„ ์„ธ๋ถ„ํ™”์™€ ์œ ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ์ง„ํ–‰ ํ๋ฆ„ ๊ด€ํ–‰์ข…์†์„ฑ์„ ์žฌ๊ตฌ์„ฑํ•˜๋ฉด ์‹œ์Šคํ…œ์˜ ์ทจ์•ฝ์„ฑ์ด ์ค„์–ด๋“ญ๋‹ˆ๋‹ค.

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

์ตœ์ข… ๊ฒฐ๊ณผ๋Š” JIT๊ฐ€ ์•ˆ์ •์ ์ธ ์ถ”์ธก์  ๊ฐ€์ •์„ ํ˜•์„ฑํ•˜๊ณ , ์ตœ์ ํ™” ํ•ด์ œ ์ด๋ฒคํŠธ๋ฅผ ์ค„์ด๊ณ , ๋ถ„์‚ฐ ์‹œ์Šคํ…œ ์ „๋ฐ˜์—์„œ ์„ฑ๋Šฅ ์ผ๊ด€์„ฑ์„ ๊ฐœ์„ ํ•  ์ˆ˜ ์žˆ๋Š” ์˜ˆ์ธก ๊ฐ€๋Šฅํ•œ ์‹คํ–‰ ํ™˜๊ฒฝ์ž…๋‹ˆ๋‹ค.

์ตœ์ ํ™” ํ•ด์ œ ์ด๋ฒคํŠธ๋ฅผ ํŠธ๋ฆฌ๊ฑฐํ•˜๋Š” ๊ณ ์œ„ํ—˜ ์ข…์†์„ฑ ๋ฆฌํŒฉํ† ๋ง

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

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

์˜ํ–ฅ ์ค‘์‹ฌ ๋ถ„์„์„ ํ†ตํ•œ ๊ณ ์œ„ํ—˜ ์ข…์†์„ฑ ๊ฐ์ง€

JIT ๋™์ž‘์„ ์•ˆ์ •ํ™”ํ•˜๋Š” ์ฒซ ๋ฒˆ์งธ ๋‹จ๊ณ„๋Š” ์–ด๋–ค ์ข…์†์„ฑ์ด ์‹œ์Šคํ…œ ์ „์ฒด์— ๋ณ€๋™์„ฑ์„ ์œ ๋ฐœํ•˜๋Š”์ง€ ํŒŒ์•…ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์˜ํ–ฅ ์ค‘์‹ฌ ๋ถ„์„์„ ํ†ตํ•ด ํŒ€์€ ์ข…์†์„ฑ์ด ์–ด๋””์—์„œ ์‚ฌ์šฉ๋˜๋Š”์ง€, ํ•ซ ํŒจ์Šค(hot path)์— ์–ผ๋งˆ๋‚˜ ์ž์ฃผ ๋‚˜ํƒ€๋‚˜๋Š”์ง€, ๊ทธ๋ฆฌ๊ณ  ์ข…์†์„ฑ์˜ ๋™์ž‘์ด ํ”„๋กœํŒŒ์ผ๋ง ๋ฐ์ดํ„ฐ์— ์–ด๋–ค ์˜ํ–ฅ์„ ๋ฏธ์น˜๋Š”์ง€ ๊ด€์ฐฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๊ธฐ์ˆ ์€ ์ •์  ์ข…์†์„ฑ ๋งคํ•‘๊ณผ ๋Ÿฐํƒ€์ž„ ์›๊ฒฉ ์ธก์ •์„ ๊ฒฐํ•ฉํ•˜์—ฌ JIT ์ตœ์ ํ™” ํ•ด์ œ๊ฐ€ ์–ด๋””์—์„œ ๋ฐœ์ƒํ•˜๊ณ  ํ˜ธ์ถœ ๊ทธ๋ž˜ํ”„ ์ „์ฒด์— ์–ด๋–ป๊ฒŒ ์ „ํŒŒ๋˜๋Š”์ง€๋ฅผ ํŒŒ์•…ํ•ฉ๋‹ˆ๋‹ค.

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

ํŒ€์€ JFR ๊ธฐ๋ก, JIT ๋กœ๊ทธ ๋ฐ ๊ตฌ์กฐ ๋ถ„์„ ๊ฒฐ๊ณผ๋ฅผ ๊ฒฐํ•ฉํ•˜์—ฌ ์ตœ์ ํ™” ํ•ด์ œ ์ด๋ฒคํŠธ์—์„œ ๋ฐ˜๋ณต์ ์œผ๋กœ ๋‚˜ํƒ€๋‚˜๋Š” ์ข…์†์„ฑ์„ ์ฐพ์•„๋‚ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์ข…์†์„ฑ์€ ํ”„๋กœํŒŒ์ผ๋ง ํŠน์„ฑ์„ ์•ˆ์ •ํ™”ํ•˜๊ณ  ๋ฌดํšจํ™” ๋นˆ๋„๋ฅผ ์ค„์ด๊ธฐ ์œ„ํ•œ ์ง‘์ค‘์ ์ธ ๋ฆฌํŒฉํ† ๋ง ์ž‘์—…์˜ ์ฃผ์š” ํ›„๋ณด๊ฐ€ ๋ฉ๋‹ˆ๋‹ค.

์ธํ„ฐํŽ˜์ด์Šค ๋ถ„ํ•  ๋ฐ ๋ชจ๋“ˆ ๊ฒฝ๊ณ„๋ฅผ ํ†ตํ•œ ์ข…์†์„ฑ ๋ณ€๋™์„ฑ ๊ฐ์†Œ

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

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

๋ชจ๋“ˆ์‹ ๊ฒฝ๊ณ„ ์„ธ๋ถ„ํ™”๋Š” ๋™์ผํ•œ ์ถ”์ƒํ™”๋ฅผ ์ˆ˜์ •ํ•˜๋Š” ํŒ€์˜ ์ˆ˜๋ฅผ ์ค„์—ฌ์„œ ์ธํ„ฐํŽ˜์ด์Šค ๋ณ€๊ฒฝ์œผ๋กœ ์ธํ•œ ์—…๋ฌด ์ค‘๋‹จ ์œ„ํ—˜์„ ์ค„์ž…๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ์„ฑ๋Šฅ์— ์ค‘์š”ํ•œ ๋ชจ๋“ˆ์ด ์•ˆ์ •์ ์ด๊ณ  ์˜ˆ์ธก ๊ฐ€๋Šฅํ•œ ๊ตฌ์„ฑ ์š”์†Œ์—๋งŒ ์˜์กดํ•˜๋„๋ก ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ณต์œ  ์œ ํ‹ธ๋ฆฌํ‹ฐ ๋ชจ๋“ˆ์˜ ์•ˆ์ •ํ™” ๋™์ž‘

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

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

์ด ๊ตฌ์กฐ ์กฐ์ •์€ ๋‹ค์Œ์— ์„ค๋ช…๋œ ์ฒด๊ณ„์ ์ธ ๊ฐœ์„ ์„ ๋ฐ˜์˜ํ•ฉ๋‹ˆ๋‹ค. ํ˜„๋Œ€ํ™” ๋„๊ตฌ ๊ฐœ์š”์˜ˆ์ธก ๊ฐ€๋Šฅ์„ฑ์„ ์œ ์ง€ํ•˜๊ธฐ ์œ„ํ•ด ๋ณต์žกํ•œ ํ–‰๋™์„ ๋ถ„๋ฆฌํ•˜๋Š” ๊ฒƒ์„ ๊ฐ•์กฐํ•ฉ๋‹ˆ๋‹ค. ๊ณต์œ  ์œ ํ‹ธ๋ฆฌํ‹ฐ์˜ ์•ˆ์ •์„ฑ๊ณผ ์˜ˆ์ธก ๊ฐ€๋Šฅ์„ฑ์„ ๋ณด์žฅํ•จ์œผ๋กœ์จ ์กฐ์ง์€ ๊ด‘๋ฒ”์œ„ํ•œ ์ตœ์ ํ™” ์‹คํŒจ ์œ„ํ—˜์„ ์ค„์ด๊ณ  ์ •์ƒ ์ƒํƒœ ์„ฑ๋Šฅ์„ ๊ฐœ์„ ํ•ฉ๋‹ˆ๋‹ค.

๊ตฌ์กฐ์  ๋ฆฌํŒฉํ† ๋ง์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ชจ๋“ˆ ๊ฐ„ ํญ๋ฐœ ๋ฐ˜๊ฒฝ ์ตœ์†Œํ™”

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

๊ตฌ์กฐ์  ๋ฆฌํŒฉํ† ๋ง์€ ์ข…์†์„ฑ์„ ์žฌ๊ตฌ์„ฑํ•˜๊ณ , ๋ถˆ์•ˆ์ •ํ•œ ๊ตฌ์„ฑ ์š”์†Œ๋ฅผ ์•ˆ์ •์ ์ธ ๊ตฌ์„ฑ ์š”์†Œ์—์„œ ๋ถ„๋ฆฌํ•˜๊ณ , ๋ชจ๋“ˆ ์†Œ์œ ๊ถŒ์„ ์กฐ์ •ํ•จ์œผ๋กœ์จ ์ด๋Ÿฌํ•œ ํญ๋ฐœ ๋ฐ˜๊ฒฝ์„ ํฌ๊ฒŒ ์ค„์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๊ธฐ์ˆ ์—๋Š” ํŠน์ˆ˜ ์ธํ„ฐํŽ˜์ด์Šค ์ถ”์ถœ, ๋™์  ๋™์ž‘์„ ํ•ซ ํŒจ์Šค(hot path)์—์„œ ๋‹ค๋ฅธ ๊ณณ์œผ๋กœ ์ด๋™, ๋˜๋Š” ๊ธฐ๋Šฅ์  ํŽธ์˜์„ฑ๋ณด๋‹ค๋Š” ์‹ค์ œ ์‹คํ–‰ ๋นˆ๋„๋ฅผ ๋ฐ˜์˜ํ•˜๋„๋ก ์ข…์†์„ฑ ๊ณ„์ธต ๊ตฌ์กฐ๋ฅผ ์žฌ์„ค๊ณ„ํ•˜๋Š” ๊ฒƒ์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค.

์ด๋Ÿฌํ•œ ์ˆ˜์ • ์‚ฌํ•ญ์€ ๋‹ค์Œ์— ์„ค๋ช…๋œ ๊ตฌ์กฐ ์กฐ์ • ์ ‘๊ทผ ๋ฐฉ์‹์„ ๋ฐ˜์˜ํ•ฉ๋‹ˆ๋‹ค. ์ง„ํ–‰ ํ๋ฆ„ ๊ด€ํ–‰๊ฒฝ๊ณ„๋ฅผ ์žฌํŽธํ•˜๋ฉด ์‹œ์Šคํ…œ ์ทจ์•ฝ์„ฑ์ด ์ค„์–ด๋“ญ๋‹ˆ๋‹ค. ์ข…์†์„ฑ ๊ตฌ์กฐ๊ฐ€ ๊ธฐ๋Šฅ์  ์—ญํ• ๋ฟ ์•„๋‹ˆ๋ผ ์„ฑ๋Šฅ ์š”๊ตฌ ์‚ฌํ•ญ์— ๋งž์ถฐ ์กฐ์ •๋  ๋•Œ, ์‹œ์Šคํ…œ์€ ์—ฐ์‡„์ ์ธ ์ตœ์ ํ™” ์‹คํŒจ ์‚ฌ๊ฑด์— ๋Œ€ํ•ด ํ›จ์”ฌ ๋” ํšŒ๋ณต๋ ฅ์ด ๋†’์•„์ง‘๋‹ˆ๋‹ค.

JIT ์˜ˆ์ธก ๋ถˆ๊ฐ€๋Šฅ์„ฑ์„ ์ค„์ด๊ธฐ ์œ„ํ•œ ํด๋ž˜์Šค ๋กœ๋” ์กฐ๊ฐํ™” ์ตœ์†Œํ™”

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

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

ํด๋ž˜์Šค ๋กœ๋” ๋ฐ ์œ ํ˜• ํ”„๋กœํŒŒ์ผ ์ƒ๊ด€ ๊ด€๊ณ„๋ฅผ ํ†ตํ•œ ์กฐ๊ฐํ™” ์‹๋ณ„

ํด๋ž˜์Šค ๋กœ๋” ๋‹จํŽธํ™”๋ฅผ ์ค„์ด๋Š” ์ฒซ ๋ฒˆ์งธ ๋‹จ๊ณ„๋Š” ์ค‘๋ณต๋˜๊ฑฐ๋‚˜ ์ถฉ๋Œํ•˜๋Š” ํด๋ž˜์Šค ์ •์˜์˜ ์›์ธ์„ ํŒŒ์•…ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋งŽ์€ ์‹œ์Šคํ…œ์—์„œ ํด๋ž˜์Šค ์ค‘๋ณต์€ ๊ตฌ์„ฑ ๋ถˆ์ผ์น˜, ์ผ๊ด€์„ฑ ์—†๋Š” ๋นŒ๋“œ ์•„ํ‹ฐํŒฉํŠธ, ๋˜๋Š” ์ข…์†์„ฑ ์…ฐ์ด๋”ฉ ๋ฐฉ์‹ ๋•Œ๋ฌธ์— ์˜๋„์น˜ ์•Š๊ฒŒ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์ค‘๋ณต์ด ์„œ๋กœ ๋‹ค๋ฅธ ํด๋ž˜์Šค ๋กœ๋”์—์„œ ๋กœ๋“œ๋˜๋ฉด ํ˜ธ์ถœ ์ง€์ ์˜ ์œ ํ˜• ๋ฐ€๋„๊ฐ€ ์ฆ๊ฐ€ํ•˜๊ณ  JIT์— ํ˜ผ๋ž€์„ ์ดˆ๋ž˜ํ•ฉ๋‹ˆ๋‹ค.

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

ํŒŒํŽธํ™”๊ฐ€ ์‹๋ณ„๋˜๋ฉด ์กฐ์ง์€ ํด๋ž˜์Šค ๋กœ๋” ํ†ตํ•ฉ, ์ข…์†์„ฑ ์…ฐ์ด๋”ฉ ์ˆ˜์ •, ์ค‘๋ณต๋œ jar ๋ณ€ํ˜• ์ œ๊ฑฐ๋ฅผ ํ†ตํ•ด ํŒŒํŽธํ™”๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํด๋ž˜์Šค ๋กœ๋” ๊ฒฝ๊ณ„ ์ˆ˜๋ฅผ ์ค„์ด๋ฉด ํ”„๋กœํŒŒ์ผ๋ง ์ •ํ™•๋„๊ฐ€ ํ–ฅ์ƒ๋˜๊ณ  ์ถ”์ธก ๊ฐ€์ •์— ๋Œ€ํ•œ JIT ์‹ ๋ขฐ๋„๊ฐ€ ํšŒ๋ณต๋ฉ๋‹ˆ๋‹ค.

์œ ํ˜• ์ฐจ์ด๋ฅผ ์ตœ์†Œํ™”ํ•˜๊ธฐ ์œ„ํ•œ ํด๋ž˜์Šค ๋กœ๋” ํ†ตํ•ฉ

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

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

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

์„ฑ๋Šฅ์ด ์ค‘์š”ํ•œ ์˜์—ญ์—์„œ ๋™์  ํด๋ž˜์Šค ๋กœ๋” ์ƒ์„ฑ ๋ฐฉ์ง€

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

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

ํด๋ž˜์Šค ๋กœ๋”๊ฐ€ ์‹คํ–‰๋˜๋Š” ๋™์•ˆ ์ •์  ์ƒํƒœ๋ฅผ ์œ ์ง€ํ•จ์œผ๋กœ์จ ์กฐ์ง์—์„œ๋Š” ํด๋ž˜์Šค ์ •์˜์˜ ๋ณ€๋™์„ฑ์„ ์ค„์ด๊ณ  JIT ์ผ๊ด€์„ฑ์„ ๊ฐœ์„ ํ•ฉ๋‹ˆ๋‹ค.

๋ชจ๋“ˆ ๋ฆฌํŒฉํ† ๋ง ๋ฐ ์ข…์†์„ฑ ์žฌ์ •๋ ฌ์„ ํ†ตํ•œ ์กฐ๊ฐํ™” ๊ฐ์†Œ

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

๋ชจ๋“ˆ ๋ฆฌํŒฉํ† ๋ง์€ ์‹คํ–‰ ํ๋ฆ„์— ๋”ฐ๋ผ ์ข…์†์„ฑ์„ ์žฌ์ •๋ ฌํ•ฉ๋‹ˆ๋‹ค. ํŒ€์€ ๋ชจ๋“ˆ ๊ณ„์ธต์„ ์กฐ์ •ํ•˜๊ณ , ๊ณต์œ  ๋กœ์ง์„ ์•ˆ์ •์ ์ธ ํ•ต์‹ฌ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋กœ ์žฌ๋ฐฐ์น˜ํ•˜๊ฑฐ๋‚˜, โ€‹โ€‹๋ชจ๋“ˆ ๊ฐ„ ์ข…์†์„ฑ ๋ฒ„์ „์„ ํ†ตํ•ฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๋…ธ๋ ฅ์€ ๋‹ค์Œ์—์„œ ๊ถŒ์žฅํ•˜๋Š” ๊ตฌ์กฐ์  ๊ฐœ์„  ์‚ฌํ•ญ์„ ๋ฐ˜์˜ํ•ฉ๋‹ˆ๋‹ค. ์ง„ํ–‰ ํ๋ฆ„ ๊ด€ํ–‰๊ฒฝ๊ณ„๋ฅผ ์žฌ์กฐ์งํ•˜๋ฉด ์‹œ์Šคํ…œ์˜ ์ทจ์•ฝ์„ฑ์ด ์ค„์–ด๋“ค๊ณ  ์‹คํ–‰ ๊ฒฝ๋กœ๊ฐ€ ๋ช…ํ™•ํ•ด์ง‘๋‹ˆ๋‹ค.

๋ฆฌํŒฉํ† ๋ง์€ ํด๋ž˜์Šค ๋กœ๋” ์ „ํ™˜ ๋นˆ๋„๋ฅผ ์ค„์ด๊ณ , ์œ ํ˜• ์ฐจ์ด๋ฅผ ๋ฐฉ์ง€ํ•˜๋ฉฐ, ์ž์ฃผ ํ˜ธ์ถœ๋˜๋Š” ๊ตฌ์„ฑ ์š”์†Œ๊ฐ€ ์ผ๊ด€๋œ ์ •์˜๋ฅผ ๊ณต์œ ํ•˜๋„๋ก ๋ณด์žฅํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ์ ์œผ๋กœ JIT ์ถ”์ธก ์ตœ์ ํ™”์˜ ์ง€์†์„ฑ์ด ๋†’์•„์ง€๊ณ  ์‹œ์Šคํ…œ ์ „์ฒด์—์„œ ์ตœ์ ํ™” ํ•ด์ œ ์ด๋ฒคํŠธ๊ฐ€ ๋œ ๋นˆ๋ฒˆํ•ด์ง‘๋‹ˆ๋‹ค.

์ง€์  ๋ฐ ๋ฐ์ดํ„ฐ ํ๋ฆ„ ๋ณ€๋™์„ฑ์„ ์ค„์—ฌ ์•ˆ์ •์ ์ธ ํ•ซ ๊ฒฝ๋กœ ๊ตฌ์ถ•

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

๋ฐ์ดํ„ฐ ํ๋ฆ„์˜ ๋ณ€๋™์„ฑ์€ ์ƒํ™ฉ์„ ๋”์šฑ ๋ณต์žกํ•˜๊ฒŒ ๋งŒ๋“ญ๋‹ˆ๋‹ค. ํŽ˜์ด๋กœ๋“œ ํ˜•ํƒœ, ๊ฐ์ฒด ์ˆ˜๋ช… ์ฃผ๊ธฐ ๋˜๋Š” ๋ฐ์ดํ„ฐ ๋ผ์šฐํŒ…์˜ ์ฐจ์ด๋กœ ์ธํ•ด JIT๋Š” ์‹ค์ œ ์›Œํฌ๋กœ๋“œ์—์„œ ์‹คํŒจํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ€๋“œ๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. JVM ์ปดํŒŒ์ผ๋Ÿฌ๋Š” ์ข…์ข… ์•ˆ์ •์ ์ธ ํ• ๋‹น ํŒจํ„ด, ์˜ˆ์ธก ๊ฐ€๋Šฅํ•œ ๊ฐ์ฒด ํ˜•ํƒœ, ๊ทธ๋ฆฌ๊ณ  ์ผ๊ด€๋œ ํ•„๋“œ ์ ‘๊ทผ ๋™์ž‘์— ์˜์กดํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๊ฒƒ๋“ค์ด ์˜ˆ์ธกํ•  ์ˆ˜ ์—†๋Š” ๋ฐฉ์‹์œผ๋กœ ๋ฐ”๋€Œ๋ฉด ์ตœ์ ํ™”๋œ ํ”„๋ ˆ์ž„์ด ๋ฌดํšจํ™”๋˜๊ณ  JIT๋Š” ํ•ด์„๋œ ์‹คํ–‰์ด๋‚˜ ํ•˜์œ„ ๊ณ„์ธต ์‹คํ–‰์œผ๋กœ ๋Œ์•„๊ฐ‘๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์—ญํ•™์€ ๋‹ค์Œ์—์„œ ๋ณผ ์ˆ˜ ์žˆ๋Š” ๋ถˆ์•ˆ์ •์„ฑ ํŒจํ„ด์„ ๋ฐ˜์˜ํ•ฉ๋‹ˆ๋‹ค. ์ œ์–ด ํ๋ฆ„ ํ†ต์ฐฐ๋ ฅ๊ฐ€๋ณ€์ ์ธ ์ž…๋ ฅ์ด ์ตœ์ ํ™” ๊ธฐํšŒ๋ฅผ ์ €ํ•ดํ•˜๋Š” ๊ฒฝ์šฐ, ์ด๋Ÿฌํ•œ ๋ณ€๋™์„ฑ์„ ์ค„์ด๋ฉด ํ•ซ ํŒจ์Šค(hot path)์˜ ์˜ˆ์ธก ๊ฐ€๋Šฅ์„ฑ์ด ์œ ์ง€๋˜์–ด ์ถ”์ธก ์ตœ์ ํ™”์˜ ์ง€์†์„ฑ์ด ํ–ฅ์ƒ๋ฉ๋‹ˆ๋‹ค.

๋‹ค์–‘ํ•œ ์ž‘์—… ๋ถ€ํ•˜์— ๋”ฐ๋ผ ์ด๋™ํ•˜๋Š” ์ง€์  ํ•ซ์ŠคํŒŸ ๊ฐ์ง€

๋ถ„๊ธฐ ํ•ซ์ŠคํŒŸ์€ ์ž…๋ ฅ ๋ฐ์ดํ„ฐ, ์‚ฌ์šฉ์ž ์ž‘์—… ๋˜๋Š” ์šด์˜ ๋ชจ๋“œ์— ๋”ฐ๋ผ ๋ถ„๊ธฐ ๋™์ž‘์ด ๋ณ€๊ฒฝ๋  ๋•Œ ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, ๊ธฐ๋Šฅ ํ† ๊ธ€๋กœ ์ธํ•ด ์ƒˆ๋กœ์šด ์ฝ”๋“œ ๊ฒฝ๋กœ๊ฐ€ ๋„์ž…๋˜๊ฑฐ๋‚˜, ๋ผ์šฐํŒ… ๋กœ์ง์ด ๊ณ ๊ฐ ์†์„ฑ์— ๋”ฐ๋ผ ๋‹ฌ๋ผ์ง€๊ฑฐ๋‚˜, ์ตœ๋Œ€ ๋ถ€ํ•˜ ์‹œ ์„ ํƒ์  ์กฐ๊ฑด์ด ์ง€๋ฐฐ์ ์œผ๋กœ ์ ์šฉ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ํŒจํ„ด์€ JIT์˜ ๋ถ„๊ธฐ ์˜ˆ์ธก ๋ฐ ์‹คํ–‰ ๊ฐ€๋Šฅ์„ฑ์— ๋Œ€ํ•œ ์ดํ•ด๋ฅผ ๋ถˆ์•ˆ์ •ํ•˜๊ฒŒ ๋งŒ๋“ญ๋‹ˆ๋‹ค.

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

์‹ค์ œ๋กœ ๋ฆฌํŒฉํ† ๋ง์—๋Š” ์กฐ๊ฑด ๋ธ”๋ก ๋ถ„ํ• , ๋™์  ๋ถ„๊ธฐ๋ฅผ ํ”ผํ•˜๋Š” ๋น ๋ฅธ ๊ฒฝ๋กœ ๋กœ์ง ๋„์ž…, ๋˜๋Š” ์•ˆ์ •์ ์ธ ์ถ”์ƒํ™” ๋’ค์— ๋ชจ๋“œ ์ข…์† ๋™์ž‘ ๊ฒฉ๋ฆฌ ๋“ฑ์ด ์ž์ฃผ ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์กฐ์ •์„ ํ†ตํ•ด ํ•ซ ๊ฒฝ๋กœ๊ฐ€ ์ผ๊ด€๋œ ๋ถ„๊ธฐ ํ”„๋กœํ•„์„ ์œ ์ง€ํ•˜๊ณ  ์ตœ์ ํ™” ํ•ด์ œ ํŠธ๋ฆฌ๊ฑฐ๋ฅผ ์ค„์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ž…๋ ฅ ์ •๊ทœํ™” ๋ฐ ๊ฐ์ฒด ๋ชจ์–‘ ๋ณ€ํ™” ๊ฐ์†Œ๋ฅผ ํ†ตํ•œ ๋ฐ์ดํ„ฐ ํ๋ฆ„ ์•ˆ์ •ํ™”

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

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

๋ฐ์ดํ„ฐ ํ๋ฆ„ ๋ณ€๋™์„ฑ์„ ์ค„์ด๋ ค๋ฉด ๋™์  ๋ฐ์ดํ„ฐ ํŒŒ์‹ฑ์„ ์ œํ•œํ•˜๊ณ , ์กฐ๊ฑด๋ถ€ ๊ฐ์ฒด ์ƒ์„ฑ์„ ์ตœ์†Œํ™”ํ•˜๋ฉฐ, ๊ฐ€๋Šฅํ•œ ๊ฒฝ์šฐ ์‚ฌ์ „ ๊ฒ€์ฆ๋œ ํŽ˜์ด๋กœ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๊ฐœ์„ ์„ ํ†ตํ•ด JIT ๊ฐ€์ •์ด ์•ˆ์ •ํ™”๋˜๊ณ  ์ตœ์ ํ™”๋œ ํ”„๋ ˆ์ž„์˜ ์ˆ˜๋ช…์ด ์—ฐ์žฅ๋ฉ๋‹ˆ๋‹ค.

์กฐ๊ฑด๋ฌธ ๋’ค์— ์ˆจ๊ฒจ์ง„ ์„ฑ๋Šฅ์— ์ค‘์š”ํ•œ ๋А๋ฆฐ ๊ฒฝ๋กœ ์ œ๊ฑฐ

๋А๋ฆฐ ๊ฒฝ๋กœ๋Š” ์ข…์ข… ๋“œ๋ฌผ๊ฒŒ ๋ฐœ์ƒํ•˜๋Š” ์กฐ๊ฑด ๋ธ”๋ก ๋’ค์— ์ˆจ์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์ธ ์ž‘์—…์—์„œ๋Š” ๋“œ๋ฌผ๊ฒŒ ๋‚˜ํƒ€๋‚  ์ˆ˜ ์žˆ์ง€๋งŒ, ๋ฐœ์ƒํ•˜๋ฉด ๊ฐ€์ •์„ ๋ฌดํšจํ™”ํ•ฉ๋‹ˆ๋‹ค. ํ•ซ ๊ฒฝ๋กœ์— ๋“œ๋ฌผ์ง€๋งŒ ๋ณต์žกํ•œ ๋А๋ฆฐ ๊ฒฝ๋กœ๊ฐ€ ํ•˜๋‚˜๋ผ๋„ ํฌํ•จ๋œ ๊ฒฝ์šฐ, JIT๋Š” ์ด๋ฅผ ๊ณ ๋ คํ•˜๊ธฐ ์œ„ํ•ด ๋ณด์ˆ˜์ ์ธ ๊ฐ€๋“œ๋ฅผ ์ƒ์„ฑํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์šด์˜ ์ค‘์— ๋А๋ฆฐ ๊ฒฝ๋กœ๊ฐ€ ํ™œ์„ฑํ™”๋˜๋ฉด ํ•ด๋‹น ๊ฐ€๋“œ๊ฐ€ ์‹คํŒจํ•˜์—ฌ ์ตœ์ ํ™”๊ฐ€ ์ทจ์†Œ๋ฉ๋‹ˆ๋‹ค.

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

๋ฆฌํŒฉํ† ๋ง์€ ๋А๋ฆฐ ๊ฒฝ๋กœ๋ฅผ ์™ธ๋ถ€ ํ•ธ๋“ค๋Ÿฌ๋กœ ์ถ”์ถœํ•˜๊ฑฐ๋‚˜, ๋น ๋ฅธ ๊ฒฝ๋กœ ์šฐํšŒ๋ฅผ ๋„์ž…ํ•˜๊ฑฐ๋‚˜, ๊ธฐ๋Šฅ ๋กœ์ง์„ ์žฌ๊ตฌ์„ฑํ•˜๋Š” ์ž‘์—…์„ ํฌํ•จํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ๋งŽ์Šต๋‹ˆ๋‹ค. ์ผ๋ฐ˜์ ์ธ ์‹œ๋‚˜๋ฆฌ์˜ค์—์„œ ํ•ซ ๊ฒฝ๋กœ๋งŒ ํ™œ์„ฑํ™”๋œ ๊ฒฝ์šฐ, ์ถ”์ธก์  ์ตœ์ ํ™”์˜ ์ง€์†์„ฑ์ด ๋”์šฑ ๋†’์•„์ง‘๋‹ˆ๋‹ค.

๊ตฌ์กฐ ๋‹จ์ˆœํ™”๋ฅผ ํ†ตํ•œ ํ•ซ ํŒจ์Šค ์˜ˆ์ธก์„ฑ ์œ ์ง€

๊ตฌ์กฐ ๋‹จ์ˆœํ™”๋Š” ํ•ซ ํŒจ์Šค(hot path)๊ฐ€ ์‹œ๊ฐ„์ด ์ง€๋‚˜๋„ ์•ˆ์ •์ ์œผ๋กœ ์œ ์ง€๋˜๋„๋ก ๋ณด์žฅํ•ฉ๋‹ˆ๋‹ค. ์—ฌ๊ธฐ์—๋Š” ์„ฑ๋Šฅ์— ์ค‘์š”ํ•œ ์˜์—ญ์˜ ๋ณต์žก์„ฑ์„ ์ค„์ด๊ณ , ๋ฃจํ”„๋ฅผ ๋‹จ์ˆœํ™”ํ•˜๊ณ , ๋กœ์ง์„ ํ†ตํ•ฉํ•˜๊ณ , ๋ถˆํ™•์‹ค์„ฑ์„ ์œ ๋ฐœํ•˜๋Š” ๊ฐ„์ ‘ ์ฐธ์กฐ ๊ณ„์ธต์„ ์ œ๊ฑฐํ•˜๋Š” ๊ฒƒ์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. JIT ์ปดํŒŒ์ผ๋Ÿฌ๋Š” ํ˜ธ์ถœ ๊ทธ๋ž˜ํ”„์™€ ๋ถ„๊ธฐ ๊ตฌ์กฐ๊ฐ€ ๊ฐ„๊ฒฐํ•˜๊ณ  ์ผ๊ด€์„ฑ ์žˆ์„ ๋•Œ ์ตœ์ƒ์˜ ์„ฑ๋Šฅ์„ ๋ฐœํœ˜ํ•ฉ๋‹ˆ๋‹ค.

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

๋ฐ˜๋ณต์ ์ธ ๋‹จ์ˆœํ™”๋ฅผ ํ†ตํ•ด ์กฐ์ง์€ ๊ธฐ๋Šฅ์ด ์ง„ํ™”ํ•˜๋”๋ผ๋„ ์•ˆ์ •์ ์œผ๋กœ ์œ ์ง€๋˜๋Š” ํ•ซ ํŒจ์Šค(hot path)๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. ๋ถ„๊ธฐ ๋ฐ ๋ฐ์ดํ„ฐ ํ๋ฆ„ ๋ณ€๋™์„ฑ์ด ๊ฐ์†Œํ•˜๋ฉด ์ถ”์ธก์„ฑ ์‹คํŒจ๊ฐ€ ๊ฐ์†Œํ•˜๊ณ , ์ •์ƒ ์ƒํƒœ ์„ฑ๋Šฅ์ด ํ–ฅ์ƒ๋˜๋ฉฐ, ๋ถ„์‚ฐ ์›Œํฌ๋กœ๋“œ ์ „๋ฐ˜์—์„œ ์˜ˆ์ธก ๊ฐ€๋Šฅ์„ฑ์ด ๋†’์•„์ง‘๋‹ˆ๋‹ค.

์ข…์†์„ฑ ์ธ์‹ ๋ฆฌํŒฉํ† ๋ง์„ ํ†ตํ•œ ์žฅ๊ธฐ ์ตœ์ ํ™” ๊ตฌํ˜„

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

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

์ข…์†์„ฑ ๋งคํ•‘์„ ์‚ฌ์šฉํ•˜์—ฌ ์žฅ๊ธฐ ์ตœ์ ํ™” ์žฅ๋ฒฝ ์‹๋ณ„

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

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

๋งคํ•‘์€ ๋ถˆ์•ˆ์ •ํ•œ ๊ตฌ์„ฑ ์š”์†Œ๋ฅผ ๋ถ„๋ฆฌํ•˜๊ณ , ๊ณ„์ธตํ™”๋œ ๋…ผ๋ฆฌ๋ฅผ ์žฌ๊ตฌ์„ฑํ•˜๊ณ , ํ”„๋กœํŒŒ์ผ๋ง ํŒจํ„ด์„ ๋ฐ˜๋ณต์ ์œผ๋กœ ๋ณ€๊ฒฝํ•˜๋Š” ๋™์ž‘์„ ํ†ตํ•ฉํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐํšŒ๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ํ†ต์ฐฐ๋ ฅ์€ ์„ค๊ณ„์ž๊ฐ€ ์ตœ์ ํ™” ๋ณต์›๋ ฅ์„ ๊ฐ•ํ™”ํ•˜๋Š” ๊ตฌ์กฐ์  ๊ฐœ์„ ์„ ๋ชจ์ƒ‰ํ•˜๋„๋ก ์•ˆ๋‚ดํ•ฉ๋‹ˆ๋‹ค.

๋นˆ๋ฒˆํ•œ ๋ฆฌํŒฉํ† ๋ง์œผ๋กœ๋ถ€ํ„ฐ ํ•ซ ๊ฒฝ๋กœ๋ฅผ ๋ณดํ˜ธํ•˜๊ธฐ ์œ„ํ•œ ์•ˆ์ •ํ™”๋œ ์ธํ„ฐํŽ˜์ด์Šค ์ƒ์„ฑ

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

์•ˆ์ •ํ™”๋œ ์ธํ„ฐํŽ˜์ด์Šค๋Š” ๋™์ž‘์˜ ๋ชจํ˜ธ์„ฑ์„ ์ œํ•œํ•˜๋Š” ์ข๊ณ  ์‹ ์ค‘ํ•˜๊ฒŒ ์ •์˜๋œ ๊ณ„์•ฝ์ž…๋‹ˆ๋‹ค. ๊ตฌํ˜„ ์ˆ˜๋ฅผ ์ œํ•œํ•˜๊ณ , ์ผ๊ด€๋œ ์œ ํ˜• ํ”„๋กœํ•„์„ ์œ ์ง€ํ•˜๋ฉฐ, ๋ถ„๊ธฐ ๋ณ€๋™์„ ์ตœ์†Œํ™”ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์›์น™์€ ๋‹ค์Œ์—์„œ ๋ณผ ์ˆ˜ ์žˆ๋Š” ๋ชจ๋ฒ” ์‚ฌ๋ก€๋ฅผ ๋ฐ˜์˜ํ•ฉ๋‹ˆ๋‹ค. ์—”ํ„ฐํ”„๋ผ์ด์ฆˆ ํ†ตํ•ฉ ํŒจํ„ด๋ช…ํ™•ํ•œ ๊ฒฝ๊ณ„๋ฅผ ํ†ตํ•ด ์—ฐ์‡„์ ์ธ ์„ค๊ณ„ ๋ฌธ์ œ๋ฅผ ๋ฐฉ์ง€ํ•ฉ๋‹ˆ๋‹ค. ๋ถˆ์•ˆ์ •ํ•œ ๋™์ž‘๊ณผ ์•ˆ์ •์ ์ธ ๊ฒฝ๋กœ๋ฅผ ๋ถ„๋ฆฌํ•จ์œผ๋กœ์จ ํŒ€์€ ์žฅ๊ธฐ์ ์ธ JIT ์ตœ์ ํ™”๋ฅผ ์ง€์›ํ•˜๋Š” ์˜ˆ์ธก ๊ฐ€๋Šฅ์„ฑ์„ ๊ตฌ์ถ•ํ•ฉ๋‹ˆ๋‹ค.

์•ˆ์ •ํ™”๋œ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๊ตฌํ˜„ํ•˜๋ ค๋ฉด ๊ด‘๋ฒ”์œ„ํ•œ ์ถ”์ƒํ™” ๋ถ„ํ• , ๋ด‰์ธ๋œ ์œ ํ˜• ๋„์ž…, ๋˜๋Š” ๋™์  ๊ธฐ๋Šฅ์„ ํ•ซ ์ฝ”๋“œ๋กœ๋ถ€ํ„ฐ ๋ถ„๋ฆฌํ•˜๋Š” ์ž‘์—…์ด ํฌํ•จ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ์ตœ์ ํ™”์— ๋ฏผ๊ฐํ•œ ์˜์—ญ์ด ๋นˆ๋ฒˆํ•œ ๋ฆฌํŒฉํ† ๋ง ์ด๋ฒคํŠธ๋กœ๋ถ€ํ„ฐ ์•ˆ์ „ํ•˜๊ฒŒ ๋ณดํ˜ธ๋ฉ๋‹ˆ๋‹ค.

์‹คํ–‰ ์ธ์‹ ๋ชจ๋“ˆํ˜• ์„ค๊ณ„๋ฅผ ํ†ตํ•œ ์ตœ์ ํ™” ์ทจ์•ฝ์„ฑ ๊ฐ์†Œ

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

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

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

๋ฒ„์ „ ๊ด€๋ฆฌ ๋ฐ ์˜ˆ์ธก ๊ฐ€๋Šฅํ•œ ์ข…์†์„ฑ ๊ฒฝ๋กœ๋ฅผ ํ†ตํ•ด ์ตœ์ ํ™” ์•ˆ์ •์„ฑ ๋ณด์žฅ

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

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

์˜ˆ์ธก ๊ฐ€๋Šฅํ•œ ์ข…์†์„ฑ ๊ฒฝ๋กœ๋ฅผ ์œ ์ง€ํ•˜๊ณ  ๋ณ€๋™์„ฑ์„ ์ค„์ž„์œผ๋กœ์จ ์กฐ์ง์€ JIT ์ตœ์ ํ™”๊ฐ€ ๋ชจ๋“  ๋ฆด๋ฆฌ์Šค์—์„œ ์œ ํšจํ•˜๊ฒŒ ์œ ์ง€๋˜๋„๋ก ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ๋Ÿฐํƒ€์ž„ ๋ณ€๋™์„ ์ค„์ด๊ณ , ์ตœ์ ํ™” ํ•ด์ œ ๋นˆ๋„๋ฅผ ์ตœ์†Œํ™”ํ•˜๋ฉฐ, ์žฅ๊ธฐ์ ์ธ ์„ฑ๋Šฅ ์ผ๊ด€์„ฑ์„ ๋ณด์žฅํ•ฉ๋‹ˆ๋‹ค.

Smart TS XL: ์‹œ์Šคํ…œ ์ „์ฒด ์ข…์†์„ฑ ํ†ต์ฐฐ๋ ฅ์„ ํ†ตํ•œ JIT ๋™์ž‘ ์•ˆ์ •ํ™”

GraalVM๊ณผ OpenJ9์—์„œ ์—ญ์ตœ์ ํ™” ์บ์Šค์ผ€์ด๋“œ๋ฅผ ์ค„์ด๋ ค๋ฉด ๋ช‡ ๊ฐ€์ง€ ๋ฌธ์ œ๊ฐ€ ์žˆ๋Š” ๋ฉ”์„œ๋“œ์— ๋Œ€ํ•œ ์ง€์—ญํ™”๋œ ํŠœ๋‹ ์ด์ƒ์˜ ๊ฒƒ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” ์œ ํ˜•, ๋ชจ๋“ˆ, ํ”„๋ ˆ์ž„์›Œํฌ ๋ฐ ๋Ÿฐํƒ€์ž„ ๋™์ž‘์ด ๋Œ€๊ทœ๋ชจ๋กœ ์–ด๋–ป๊ฒŒ ์ƒํ˜ธ ์ž‘์šฉํ•˜๋Š”์ง€ ์ดํ•ดํ•˜๋Š” ๋ฐ ๋‹ฌ๋ ค ์žˆ์Šต๋‹ˆ๋‹ค. ๋Œ€๋ถ€๋ถ„์˜ ๋Œ€๊ทœ๋ชจ JVM ํ™˜๊ฒฝ์—์„œ๋Š” ์ด๋Ÿฌํ•œ ์ˆ˜์ค€์˜ ๊ฐ€์‹œ์„ฑ์„ ์ˆ˜๋™์œผ๋กœ ํ™•๋ณดํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ข…์†์„ฑ์€ ํŒ€ ๊ฒฝ๊ณ„๋ฅผ ๋„˜๋‚˜๋“ค๊ณ , ๊ณต์œ  ์œ ํ‹ธ๋ฆฌํ‹ฐ๋Š” ์ง€์†์ ์œผ๋กœ ์ง„ํ™”ํ•˜๋ฉฐ, ํ”„๋ ˆ์ž„์›Œํฌ๋Š” ๊ฐœ๋ฐœ์ž๊ฐ€ ์˜ˆ์ƒํ•˜์ง€ ๋ชปํ•œ ๋ฐฉ์‹์œผ๋กœ ํ˜ธ์ถœ ๊ทธ๋ž˜ํ”„๋ฅผ ๋ณ€๊ฒฝํ•˜๋Š” ๋™์  ๋™์ž‘์„ ์ฃผ์ž…ํ•ฉ๋‹ˆ๋‹ค. Smart TS XL์€ ์ „์ฒด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ํ™˜๊ฒฝ์— ๋Œ€ํ•œ ๊ตฌ์กฐ์  ๋ฐ ๋™์ž‘์  ํ†ต์ฐฐ๋ ฅ์„ ์ œ๊ณตํ•˜๊ณ , ์ฝ”๋“œ ๊ด€๊ณ„์™€ ๋Ÿฐํƒ€์ž„ ์„ฑ๋Šฅ ํšจ๊ณผ์˜ ์ƒ๊ด€๊ด€๊ณ„๋ฅผ ๋ถ„์„ํ•˜์—ฌ ์ตœ์ ํ™” ์ž‘์—…์ด ์ง€์—ญ์ ์ธ ์ฆ์ƒ์ด ์•„๋‹Œ JIT ๋ถˆ์•ˆ์ •์„ฑ์˜ ์‹ค์ œ ์›์ธ์„ ๋ชฉํ‘œ๋กœ ํ•˜๋„๋ก ํ•จ์œผ๋กœ์จ ์ด๋Ÿฌํ•œ ๊ฒฉ์ฐจ๋ฅผ ํ•ด์†Œํ•ฉ๋‹ˆ๋‹ค.

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

๊ตฌ์กฐ์  ํ•ซ์ŠคํŒŸ๊ณผ ์ตœ์ ํ™” ํ•ด์ œ ๋กœ๊ทธ ์ƒ๊ด€ ๊ด€๊ณ„

์ตœ์ ํ™” ํ•ด์ œ ๋กœ๊ทธ์™€ JFR ๊ธฐ๋ก์€ JIT ๊ฐ€์ •์ด ์‹คํŒจํ•˜๋Š” ์ง€์ ์— ๋Œ€ํ•œ ์ž์„ธํ•œ ์ •๋ณด๋ฅผ ์ œ๊ณตํ•˜์ง€๋งŒ, ์‹คํŒจ ์›์ธ์„ ์„ค๋ช…ํ•˜๋Š” ๊ฒฝ์šฐ๋Š” ๋“œ๋ญ…๋‹ˆ๋‹ค. ๋ถ„์„๊ฐ€๋Š” ๋ฉ”์„œ๋“œ ์ด๋ฆ„, ๋ฐ”์ดํŠธ์ฝ”๋“œ ์ธ๋ฑ์Šค, ์ด์œ  ์ฝ”๋“œ๋ฅผ ํ™•์ธํ•˜์ง€๋งŒ, ์ด๋Ÿฌํ•œ ์ด๋ฒคํŠธ์˜ ๊ตฌ์กฐ์  ๋งฅ๋ฝ์€ ์—ฌ์ „ํžˆ โ€‹โ€‹๋ถˆ๋ถ„๋ช…ํ•ฉ๋‹ˆ๋‹ค. Smart TS XL์€ ์ตœ์ ํ™” ํ•ด์ œ ์ด๋ฒคํŠธ๋ฅผ ๊ธฐ๋ณธ ํ˜ธ์ถœ ๊ทธ๋ž˜ํ”„, ํƒ€์ž… ๊ณ„์ธต ๊ตฌ์กฐ, ์ข…์†์„ฑ ๊ตฌ์กฐ์— ์—ฐ๊ฒฐํ•˜์—ฌ ์ด๋Ÿฌํ•œ ๊ฐ„๊ทน์„ ๋ฉ”์›๋‹ˆ๋‹ค. ๋˜ํ•œ, ์„œ๋น„์Šค์™€ ์›Œํฌ๋กœ๋“œ ์ „๋ฐ˜์— ๊ฑธ์ณ ์ตœ์ ํ™” ํ•ด์ œ๋œ ํ”„๋ ˆ์ž„์— ๋ฐ˜๋ณต์ ์œผ๋กœ ๋‚˜ํƒ€๋‚˜๋Š” ์ธํ„ฐํŽ˜์ด์Šค, ๊ณต์œ  ์œ ํ‹ธ๋ฆฌํ‹ฐ ๋˜๋Š” ํ”„๋ ˆ์ž„์›Œํฌ ์ง„์ž…์ ์„ ๊ฐ•์กฐ ํ‘œ์‹œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

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

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

์˜ํ–ฅ ์ธ์‹ ์ข…์†์„ฑ ๋งคํ•‘์„ ์‚ฌ์šฉํ•˜์—ฌ ๋ฆฌํŒฉํ† ๋ง ์ž‘์—… ์šฐ์„  ์ˆœ์œ„ ์ง€์ •

๋Œ€๊ทœ๋ชจ ์กฐ์ง์—์„œ๋Š” ๋ฆฌํŒฉํ† ๋ง ์šฉ๋Ÿ‰์ด ์ œํ•œ์ ์ด๋ฉฐ, ์šฐ์„ ์ˆœ์œ„๊ฐ€ ์ƒ์ถฉ๋˜์–ด ๋ชจ๋“  ์ด๋ก ์  ์œ„ํ—˜์„ ํ•ด๊ฒฐํ•˜๋Š” ๊ฒƒ์€ ๋น„ํ˜„์‹ค์ ์ž…๋‹ˆ๋‹ค. Smart TS XL์€ ์ข…์†์„ฑ์ด ์–ผ๋งˆ๋‚˜ ๊ด‘๋ฒ”์œ„ํ•˜๊ฒŒ ์‚ฌ์šฉ๋˜๋Š”์ง€, ํ•ซ ํŒจ์Šค(Hot Path)์— ์–ผ๋งˆ๋‚˜ ์ž์ฃผ ๋‚˜ํƒ€๋‚˜๋Š”์ง€, ๊ทธ๋ฆฌ๊ณ  ํ•ด๋‹น ์ข…์†์„ฑ ๋ณ€๊ฒฝ์ด ์ตœ์ ํ™” ํ•ด์ œ ์ด๋ฒคํŠธ์™€ ์–ผ๋งˆ๋‚˜ ๊ฐ•ํ•œ ์ƒ๊ด€๊ด€๊ณ„๋ฅผ ๊ฐ–๋Š”์ง€ ์ •๋Ÿ‰ํ™”ํ•˜์—ฌ ์˜ํ–ฅ ์ธ์‹์  ์˜์‚ฌ ๊ฒฐ์ •์„ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ, ์–ด๋–ค ๋ชจ๋“ˆ์ด ํ•ต์‹ฌ ์„ฑ๋Šฅ ๋ณ‘๋ชฉ ์ง€์ ์„ ํ˜•์„ฑํ•˜๊ณ  ์–ด๋–ค ๋ชจ๋“ˆ์ด JIT ๋™์ž‘์— ์ตœ์†Œํ•œ์˜ ์˜ํ–ฅ์„ ๋ฏธ์น˜๋Š”์ง€ ๋ณด์—ฌ์ฃผ๋Š” ์•„ํ‚คํ…์ฒ˜ ๋งต์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

์ด ๊ธฐ๋Šฅ์€ ๋ฆฌํŒฉํ† ๋ง์„ ์ง๊ด€ ์ค‘์‹ฌ์˜ ์ž‘์—…์—์„œ ์ฆ๊ฑฐ ๊ธฐ๋ฐ˜ ๊ณ„ํš์œผ๋กœ ์ „ํ™˜ํ•ฉ๋‹ˆ๋‹ค. CPU ๋น„์šฉ์ด ๋†’์€ ๋ฉ”์„œ๋“œ์—๋งŒ ์ง‘์ค‘ํ•˜๋Š” ๋Œ€์‹ , ํŒ€์€ ํ”„๋กœํŒŒ์ผ๋ง ๋ถˆ์•ˆ์ •์„ฑ์ด๋‚˜ ์œ ํ˜• ์ธํ”Œ๋ ˆ์ด์…˜์„ ์œ ๋ฐœํ•˜๋Š” ์ข…์†์„ฑ์„ ํƒ€๊ฒŸํŒ…ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, Smart TS XL์€ ๋‹จ์ผ ๊ณต์œ  ๊ฒ€์ฆ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ์—ฌ๋Ÿฌ ์ธ๋ผ์ธ ์ฒด์ธ์— ์กด์žฌํ•˜๋ฉฐ, ์‚ฌ์†Œํ•œ ์ˆ˜์ • ํ›„์—๋„ ๊ณผ๊ฑฐ์— ์—ฌ๋Ÿฌ ์ฐจ๋ก€ ์ตœ์ ํ™” ํ•ด์ œ ์ด๋ฒคํŠธ๋ฅผ ๋ฐœ์ƒ์‹œ์ผฐ์Œ์„ ๋ณด์—ฌ์ค„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ•ด๋‹น ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ๋ฆฌํŒฉํ† ๋งํ•˜์—ฌ ๋ถˆ์•ˆ์ •ํ•œ ๋กœ์ง๊ณผ ์•ˆ์ •์ ์ธ ๋น ๋ฅธ ๊ฒฝ๋กœ๋ฅผ ๋ถ„๋ฆฌํ•˜๋Š” ๊ฒƒ์€ ๊ณ ๋ฆฝ๋œ ํ•ซ ๋ฉ”์„œ๋“œ๋ฅผ ์ตœ์ ํ™”ํ•˜๋Š” ๊ฒƒ๋ณด๋‹ค ํ›จ์”ฌ ๋” ํฐ ์ด์ ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.

์ด ์ ‘๊ทผ ๋ฐฉ์‹์€ ์ด๋ฏธ ๊ตฌ์กฐ ๋ถ„์„์„ ์‚ฌ์šฉํ•˜๋Š” ํ˜„๋Œ€ํ™” ์ „๋žต์— ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ๋“ค์–ด๋งž์Šต๋‹ˆ๋‹ค. ์ ์ง„์  ํ˜„๋Œ€ํ™” ์ ‘๊ทผ ๋ฐฉ์‹Smart TS XL์€ ์ด๋Ÿฌํ•œ ์ „๋žต์— JIT ์ธ์‹ ์ฐจ์›์„ ํšจ๊ณผ์ ์œผ๋กœ ์ถ”๊ฐ€ํ•˜์—ฌ ๊ณ„ํš๋œ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์ด ์žฅ๊ธฐ์ ์ธ ์ตœ์ ํ™”๋ฅผ ์ง€์›ํ•˜๋„๋ก ๋ณด์žฅํ•ฉ๋‹ˆ๋‹ค. ๊ตฌ์กฐ์  ๋ฒ”์œ„์™€ ์ตœ์ ํ™” ํ•ด์ œ ์˜ํ–ฅ์„ ๋ชจ๋‘ ๊ณ ๋ คํ•˜์—ฌ ๋ฆฌํŒฉํ† ๋ง ํ›„๋ณด์˜ ์ˆœ์œ„๋ฅผ ๋งค๊น€์œผ๋กœ์จ ์•„ํ‚คํ…์ฒ˜ ๋ณด๋“œ๊ฐ€ ๋Ÿฐํƒ€์ž„ ๋™์ž‘์˜ ์ง€์†์ ์ธ ๊ฐœ์„ ์„ ์œ„ํ•œ ์ž‘์—…์„ ์ •๋‹นํ™”ํ•˜๊ณ  ์ˆœ์„œ๋ฅผ ์ •ํ•˜๋Š” ๋ฐ ๋„์›€์„ ์ค๋‹ˆ๋‹ค.

๊ตฌ์กฐ์  "๊ฐ€์ •" ๋ถ„์„์„ ํ†ตํ•œ ํ–ฅํ›„ ์ตœ์ ํ™” ํ•ด์ œ ์บ์Šค์ผ€์ด๋“œ ๋ฐฉ์ง€

๋งŽ์€ ์„ฑ๋Šฅ ์ €ํ•˜ ํ˜„์ƒ์€ ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ์ด๋‚˜ ์ข…์†์„ฑ์ด ํ”„๋กœ๋•์…˜ ํ™˜๊ฒฝ์— ๋„์ž…๋œ ํ›„์—์•ผ ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค. ํŒ€์€ ์ธํ„ฐํŽ˜์ด์Šค, ํ”„๋ ˆ์ž„์›Œํฌ ํ†ตํ•ฉ ๋˜๋Š” ๊ณต์œ  ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์— ๋Œ€ํ•œ ๊ฒ‰๋ณด๊ธฐ์— ๋ฌดํ•ดํ•ด ๋ณด์ด๋Š” ๋ณ€๊ฒฝ์ด ์‹ค์ œ ์›Œํฌ๋กœ๋“œ ํŒจํ„ด์—์„œ ๊ด‘๋ฒ”์œ„ํ•œ ์ตœ์ ํ™” ์†์‹ค์„ ์œ ๋ฐœํ•˜๋Š” ๊ฒƒ์„ ์ข…์ข… ๋ฐœ๊ฒฌํ•ฉ๋‹ˆ๋‹ค. Smart TS XL์€ ๋ฐฐํฌ ์ „์— ๊ตฌ์กฐ์  "๊ฐ€์ •(what-if)" ๋ถ„์„์„ ํ™œ์„ฑํ™”ํ•˜์—ฌ ์ด๋Ÿฌํ•œ ์œ„ํ—˜์„ ์ค„์ž…๋‹ˆ๋‹ค. ์„ค๊ณ„์ž๋Š” ์ƒˆ๋กœ์šด ์ข…์†์„ฑ์ด ๊ธฐ์กด ํ˜ธ์ถœ ๊ทธ๋ž˜ํ”„์— ์–ด๋–ป๊ฒŒ ํ†ตํ•ฉ๋ ์ง€, ์–ด๋–ค ํ•ซ ํŒจ์Šค์™€ ๊ต์ฐจํ• ์ง€, ๊ทธ๋ฆฌ๊ณ  ์œ ํ˜• ๋‹ค์–‘์„ฑ์ด๋‚˜ ๋ถ„๊ธฐ ๋ณต์žก์„ฑ์— ์–ด๋–ค ์˜ํ–ฅ์„ ๋ฏธ์น ์ง€ ํ‰๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด๋Ÿฌํ•œ ๋ฏธ๋ž˜ ์ง€ํ–ฅ์  ๊ด€์ ์„ ํ†ตํ•ด ํŒ€์€ ๋ณธ์งˆ์ ์œผ๋กœ JIT ์นœํ™”์ ์ธ ์ƒˆ๋กœ์šด ๋ชจ๋“ˆ๊ณผ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์„ค๊ณ„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด, Smart TS XL์€ ์ž์ฃผ ์‚ฌ์šฉ๋˜๋Š” ์ธํ„ฐํŽ˜์ด์Šค์— ๋‹ค๋ฅธ ๊ตฌํ˜„์„ ์ถ”๊ฐ€ํ•˜๋ฉด ์—ฌ๋Ÿฌ ํ˜ธ์ถœ ์‚ฌ์ดํŠธ๊ฐ€ ๋ฐ”์ด๋ชจํ”ฝ(bimorphic) ๋™์ž‘์—์„œ ๋ฉ”๊ฐ€๋ชจํ”ฝ(megamorphic) ๋™์ž‘์œผ๋กœ ์ „ํ™˜๋  ์ˆ˜ ์žˆ์Œ์„ ๋ณด์—ฌ์ค„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์ง€์‹์„ ๋ฐ”ํƒ•์œผ๋กœ ์„ค๊ณ„์ž๋Š” ์ƒˆ๋กœ์šด ๋™์ž‘์— ๋Œ€ํ•ด ๋” ์ข์€ ๋ฒ”์œ„์˜ ํŠนํ™”๋œ ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ๋„์ž…ํ•˜์—ฌ ๊ธฐ์กด ํ•ซ ํŒจ์Šค(hot path)๋ฅผ ๋ณดํ˜ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ๊ณ„ํš ์›์น™์€ ๋‹ค์Œ์—์„œ ๋ณผ ์ˆ˜ ์žˆ๋Š” ๊ฑฐ๋ฒ„๋„Œ์Šค ๊ด€์ ๊ณผ ์ผ์น˜ํ•ฉ๋‹ˆ๋‹ค. ๋ณ€ํ™” ๊ด€๋ฆฌ ํ”„๋กœ์„ธ์Šค๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ์ ์šฉํ•˜๊ธฐ ์ „์— ์œ„ํ—˜์„ ํ‰๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

Smart TS XL์€ ๊ตฌ์กฐ์  ํ‰๊ฐ€๋ฅผ ์„ค๊ณ„ ๋ฐ ๊ฒ€ํ†  ์›Œํฌํ”Œ๋กœ์— ํ†ตํ•ฉํ•จ์œผ๋กœ์จ JIT ์•ˆ์ •์„ฑ์„ ์‚ฌํ›„์  ํŠœ๋‹ ๋ฌธ์ œ์—์„œ ์„ค๊ณ„ ์‹œ์ ์˜ ๊ณ ๋ ค ์‚ฌํ•ญ์œผ๋กœ ์ „ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ์‹œ๊ฐ„์ด ์ง€๋‚จ์— ๋”ฐ๋ผ ์˜ˆ์ƒ์น˜ ๋ชปํ•œ ์ตœ์ ํ™” ํ•ด์ œ ์บ์Šค์ผ€์ด๋“œ ๋ฐœ์ƒ ๋นˆ๋„๊ฐ€ ๊ฐ์†Œํ•˜๊ณ , ์„ฑ๋Šฅ ์‚ฌ๊ณ  ์กฐ์‚ฌ ๊ธฐ๊ฐ„์ด ๋‹จ์ถ•๋˜๋ฉฐ, ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ์˜ ํ™•์žฅ์„ฑ์— ๋Œ€ํ•œ ์‹ ๋ขฐ๋„๊ฐ€ ๋†’์•„์ง‘๋‹ˆ๋‹ค.

Smart TS XL์„ JVM ์›๊ฒฉ ์ธก์ • ๋ฐ CI/CD ํŒŒ์ดํ”„๋ผ์ธ๊ณผ ํ†ตํ•ฉ

์ตœ์ ํ™” ํ•ด์ œ ํŒจํ„ด์€ ๊ณ ์ •๋˜์–ด ์žˆ์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ฝ”๋“œ ๋ณ€๊ฒฝ, ์›Œํฌ๋กœ๋“œ ๋ณ€ํ™”, ์ธํ”„๋ผ ์žฌ๊ตฌ์„ฑ์— ๋”ฐ๋ผ ์ง„ํ™”ํ•ฉ๋‹ˆ๋‹ค. Smart TS XL์€ JVM ์›๊ฒฉ ๋ถ„์„ ๋ฐ CI/CD ํŒŒ์ดํ”„๋ผ์ธ๊ณผ ํ†ตํ•ฉ๋  ๋•Œ ๋”์šฑ ํšจ๊ณผ์ ์ด๋ฉฐ, ์ฝ”๋“œ ๊ตฌ์กฐ, ๋Ÿฐํƒ€์ž„ ๋™์ž‘, ๊ทธ๋ฆฌ๊ณ  ์•„ํ‚คํ…์ฒ˜ ๊ฒฐ์ • ๊ฐ„์˜ ์ง€์†์ ์ธ ํ”ผ๋“œ๋ฐฑ ๋ฃจํ”„๋ฅผ ํ˜•์„ฑํ•ฉ๋‹ˆ๋‹ค. ํ…Œ์ŠคํŠธ ๋ฐ ์šด์˜ ํ™˜๊ฒฝ์—์„œ JFR ๊ธฐ๋ก, JIT ๋กœ๊ทธ, ์„ฑ๋Šฅ ์ง€ํ‘œ๋ฅผ ์ˆ˜์ง‘ํ•จ์œผ๋กœ์จ ๊ตฌ์กฐ์  ์œ„ํ—˜์ด ์ฆ๊ฐ€ํ•˜๋Š” ๋ถ€๋ถ„๊ณผ ์ตœ์ ํ™”๊ฐ€ ์ง€์†๋˜๋Š” ๋ถ€๋ถ„์„ ํŒŒ์•…ํ•˜์—ฌ ์—…๋ฐ์ดํŠธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

CI/CD ํ™˜๊ฒฝ์—์„œ Smart TS XL์€ ์„ฑ๋Šฅ ํ…Œ์ŠคํŠธ๊ฐ€ ์™„๋ฃŒ๋˜๊ธฐ ์ „์—๋„ ์ƒˆ ๋นŒ๋“œ๋ฅผ ๋ถ„์„ํ•˜์—ฌ JIT ๋™์ž‘์— ์˜ํ–ฅ์„ ๋ฏธ์น  ์ˆ˜ ์žˆ๋Š” ๊ตฌ์กฐ์  ๋ณ€ํ™”๋ฅผ ๊ฐ์ง€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํ™•์žฅ๋œ ์ƒ์† ๊ณ„์ธต ๊ตฌ์กฐ, ํ™•์žฅ๋œ ์ธํ„ฐํŽ˜์ด์Šค ๋˜๋Š” ์•Œ๋ ค์ง„ ํ•ซ ํŒจ์Šค(hot path)๋ฅผ ์ค‘์‹ฌ์œผ๋กœ ํ•œ ์ข…์†์„ฑ ์‹ฌ๋„ ์ฆ๊ฐ€๋ฅผ ํ‘œ์‹œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์ž๋™ํ™”๋Š” ๋‹ค์Œ์—์„œ ๋…ผ์˜๋œ ๋ฐฉ์‹์„ ๋ณด์™„ํ•ฉ๋‹ˆ๋‹ค. ์„ฑ๋Šฅ ํšŒ๊ท€ ํ”„๋ ˆ์ž„์›Œํฌ์„ฑ๋Šฅ ์ ๊ฒ€์ด ๋ฐฐํฌ ์›Œํฌํ”Œ๋กœ์˜ ํ‘œ์ค€ ๋ถ€๋ถ„์ด ๋˜๋Š” ๊ฒฝ์šฐ, Smart TS XL์€ ์ด๋Ÿฌํ•œ ์ ๊ฒ€์— ๊ตฌ์กฐ์  ์ฐจ์›์„ ์ถ”๊ฐ€ํ•˜์—ฌ ์„ฑ๋Šฅ ๋ณ€ํ™” ์—ฌ๋ถ€๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ์–ด๋–ค ์•„ํ‚คํ…์ฒ˜ ๊ฒฐ์ •์ด ์ด๋Ÿฌํ•œ ๋ณ€ํ™”๋ฅผ ์ดˆ๋ž˜ํ–ˆ๋Š”์ง€๋„ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.

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

๊ตฌ์กฐ์  ์•ˆ์ •์„ฑ๊ณผ ์˜ˆ์ธก ๊ฐ€๋Šฅํ•œ ์ตœ์ ํ™”๋ฅผ ํ†ตํ•ด JVM ์„ฑ๋Šฅ ์œ ์ง€

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

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

GraalVM ๋ฐ OpenJ9์™€ ๊ฐ™์€ JIT ์ปดํŒŒ์ผ๋Ÿฌ๋Š” ์ ๊ทน์ ์ธ ์ตœ์ ํ™”๋ฅผ ํ†ตํ•ด ๊ตฌ์กฐ์  ์˜ˆ์ธก ๊ฐ€๋Šฅ์„ฑ์„ ๋†’์ž…๋‹ˆ๋‹ค. ํ•ซ ํŒจ์Šค(hot path)๊ฐ€ ์•ˆ์ •์ ์œผ๋กœ ์œ ์ง€๋˜๊ณ  ๋ฐ์ดํ„ฐ ํ๋ฆ„์ด ์ผ๊ด€๋œ ํŒจํ„ด์„ ๋”ฐ๋ฅด๋ฉด, ์ปดํŒŒ์ผ๋Ÿฌ๋Š” ๋นˆ๋ฒˆํ•œ ๋ฌดํšจํ™” ์œ„ํ—˜ ์—†์ด ๊ณ ๊ธ‰ ์ธ๋ผ์ด๋‹, ์ด์Šค์ผ€์ดํ”„ ๋ถ„์„ ๋ฐ ํŠน์ˆ˜ํ™”๋ฅผ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ์›Œํฌ๋กœ๋“œ ๋ณ€๋™์„ฑ, ํŒ€ ๊ฐ„ ๊ฐœ๋ฐœ ๋ฐ ์•„ํ‚คํ…์ฒ˜ ๋ณต์žก์„ฑ์„ ๊ฒฌ๋ŽŒ๋‚ผ ์ˆ˜ ์žˆ๋Š” ์ตœ์ ํ™” ๊ธฐ๋ฐ˜์ด ๋งˆ๋ จ๋ฉ๋‹ˆ๋‹ค. JIT ๋™์ž‘, ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๊ตฌ์กฐ ๋ฐ ๋ชจ๋“ˆ์‹ ๊ฑฐ๋ฒ„๋„Œ์Šค๊ฐ€ ์กฐํ™”๋ฅผ ์ด๋ฃจ๋ฉฐ ์ž‘๋™ํ•  ๋•Œ ์ง€์† ๊ฐ€๋Šฅํ•œ ์„ฑ๋Šฅ์ด ๋ฐœํœ˜๋ฉ๋‹ˆ๋‹ค.

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

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