๐ง ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ ๋ฉ์ธ ๋ฉ๋ชจ๋ฆฌ๋ฅผ 2์ฐจ ์ ์ฅ์ฅ์น(๋์คํฌ)์ ์บ์๋ก ์ฌ์ฉํ๋ ๊ธฐ์ ์ ์๋ฏธํฉ๋๋ค. ์ด์ ๊น์ง๋ ์บ์๊ฐ ์ด๋ป๊ฒ ์ต๊ทผ์ ์ฌ์ฉํ ์ฝ๋์ ๋ฐ์ดํฐ ๋ถ๋ถ์ ๋ํ ๋น ๋ฅธ ์ ๊ทผ์ ์ ๊ณตํ๋์ง ์์๋ณด์์ต๋๋ค. ๊ฐ์ ๋ฐฉ๋ฒ์ผ๋ก, ๋ฉ์ธ ๋ฉ๋ชจ๋ฆฌ๊ฐ ๋ณดํต ์๊ธฐ ๋์คํฌ๋ก ๊ตฌํ๋๋ 2์ฐจ ์ ์ฅ์ฅ์น๋ฅผ ์ํ ์บ์๋ก ๋์ํ ์ ์์ต๋๋ค. ์ด๋ฌํ ๊ธฐ์ ์ ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ(Virtual Memory)๋ผ๊ณ ๋ถ๋ฆ
๋๋ค. ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ฌ์ฉํ๊ฒ ๋ ์ฃผ์ ๋๊ธฐ๋ ๋๊ฐ์ง์
๋๋ค. 1. ์ฌ๋ฌ ํ๋ก๊ทธ๋จ๋ค์ด ํจ๊ณผ์ ์ด๊ณ ์์ ํ๊ฒ ๋ฉ์ธ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ๊ณต์ ํ ์ ์๊ฒ ํ๊ธฐ ์ํ์ฌ 2. ์๊ณ ์ ํ๋ ํฌ๊ธฐ์ ๋ฉ์ธ ๋ฉ๋ชจ๋ฆฌ์์ ํ๋ก๊ทธ๋๋ฐํด์ผ ํ๋ ์ ์ฝ์ ์ ๊ฑฐํ๊ธฐ ์ํด์ ์ด ๊ธฐ๋ฒ์ด ํ์ํ ์ง ์์ญ๋
์ด ์ง๋ ์ง๊ธ์ ์ฒซ ๋ฒ์งธ ์ด์ ๋ก ๋๋ฆฌ ์ฌ์ฉ๋๊ณ ์์ต๋๋ค. ๋ค์์ ํ๋ก๊ทธ๋จ์ด ๊ฐ์ ๋ฉ๋ชจ๋ฆฌ..
๐ฅ Computer Science/์ปดํจํฐ ๊ตฌ์กฐ
์ด์ ๊ธ์์ ์ดํด๋ณธ associative cache๋ miss rate๋ฅผ ์ค์ด๋ ๋ฐฉ์์ผ๋ก ์ฑ๋ฅ์ ๊ฐ์ ํ์์ต๋๋ค. ์ด๋ฒ์ ์ดํด๋ณผ Multilevel cache๋ miss penalty๋ฅผ ๊ฐ์์์ผ ์ฑ๋ฅ์ ๋์ด๋ ๋ฐฉ๋ฒ์
๋๋ค. ๐ง Multilevel Cache ํ๋์ ๋ชจ๋ ์ปดํจํฐ๋ ์บ์๋ฅผ ์ฌ์ฉํฉ๋๋ค. ํ๋ก์ธ์์ ๋น ๋ฅธ ์๋์ ์๋์ ์ผ๋ก ์ ์ ๋๋ ค์ง๋ DRAM์ ์ ๊ทผ์๊ฐ์ ์ฐจ์ด๋ฅผ ๋์ฑ ์ค์ด๊ธฐ ์ํด์, ๋๋ถ๋ถ์ ๋ง์ดํฌ๋กํ๋ก์ธ์๋ ์บ์๋ฅผ ํ ๊ณ์ธต ๋ ์ง์ํฉ๋๋ค. L1 cache(1์ฐจ ์บ์, primary cache) : ํ๋ก์ธ์์ ๊ฐ์ฅ ๊ฐ๊น์ด ์บ์. ์๋๋ฅผ ์ํด I cache์ D cache๋ก ๋๋ฉ๋๋ค. - Instruction Cache (I cache) : ๋ฉ๋ชจ๋ฆฌ์ TEXT ์์ญ ๋ฐ์ดํฐ๋ฅผ ๋ค๋ฃจ๋ ์บ์์
๋๋ค. - D..
๐ง Associative Cache Associatvie Cache๋ ์ ์ฐํ ๋ธ๋ก ๋ฐฐ์น(placement)๋ฅผ ํตํด ์บ์ ์คํจ์จ(Miss rate)์ ์ค์ด๋ ๋ฐฉ๋ฒ์
๋๋ค. ์ด์ ๊ธ ๊น์ง์์๋ ๋ฉ๋ชจ๋ฆฌ ๋ธ๋ก์ ์บ์์ ๋ฃ์ ๋ ๊ฐ ๋ธ๋ก์ด ์บ์์ ๋ฑ ํ ์ฅ์์๋ง ๋ค์ด๊ฐ ์ ์๋๋ก ํ๋ ๋จ์ํ ๋ฐฐ์น ๋ฐฉ๋ฒ์ธ directed mapped๋ฅผ ์ฌ์ฉํ์์ต๋๋ค. directed mapped๋ ๋ธ๋ก์ ๋ฐฐ์นํ๋ ๋ค์ํ ๋ฐฉ์๋ค ์ค, ๊ทน๋จ์ ์ผ๋ก ๋ธ๋ก์ ํ ๊ณณ์๋ง ๋ฃ์ ์ ์๋๋ก ํ๋ ๋ฐฉ๋ฒ์
๋๋ค. ๋ฐ๋์ชฝ ๊ทน๋จ์๋ ๋ธ๋ก์ด ์บ์์ ์ด๋ ๊ณณ์๋ ๋ค์ด๊ฐ ์ ์๋๋ก ํ๋ ๋ฐฉ์์ด ์์ต๋๋ค. ๐ fully associative ๋ธ๋ก์ด ์บ์์ ์ด๋ ๊ณณ์๋ ๋ค์ด๊ฐ ์ ์๋๋ก ํ๋ ์บ์ ๊ตฌ์กฐ๋ฅผ ์๋ฏธํฉ๋๋ค. ๋ฉ๋ชจ๋ฆฌ ๋ธ๋ก์ ์บ์ ๋ด์ ์ด๋ค ์ํธ๋ฆฌ์๋ ์ฐ๊ด(..
๐ง ์บ์ ์ฑ๋ฅ ์ธก์ ํด๋น ๊ธ์์ CPU ์๊ฐ(time)์ ๋ํด ์ ๊น ์ดํด๋ณด์๋ฏ์ด, CPU ์๊ฐ์ ํด๋ญ ์ฌ์ดํด์ ์์ ํด๋ญ ์ฌ์ดํด ์๊ฐ์ ๊ณฑ์ผ๋ก ํํํ ์ ์์์ต๋๋ค. ์ด๋ ํด๋ญ ์ฌ์ดํด์ ์๋ ๋ค์ CPU๊ฐ ํ๋ก๊ทธ๋จ์ ์ํํ๋ ๋ฐ ์ด ํด๋ญ ์ฌ์ดํด๊ณผ, ๋ฉ๋ชจ๋ฆฌ ์์คํ
์ ๊ธฐ๋ค๋ฆฌ๋ ๋ฐ ์ฌ์ฉํ ํด๋ญ ์ฌ์ดํด๋ก ๋๋์ด๋ณผ ์ ์์ต๋๋ค. ์ผ๋ฐ์ ์ผ๋ก ์ ์ค ์๊ฐ(hit time)์ CPU ํด๋ญ ์ฌ์ดํด์ ์ผ๋ถ๋ก ๊ฐ์ฃผํฉ๋๋ค. CPU Time = (CPU ํด๋ญ ์ฌ์ดํด(hit time ํฌํจ) + ๋ฉ๋ชจ๋ฆฌ ์ง์ฐ ํด๋ญ ์ฌ์ดํด) X ํด๋ญ ์ฌ์ดํด ์๊ฐ(Clock Cycle Time) ๋ฉ๋ชจ๋ฆฌ ์ง์ฐ ํด๋ญ ์ฌ์ดํด์ ์ฃผ๋ก ์บ์ ์คํจ ๋๋ฌธ์ ๋ฐ์ํ๋ฉฐ, ์ฝ๊ธฐ์ ์ฐ๊ธฐ ์์ ๋ฐ์๋๋ ์ง์ฐ ์ฌ์ดํด์ ํฉ์ผ๋ก ์ ์ํ ์ ์์ต๋๋ค. ๋ฉ๋ชจ๋ฆฌ ์ง์ฐ ํด๋ญ ์ฌ์ดํด = ..
๐ง ์บ์ ์คํจ์ ์ฒ๋ฆฌ ์บ์ ์คํจ๋ ์ ์ด ์ ๋(control unit)์ด ์ฒ๋ฆฌํฉ๋๋ค. ์ ์ด ์ ๋์ ์คํจ๋ฅผ ํ์งํด์ผ ํ๋ฉฐ, ๋ฉ๋ชจ๋ฆฌ(๋๋ ํ์ ์์ค์ ์บ์)๋ก๋ถํฐ ๋ฐ์ดํฐ๋ฅผ ๊ฐ์ ธ์์ ์คํจ๋ฅผ ์ฒ๋ฆฌํด์ผ ํฉ๋๋ค. ์บ์ ์ ์ค์ ์ฒ๋ฆฌํ ์ ์๊ฒ ํ๋ก์ธ์์ ์ ์ด ์ ๋์ ์์ ํ๋ ๊ฒ์ ์ฌ์ด ์ผ์ด์ง๋ง, ์คํจ์ ๊ฒฝ์ฐ์๋ ๋ช ๊ฐ์ง ์์
์ด ๋ ํ์ํฉ๋๋ค. ์บ์ ์คํจ ์ฒ๋ฆฌ๋ ํ๋ก์ธ์์ ์ ์ด ์ ๋๊ณผ ๋ณ๋์ ์ ์ด๊ธฐ์ ๊ณต๋ ์์
์ผ๋ก ์ฒ๋ฆฌ๋ฉ๋๋ค. ์ด ์ ์ด๊ธฐ๋ ๋ฉ๋ชจ๋ฆฌ ์ ๊ทผ์ ์์ํ๊ณ , ์บ์๋ฅผ ์ฑ์ฐ๋ ์ผ์ ํฉ๋๋ค. ์์ธ๋ ์ธํฐ๋ฝํธ๋ ๋ชจ๋ ๋ ์ง์คํฐ์ ์ํ๋ฅผ ์ ์ฅํด์ผ ํ์ง๋ง, ์บ์ ์คํจ์ ์ฒ๋ฆฌ๋ ํ์ดํ๋ผ์ธ ์ง์ฐ(stall)๋ง์ ๋ฐ์์ํต๋๋ค. ์บ์ ์คํจ ๋ฐ์ ์์๋ ์์ ๋ ์ง์คํฐ์ ํ๋ก๊ทธ๋๋จธ์๊ฒ ๋ณด์ด๋ ๋ ์ง์คํฐ์ ๋ด์ฉ์ ๊ทธ๋๋ก ์ ์งํ ์ฑ ๋ฉ๋ชจ๋ฆฌ์์..
๐ง ์บ์(Cache) ์บ์๋ผ๋ ๋ช
์นญ์ ์ต์ด์๋ ๋ฉ์ธ ๋ฉ๋ชจ๋ฆฌ์ ํ๋ก์ธ์ ์ฌ์ด์ ๋ฉ๋ชจ๋ฆฌ ๊ณ์ธต์ ๋ํ๋ด๊ธฐ ์ํด์ ์ฌ์ฉ๋ ์ฉ์ด์
๋๋ค. ์ค๋๋ ์๋ ์ด๋ฌํ ์๋ฏธ๋ก ๊ฐ์ฅ ๋ง์ด ์ฌ์ฉ๋๊ธฐ๋ ํ์ง๋ง, ๋ฐ์ดํฐ ์ ๊ทผ์ ์ง์ญ์ฑ(Locality)์ ์ด์ฉํด์ ๊ด๋ฆฌ๋๋ ๋ชจ๋ ๊ธฐ์ต์ฅ์น๋ฅผ ๋ถ๋ฅด๋ ๋ฐ์๋ ์ฌ์ฉ๋ฉ๋๋ค. ์ฒ์์๋ ํ๋ก์ธ์๋ ํ๋์ ์๋ ๋จ์์ ๋ฐ์ดํฐ๋ฅผ ํ์๋ก ํ๋ฉฐ, ๋ธ๋ก(block) ๋ํ ํ๋์ ์๋๋ก ์ด๋ฃจ์ด์ง ๋จ์ํ ์บ์๋ฅผ ์ดํด๋ณด๋ ๊ฒ์ผ๋ก ์์ํ๊ฒ ์ต๋๋ค. ๋ค์์ ์บ์์ ์๋ ๋ฐ์ดํฐ๋ฅผ ์์ฒญํ๊ธฐ ์ ๊ณผ ํ์ ์บ์ ์ํ๋ฅผ ๋ํ๋ด์์ต๋๋ค. ์์ฒญํ๊ธฐ ์ ์ ์บ์์๋ ์ต๊ทผ์ ์ ๊ทผํ $X_1, X_2, ..., X_{n-1}$์ด ์กด์ฌํ๊ณ , ํ๋ก์ธ์๋ ์บ์์ ์๋ ์๋ $X_n$์ ์์ฒญํ์์ต๋๋ค. ์ด ์์ฒญ์ ์คํจ(Miss)๋ฅผ ๋ฐ์์ํค๊ณ , ์..
์ปดํจํฐ๊ฐ ์ฒ์ ๋์์ ๋๋ถํฐ ํ๋ก๊ทธ๋๋จธ๋ค์ ๊ฟ์ ํ์์ด ํฐ ๋น ๋ฅธ ๋ฉ๋ชจ๋ฆฌ์์ต๋๋ค. ์ด๋ฒ์๋ ์ ๊ฟ์ ์ด๋ฃจ๊ธฐ ์ํ ๋ฌดํํ ํฌ๊ธฐ์ ๋น ๋ฅธ ๋ฉ๋ชจ๋ฆฌ๊ฐ ์๋ ๋ฏํ ํ์์ ๋ง๋ค์ด๋ด๋ ๋ฐฉ๋ฒ์ ๋ํด ์์๋ณด๋๋ก ํ๊ฒ ์ต๋๋ค. ๐ง ์ง์ญ์ฑ (Locality) ํ๋ก๊ทธ๋จ์ ์ด๋ค ํน์ ํ ์๊ฐ์๋ ์ฃผ์ ๊ณต๊ฐ ๋ด์ ๋น๊ต์ ์์ ๋ถ๋ถ๋ง์ ์ฌ์ฉํฉ๋๋ค. ํ๋ก๊ทธ๋จ์ ์ต๊ทผ์ ์ ๊ทผํ๋ ๋ฐ์ดํฐ๋ค์ ๋ค์ ์ฌ์ฉํ๋ ค๋ ๊ฒฝํฅ์ ๋ณด์ด๋ฉฐ, ๋ํ ์ต๊ทผ์ ์ ๊ทผํ๋ ๋ฐ์ดํฐ์ ์ธ์ ํ ๋ฐ์ดํฐ๋ค์ ์ ๊ทผํ๋ ค๋ ๊ฒฝํฅ์ ๊ฐ์ง๋๋ค. ์ด๋ฅผ ์ง์ญ์ฑ์ ์์น์ด๋ผ ๋ถ๋ฅด๋ฉฐ, ๋ค์๊ณผ ๊ฐ์ด ๋ ์ข
๋ฅ๋ก ๋๋์ด ๋ณผ ์ ์์ต๋๋ค. ๐ ์๊ฐ์ ์ง์ญ์ฑ(Temporal Locality) ํ ๋ฒ ์ฐธ์กฐ๋ ํญ๋ชฉ์ ๊ฐ๊น์ด ์๊ฐ ๋ด์ ๋ค์ ์ฐธ์กฐ๋ ๊ฐ๋ฅ์ฑ์ด ๋์ต๋๋ค. ๐ ๊ณต๊ฐ์ ์ง์ญ์ฑ(Spatial Localit..
๐ง ๋จ์ผ ์ฌ์ดํด ๊ตฌํ ๋จ์ผ ์ฌ์ดํด ๊ตฌํ์ ๋น๋ก ์ฌ๋ฐ๋ฅด๊ฒ ๋์ํ๋ค ํ๋๋ผ๋ ๋นํจ์จ์ฑ ๋๋ฌธ์ ์ฌ์ฉ๋์ง ์์ต๋๋ค. ์ด์ ๋ ๋๋ฌด ๋ถ๋ช
ํ๋ฐ, ๋จ์ผ ์ฌ์ดํด ์ค๊ณ์์๋ ํด๋ญ ์ฌ์ดํด์ด ๋ชจ๋ ๋ช
๋ น์ด์ ๋ํด์ ๊ฐ์ ๊ธธ์ด๋ฅผ ๊ฐ์ ธ์ผ ํ๊ธฐ ๋๋ฌธ์ ํด๋ญ ์ฌ์ดํด์ ๊ฐ์ฅ ์ค๋ ๊ฑธ๋ฆฌ๋ ๋ช
๋ น์ด์ ๋ง์ถ์ด์ผ ํ๊ธฐ ๋๋ฌธ์
๋๋ค. ํด๋น ๋ช
๋ น์ด๋ ์ ์ฌ ๋ช
๋ น์ด๋ผ๋ ๊ฒ์ด ๊ฑฐ์ ํ์คํ๋ฐ, ์ ์ฌ ๋ช
๋ น์ด๋ ๋ช
๋ น์ด ๋ฉ๋ชจ๋ฆฌ, ๋ ์ง์คํฐ ํ์ผ, ALU, ๋ฐ์ดํฐ ๋ฉ๋ชจ๋ฆฌ, ๋ ์ง์คํฐ ํ์ผ์ 5๊ฐ ๊ธฐ๋ฅ์ ๋ชจ๋ ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์
๋๋ค. ๐ง ํ์ดํ๋ผ์ด๋์ ์ดํด ํ์ดํ๋ผ์ด๋์ ์ฌ๋ฌ ๋ช
๋ น์ด๊ฐ ์ค์ฒฉ๋์ด ์คํ๋๋ ๊ตฌํ ๊ธฐ์ ์
๋๋ค. ํ์ดํ๋ผ์ด๋์ ์ดํด๋ฅผ ๋๊ธฐ ์ํด ์ธํ์ ์งํํ๋ ์์๋ฅผ ๋ค์ด ์ดํด๋ณด๋๋ก ํ๊ฒ ์ต๋๋ค. ์ฐ์ ํ์ดํ๋ผ์ด๋์ ์ฌ์ฉํ์ง ์์ ์ธํ ๋ฐฉ๋ฒ์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค. ์ธํ๊ธฐ..