Loading...
2018. 1. 22. 20:08

Intel CPU Spectre ํŒจ์น˜(Retpoline) ์™€ ํ…Œ์ŠคํŠธ

์ง€๋‚œ Meltdown ์ทจ์•ฝ์  ํŒจ์น˜๋ฅผ ํ†ตํ•ด์„œ System Call ํ•จ์ˆ˜ ํ˜ธ์ถœ์‹œ 4๋ฐฐ์˜ ์„ฑ๋Šฅ์ด ํ•˜๋ฝ๋˜๋Š” ๊ฒƒ์„ ์•Œ ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์ด ์ทจ์•ฝ์ ์€ Intel CPU์—์„œ๋งŒ ์กด์žฌํ•˜๋Š” ์ทจ์•ฝ์ ์ด๋ฉฐ Kernel Page Table Isolation (KPTI) ํŒจ์น˜๋ฅผ ํ†ตํ•ด ์ทจ์•ฝ์ ์„ ๊ณ ์น  ์ˆ˜ ์žˆ์—ˆ๊ณ , AMD ๋ฐ ARM ํ”„๋กœ์„ธ์„œ์—์„œ๋Š” ์˜ํ–ฅ์ด ์—†์—ˆ์Œ์„ ์•Œ ์ˆ˜ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. Spectre ์ทจ์•ฝ์ ์€ ์ด์ „ ํฌ์ŠคํŠธ์—์„œ๋„ ์„ค๋ช…ํ•œ ์ ์ด ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ๊ฐ„๋‹จํ•˜๊ฒŒ ๋‹ค์‹œ ํ•œ ๋ฒˆ ์„ค๋ช…๋“œ๋ฆฌ์ž๋ฉด, A ํ”„๋กœ๊ทธ๋žจ์ด B ํ”„๋กœ๊ทธ๋žจ์˜ ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ๋ฅผ ์นจ๋ฒ”ํ•  ์ˆ˜ ์žˆ๋Š” ์ทจ์•ฝ์ ์œผ๋กœ, ํฌ๊ฒŒ๋Š” ๊ฐ€์ƒ ๋จธ์‹ ์˜ OS๊ฐ€ Host OS์˜ ์ฃผ์†Œ ๋ฒ”์œ„๊นŒ์ง€ ์นจ๋ฒ”ํ•  ์ˆ˜๋„ ์žˆ๋Š” ๋งค์šฐ ๋ฌด์„œ์šด ์ทจ์•ฝ์ ์ž…๋‹ˆ๋‹ค. ์ด ์ทจ์•ฝ์ ์€ Intel CPU ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ, AMD, ARM CPU์—๋„ ์ทจ์•ฝ์ ์ด..

2018. 1. 8. 11:06

2017๋…„ Tistory Blog ๊ฒฐ์‚ฐ

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

2018. 1. 5. 17:06

Intel CPU Meltdown ์ทจ์•ฝ์  ํŒจ์น˜ 2์ฐจ ํ…Œ์ŠคํŠธ์™€ ๋งˆ๋ฌด๋ฆฌ

1์ฐจ ํ…Œ์ŠคํŠธ์— ์ด์–ด์„œ 2์ฐจ ํ…Œ์ŠคํŠธ๋ฅผ ์ง„ํ–‰ํ•ด๋ดค์Šต๋‹ˆ๋‹ค. 2์ฐจ ํ…Œ์ŠคํŠธ๋Š” 1์ฐจ์—์„œ ์ง„ํ–‰ํ–ˆ๋˜ File I/O ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ, ์„œ๋ฒ„ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์œผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ์›น ์„œ๋ฒ„, DBMS, ๊ทธ๋ฆฌ๊ณ  ์ƒ๊ฐ๋ณด๋‹ค ๋ฆฌ์†Œ์Šค๋ฅผ ๋งŽ์ด ์‚ฌ์šฉํ•˜๋Š” ์˜ค๋””์˜ค ์ธ์ฝ”๋”ฉ๊ณผ ๋น„๋””์˜ค ์ธ์ฝ”๋”ฉ ๋“ฑ์˜ ํ…Œ์ŠคํŠธ๋ฅผ ์ง„ํ–‰ํ•˜์˜€์Šต๋‹ˆ๋‹ค. ํ…Œ์ŠคํŠธ ์ง„ํ–‰ ์‚ฌํ•ญ- SQLite I/O Test (only HDD)- FLAC Audio Encoding- Opus Codec Encoding- nginx Benchmark- GCC Compile Test- File I/O Test ํ…Œ์ŠคํŠธ๋Š” ์ด 6๊ฐ€์ง€๋กœ ์ง„ํ–‰ํ•˜์˜€์œผ๋ฉฐ ๊ทธ ์ค‘ ๋งˆ์ง€๋ง‰ File system Test๋Š” ์–ด์ œ ์ง„ํ–‰ํ–ˆ๋˜ 4000๋ฒˆ์˜ ํŒŒ์ผ ์ƒ์„ฑ์„ ๋‹ค์‹œ ํ…Œ์ŠคํŠธํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค. SQLite์˜ DBMS ํ…Œ์ŠคํŠธ๋Š” ์ €์˜ ๋…ธํŠธ๋ถ ํ™˜๊ฒฝ์ƒ HDD์—์„œ๋งŒ ์ง„ํ–‰..

2018. 1. 4. 17:32

Intel CPU ๋ณด์•ˆ ์ทจ์•ฝ์  ํŒจ์น˜๋กœ ์ธํ•œ ์„ฑ๋Šฅ ๊ฐ์†Œ์™€ 1์ฐจ ํ…Œ์ŠคํŠธ

์•ˆ๋…•ํ•˜์„ธ์š”. 2018๋…„ ์ฒซ ํฌ์ŠคํŒ…์ด๋„ค์š”. ๋ชจ๋‘๋“ค ์ƒˆํ•ด ๋ณต ๋งŽ์ด ๋ฐ›์œผ์‹œ๊ธฐ ๋ฐ”๋ž๋‹ˆ๋‹ค. ์ƒˆํ•ด๋ถ€ํ„ฐ ๋ญ”๊ฐ€ ํฐ ์ผ์ด ํ„ฐ์ง„ ๋“ฏํ•ฉ๋‹ˆ๋‹ค. ํ˜„์žฌ ์ธํ…”์˜ ๋ชจ๋“  ํ”„๋กœ์„ธ์„œ์—์„œ ์ปค๋„ ๋ฉ”๋ชจ๋ฆฌ ์ทจ์•ฝ์ ์ด ๋ฐœ๊ฒฌ๋˜์–ด ํ˜„์žฌ ๋ฆฌ๋ˆ…์Šค๋ฅผ ํฌํ•จํ•œ ์œˆ๋„ ์šด์˜์ฒด์ œ Redstone 3 ๋ฒ„์ „๋„ ํŒจ์น˜ ์กฐ์น˜๊ฐ€ ๋‚ด๋ ค์ง„ ์ƒํƒœ์ž…๋‹ˆ๋‹ค. ๊ทธ๋Ÿฐ๋ฐ, ํŒจ์น˜๋ฅผ ํ•œ ๋’ค์— ์„ฑ๋Šฅ์ด 30% ๊ฐ์†Œํ•œ๋‹ค๋Š” ์ด์•ผ๊ธฐ๊ฐ€ ์žˆ๋Š”๋ฐ์š”. ์–ด๋–ค ์ทจ์•ฝ์ ์ด๊ณ , ์™œ ์ด๋Ÿฐ ์ผ์ด ๋ฐœ์ƒํ•˜๋Š”์ง€ ์กฐ๊ธˆ ์•Œ์•„๋ณด๋„๋ก ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. Meltdown, Spectre ์ด๋ฒˆ ์ทจ์•ฝ์ ์˜ ์ด๋ฆ„์€ ์œ„์™€ ๊ฐ™์€ ๋‘ ๊ฐœ ์ด๋ฆ„์˜ ์ทจ์•ฝ์ ์„ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ๋จผ์ € ์ด ์ทจ์•ฝ์ ์€ ๊ตฌ๊ธ€์˜ ๋ณด์•ˆ๊ธฐ์ˆ ํŒ€์ธ Project zero ํŒ€์— ์˜ํ•ด ๋ฐœ๊ฒฌ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.. Meltdown ์ทจ์•ฝ์ ์€ Intel CPU์— ์ ์šฉ๋œ OoOE(๋น„์ˆœ์ฐจ์  ๋ช…๋ น์–ด ์ฒ˜๋ฆฌ) ๊ธฐ์ˆ ์˜ ๋ฒ„๊ทธ๋ฅผ ..