MIT์˜ ์ƒˆ๋กœ์šด CPU ๋กœ๋“œ ๋ฐธ๋Ÿฐ์„œ

Shenango ์‹œ์Šคํ…œ์€ ๋ฐ์ดํ„ฐ ์„ผํ„ฐ์—์„œ ์‚ฌ์šฉ๋  ๊ณ„ํš์ž…๋‹ˆ๋‹ค.

MIT์˜ ์ƒˆ๋กœ์šด CPU ๋กœ๋“œ ๋ฐธ๋Ÿฐ์„œ
/ ์‚ฌ์ง„ ๋งˆ๋ฅด์ฝ” ๋ฒ ๋ฅด ์น˜ CC BY

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

MIT๋Š” ์ปดํ“จํŒ… ์ž์›์˜ ๋น„ํšจ์œจ์ ์ธ ์‚ฌ์šฉ์„ ๋ง‰๊ธฐ๋กœ ๊ฒฐ์ •ํ–ˆ์Šต๋‹ˆ๋‹ค.

์—”์ง€๋‹ˆ์–ด๋ง ํŒ€ ๋ฐœ์ „ํ–ˆ๋‹ค Shenango๋ผ๋Š” ํ”„๋กœ์„ธ์„œ ๋กœ๋“œ ๋ฐธ๋Ÿฐ์‹ฑ ์‹œ์Šคํ…œ. ๊ทธ ๋ชฉ์ ์€ ์ž‘์—… ๋ฒ„ํผ์˜ ์ƒํƒœ๋ฅผ ๋ชจ๋‹ˆํ„ฐ๋งํ•˜๊ณ  ์ค‘๋‹จ๋œ ํ”„๋กœ์„ธ์Šค(CPU ์‹œ๊ฐ„์„ ๋ฐ›์„ ์ˆ˜ ์—†์Œ)๋ฅผ ํ•ด์ œ๋œ ์ปดํ“จํ„ฐ์— ์žฌ๋ฐฐํฌํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

Shenango์˜ ์ž‘๋™ ๋ฐฉ์‹

Shenango๋Š” Rust ๋ฐ C++ ๋ฐ”์ธ๋”ฉ์ด ํฌํ•จ๋œ C ์–ธ์–ด์˜ Linux ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์ž…๋‹ˆ๋‹ค. ํ”„๋กœ์ ํŠธ ์ฝ”๋“œ์™€ ํ…Œ์ŠคํŠธ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ๋‹ค์Œ์— ๊ฒŒ์‹œ๋ฉ๋‹ˆ๋‹ค. ์ €์žฅ์†Œ ๊นƒํ—ˆ๋ธŒ์—์„œ.

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

IOKernel์€ ํŠน์ • ์ž‘์—…์„ ์œ„์ž„ํ•  ์ปค๋„์„ ๊ฒฐ์ •ํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ ์•Œ๊ณ ๋ฆฌ์ฆ˜์€ ํ•„์š”ํ•œ ์ฝ”์–ด ์ˆ˜๋ฅผ ๊ฒฐ์ •ํ•ฉ๋‹ˆ๋‹ค. ๊ฐ ํ”„๋กœ์„ธ์Šค์— ๋Œ€ํ•ด ๊ธฐ๋ณธ ์ฝ”์–ด(๋ณด์žฅ)์™€ ์ถ”๊ฐ€ ์ฝ”์–ด(๋ฒ„์ŠคํŠธ ๊ฐ€๋Šฅ)๊ฐ€ ๊ฒฐ์ •๋ฉ๋‹ˆ๋‹ค. ํ›„์ž๋Š” CPU์— ๋Œ€ํ•œ ์š”์ฒญ ์ˆ˜๊ฐ€ ๊ธ‰๊ฒฉํžˆ ์ฆ๊ฐ€ํ•  ๊ฒฝ์šฐ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค.

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

๋กœ๋“œ๋ฅผ ๋ถ„์‚ฐํ•  ๋•Œ ๋™์ผํ•œ ํ”„๋กœ์„ธ์Šค๊ฐ€ ์ด์ „์— ์‹คํ–‰๋˜์–ด ๋ถ€๋ถ„์ ์œผ๋กœ ์บ์‹œ์— ๋‚จ์•„ ์žˆ๋Š” ์ฝ”์–ด ๋˜๋Š” ์œ ํœด ์ฝ”์–ด์— ์šฐ์„  ์ˆœ์œ„๊ฐ€ ๋ถ€์—ฌ๋ฉ๋‹ˆ๋‹ค.

MIT์˜ ์ƒˆ๋กœ์šด CPU ๋กœ๋“œ ๋ฐธ๋Ÿฐ์„œ

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

์žฅ์ ๊ณผ ๋‹จ์ 

์— ~์— ๋”ฐ๋ฅด๋ฉด MIT ์ถœ์‹ ์˜ ์—”์ง€๋‹ˆ์–ด์ธ Shenango๋Š” ์ดˆ๋‹น 37๋งŒ ๊ฐœ์˜ ์š”์ฒญ์„ ์ฒ˜๋ฆฌํ•˜๊ณ  100๋งˆ์ดํฌ๋กœ์ดˆ์˜ ํ‰๊ท  ์‘๋‹ต ์‹œ๊ฐ„์„ ์œ ์ง€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ „๋ฌธ๊ฐ€๋“ค์€ ์–ด๋–ค ๊ฒฝ์šฐ์—๋Š” ์ด ๊ธฐ์ˆ ์ด ๋ฐ์ดํ„ฐ์„ผํ„ฐ์˜ ํ”„๋กœ์„ธ์„œ ํ™œ์šฉ๋ฅ ์„ XNUMX%๊นŒ์ง€ ๋†’์ผ ์ˆ˜ ์žˆ๋‹ค๊ณ  ๋งํ•ฉ๋‹ˆ๋‹ค. ๊ฒฐ๊ณผ์ ์œผ๋กœ ๋ฐ์ดํ„ฐ ์„ผํ„ฐ ์šด์˜์ž๋Š” ์„œ๋ฒ„ ๊ตฌ๋งค ๋ฐ ์œ ์ง€ ๊ด€๋ฆฌ ๋น„์šฉ์„ ์ ˆ๊ฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์†”๋ฃจ์…˜ ์ž ์žฌ๋ ฅ ์ถ•ํ•˜ํ•˜๋‹ค ๊ทธ๋ฆฌ๊ณ  ๋‹ค๋ฅธ ๋Œ€ํ•™์˜ ์ „๋ฌธ๊ฐ€. ํ•œ๊ตญ์˜ ํ•œ ์—ฐ๊ตฌ์†Œ ๊ต์ˆ˜์— ๋”ฐ๋ฅด๋ฉด, MIT ์‹œ์Šคํ…œ์€ ์›น ์„œ๋น„์Šค์˜ ์ง€์—ฐ์„ ์ค„์ด๋Š” ๋ฐ ๋„์›€์ด ๋  ๊ฒƒ์ด๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ์˜จ๋ผ์ธ ์ƒ์ ์—์„œ ์œ ์šฉํ•ฉ๋‹ˆ๋‹ค. ํŒ๋งค์ผ์—๋Š” ํŽ˜์ด์ง€ ๋กœ๋”ฉ์ด ๋‘ ๋ฒˆ์งธ๋กœ ์ง€์—ฐ๋˜๊ธฐ๋„ ํ•ฉ๋‹ˆ๋‹ค. ะฟั€ะธะฒะพะดะธั‚ ์‚ฌ์ดํŠธ ์กฐํšŒ์ˆ˜๊ฐ€ 11% ๊ฐ์†Œํ–ˆ์Šต๋‹ˆ๋‹ค. ์‹ ์†ํ•œ ๋ถ€ํ•˜ ๋ถ„์‚ฐ์€ ๋” ๋งŽ์€ ํด๋ผ์ด์–ธํŠธ์—๊ฒŒ ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•˜๋Š” ๋ฐ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค.

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

MIT์˜ ์ƒˆ๋กœ์šด CPU ๋กœ๋“œ ๋ฐธ๋Ÿฐ์„œ
/ ์‚ฌ์ง„ ํŒ€ ๋ ˆํฌ ๋งŒ CC BY

์œ ์‚ฌํ•œ ๊ธฐ์ˆ 

๋‹ค๋ฅธ ํ”„๋กœ์„ธ์„œ ๋กœ๋“œ ๋ฐธ๋Ÿฐ์‹ฑ ์‹œ์Šคํ…œ์—๋Š” Arachne์ด ํฌํ•จ๋ฉ๋‹ˆ๋‹ค. ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์‹œ์ž‘๋  ๋•Œ ํ•„์š”ํ•œ ์ฝ”์–ด ์ˆ˜๋ฅผ ๊ณ„์‚ฐํ•˜๊ณ  ์ด ํ‘œ์‹œ๊ธฐ์— ๋”ฐ๋ผ ํ”„๋กœ์„ธ์Šค๋ฅผ ๋ฐฐํฌํ•ฉ๋‹ˆ๋‹ค. ์ €์ž์— ๋”ฐ๋ฅด๋ฉด Arachne์—์„œ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์˜ ์ตœ๋Œ€ ๋Œ€๊ธฐ ์‹œ๊ฐ„์€ ์•ฝ 10๋งˆ์ดํฌ๋กœ์ดˆ์ž…๋‹ˆ๋‹ค.

์ด ๊ธฐ์ˆ ์€ Linux์šฉ C++ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋กœ ๊ตฌํ˜„๋˜์—ˆ์œผ๋ฉฐ ์†Œ์Šค ์ฝ”๋“œ๋Š” ๋‹ค์Œ์—์„œ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. GitHub์˜.

๋˜ ๋‹ค๋ฅธ ๊ท ํ˜• ์กฐ์ • ๋„๊ตฌ๋Š” ZygOS์ž…๋‹ˆ๋‹ค. Shenango์™€ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ์ด ๊ธฐ์ˆ ์€ ์ž‘์—… ๋„์šฉ ๋ฐฉ๋ฒ•์„ ์‚ฌ์šฉํ•˜์—ฌ ํ”„๋กœ์„ธ์Šค๋ฅผ ์žฌ๋ถ„๋ฐฐํ•ฉ๋‹ˆ๋‹ค. ZygOS ์ž‘์„ฑ์ž์— ๋”ฐ๋ฅด๋ฉด ์ด ๋„๊ตฌ๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ ํ‰๊ท  ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋Œ€๊ธฐ ์‹œ๊ฐ„์€ ์•ฝ 150๋งˆ์ดํฌ๋กœ์ดˆ์ด๊ณ  ์ตœ๋Œ€ ๋Œ€๊ธฐ ์‹œ๊ฐ„์€ ์•ฝ 450๋งˆ์ดํฌ๋กœ์ดˆ์ž…๋‹ˆ๋‹ค. ํ”„๋กœ์ ํŠธ ์ฝ”๋“œ๋„ ๊ณต๊ฐœ ๋„๋ฉ”์ธ์— ์žˆ์Šต๋‹ˆ๋‹ค.

์กฐ์‚ฌ ๊ฒฐ๊ณผ

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

First Enterprise IaaS ๋ธ”๋กœ๊ทธ์˜ ๊ฒŒ์‹œ๋ฌผ:

์ถœ์ฒ˜ : habr.com

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€