League Of Legends - Link Select [๋ฉ€ํ‹ฐ์ฝ”์–ดCPU] 06. ๋ฐ์ดํ„ฐ ๋ณ‘๋ ฌ์„ฑ & ์บ์‹œ
๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐Ÿค“ Study/์ปดํ“จํ„ฐ ๊ตฌ์กฐ

[๋ฉ€ํ‹ฐ์ฝ”์–ดCPU] 06. ๋ฐ์ดํ„ฐ ๋ณ‘๋ ฌ์„ฑ & ์บ์‹œ

by GAMEMING 2024. 4. 8.
728x90

 

 

์ •๋‚ดํ›ˆ ๊ต์ˆ˜๋‹˜์ด ์ถ”์ฒœํ•œ ์ฑ…

ใ€Œ ํ”„๋กœ๊ทธ๋ž˜๋จธ๊ฐ€ ๋ชฐ๋ž๋˜ ๋ฉ€ํ‹ฐ์ฝ”์–ด CPU ์ด์•ผ๊ธฐใ€ - ๊น€๋ฏผ์žฅ ์ง€์Œ 

์œ„์˜ ์ฑ…์„ ํ† ๋Œ€๋กœ ๊ณต๋ถ€ํ•œ ๋‚ด์šฉ์ด ์ž‘์„ฑ๋˜์—ˆ์Œ

 


 

 

 

- ๋ฐ์ดํ„ฐ ๋ณ‘๋ ฌ์„ฑ

 : SIMD(Single Instruction Multiple Data) → ๊ฐ™์€ ๋ช…๋ น์–ด๊ฐ€ ๋‹ค๋ฅธ ๋ฐ์ดํ„ฐ์— ๊ฐ๊ฐ ์ ์šฉ๋จ

 

for (int i = 0; i < 4; ++i)
	c[i] = a[i] + b[i];          // ๋ฒกํ„ฐ ์›์†Œ์— ๋Œ€ํ•œ ์ž‘์—…์€ ์„œ๋กœ ๋…๋ฆฝ์ ์ด๋‹ค
    



// SIMD ๋ช…๋ น์–ด ์‹คํ–‰ ๊ตฌ์กฐ
// ๋™์‹œ์— ๋ง์…ˆ์ด ์ด๋ฃจ์–ด์ง

// A[3] + B[3] -> C[3]
// A[2] + B[2] -> C[2]
// A[1] + B[1] -> C[1]
// A[0] + B[0] -> C[0]

 

 : ๋ฒกํ„ฐ์— ๋Œ€ํ•œ ์‚ฐ์ˆ  ๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ๋น„๊ต, ๋ณ€ํ™˜, ์…”ํ”Œ ๋“ฑ์—๋„ ์ œ๊ณต๋จ

 : ๋ช…๋ น์€ ์ปดํŒŒ์ผ๋Ÿฌ๊ฐ€ ์ฝ”๋“œ๋ฅผ ๋ถ„์„ํ•ด ์ ํ•ฉํ•˜๋‹ค๊ณ  ํŒ๋‹จ๋˜๋ฉด ์ž๋™์œผ๋กœ ์ƒ์„ฑํ•˜๊ธฐ๋„ ํ•จ (์ž๋™ ๋ฒกํ„ฐํ™”)

 

 

 

- CPU ์บ์‹œ

 : ์บ์‹œ → ๋ฉ”์ธ ๋ฉ”๋ชจ๋ฆฌ์™€ ํ”„๋กœ์„ธ์„œ์˜ ์‹œ๊ฐ„์ , ๊ณต๊ฐ„์  ๊ฑฐ๋ฆฌ๋ฅผ ์ค„์ด๊ธฐ ์œ„ํ•œ ์ž‘์€ ๊ธฐ์–ต ์žฅ์น˜

 : ์‹œ๊ฐ„์  ์ง€์—ญ์„ฑ → ์ตœ๊ทผ ์‚ฌ์šฉํ–ˆ๋˜ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ๋ฏธ๋ž˜์— ๋‹ค์‹œ ์‚ฌ์šฉํ•  ํ™•๋ฅ ์ด ๋†’์Œ์„ ์˜๋ฏธ

 : ๊ณต๊ฐ„์  ์ง€์—ญ์„ฑ → ์–ด๋–ค ๋ฐ์ดํ„ฐ๊ฐ€ ์‚ฌ์šฉ๋œ๋‹ค๋ฉด ๊ทธ์™€ ์ธ์ ‘ํ•œ ๋ฐ์ดํ„ฐ์— ์ ‘๊ทผํ•  ๊ฒƒ ๊ฐ™์Œ์„ ์˜๋ฏธ

 : ์ผ๋ฐ˜์ ์ธ ์บ์‹œ ๊ตฌ์กฐ → ์บ์‹œ์—์„œ ์›ํ•˜๋Š” ๋ฐ์ดํ„ฐ ํƒ์ƒ‰ / ์ƒˆ๋กœ์šด ๋ฐ์ดํ„ฐ ์ถ”๊ฐ€ / ์ด์ „ ๋ฐ์ดํ„ฐ ์ค‘ ์ผ๋ถ€ ๊ต์ฒดํ•  ์ˆ˜ ์žˆ์–ด์•ผ ํ•จ

  1) ์บ์‹œ ํžˆํŠธ : ์บ์‹œ์— ์›ํ•˜๋Š” ๋ฐ์ดํ„ฐ ๆœ‰

  2) ์บ์‹œ ๋ฏธ์Šค : ๋ฐ์ดํ„ฐ ๋ชป ์ฐพ์•˜์„ ๋•Œ (์ง์ ‘ ํ•ด๋‹น ๋ฐ์ดํ„ฐ๋ฅผ ์ฐพ์•„ ๋„ฃ์–ด์•ผ ํ•˜๋Š” ๋น„์šฉ  ๋ฏธ์Šค ํŒจ๋„ํ‹ฐ)

  3) ํžˆํŠธ ๋ ˆ์ดํ„ด์‹œ : ์บ์‹œ๊ฐ€ ์ ์ค‘ํ•ด ์›ํ•˜๋Š” ์ž๋ฃŒ๋ฅผ ๊ฐ€์ ธ์˜ฌ ๋•Œ์˜ ๋น„์šฉ

 : ์บ์‹œ ๋ผ์ธ  ์‹ค์ œ ์ €์žฅ๋˜๋Š” ๋ฐ์ดํ„ฐ - ํƒœ๊ทธ(tag) - ์บ์‹œ ์ฐพ๊ธฐ  ์ •๋ณด (ํฌ์ธํ„ฐ ๋“ฑ) - ์บ์‹œ ๊ต์ฒด ์ •๋ณด (์–ธ์ œ ์ด์šฉ๋˜๋Š”๊ฐ€ ๋“ฑ) - ๊ธฐํƒ€ ์ •๋ณด ํ•„์š”

 : ์ฃผ์–ด์ง„ ๋ฐ์ดํ„ฐ๋ฅผ ์บ์‹œ์—์„œ ์ฐพ๋Š” ์ž‘์—…์€ ํ•ด์‹œ ํ…Œ์ด๋ธ” ๊ตฌ์กฐ๋กœ ๊ตฌํ˜„ (SRAM)

 

 

1) ์บ์‹œ ๊ฒ€์ƒ‰ ๋ฐฉ๋ฒ•

 - ๋ฐ์ดํ„ฐ ์ฃผ์†Œ ๊ฐ’์ด ์ •ํ•ด์งˆ ๋•Œ / ํƒœ๊ทธ๊ฐ€ ์ตœ์ƒ์œ„ ๋น„ํŠธ๋กœ ์„ ํƒ๋œ ์ด์œ ๋Š” ์บ์‹œ ๋งคํ•‘ ์‹œ ์ถฉ๋Œ ์ ๊ฒŒ ํ•˜๊ธฐ ์œ„ํ•จ

 : ์šฐ์„  ์บ์‹œ ๋ผ์ธ ์ฃผ์†Œ๋ฅผ ์บ์‹œ๊ฐ€ ๊ฐ€์ง„ ์ˆ˜ ๋งŒํผ ๋งคํ•‘ → ํƒœ๊ทธ / ์ธ๋ฑ์Šค / ์˜คํ”„์…‹

 : ์ธ๋ฑ์Šค → ์ฃผ์†Œ ๊ฐ’ ์ค‘ ๊ฐ€์šด๋ฐ ๋ถ€๋ถ„ & ์ด ๊ฐ’์œผ๋กœ ์บ์‹œ ๋ผ์ธ ์ฐพ์Œ

 : ํƒœ๊ทธ  → ์ตœ์ƒ์œ„ ๋น„ํŠธ ์ค‘ ๋‚˜๋จธ์ง€ ๋ถ€๋ถ„ & ์บ์‹œ ๋ผ์ธ์ด ๋‚ด๊ฐ€ ์›ํ•˜๋Š” ๊ฐ’์ด ๋งž๋Š”์ง€ ํ™•์ธ

 : ์˜คํ”„์…‹ → ํ•˜์œ„ ๋น„ํŠธ ์ผ๋ถ€ & ์บ์‹œ ๋ผ์ธ ๋‚ด์—์„œ ์›ํ•˜๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€๋ฅดํ‚ด

 

 

2) ์บ์‹œ ๋ฐฐ์น˜ ์ •์ฑ…

 : ์ฃผ์–ด์ง„ ์บ์‹œ๋ฅผ ์ €์žฅํ•  ๋•Œ, ๊ฐ™์€ ์ด๋„ฅ์Šค๋ฅผ ๊ฐ€์ง„ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ๋ฉ”๋ชจ๋ฆฌ ์ฃผ์†Œ๊ฐ€ ์„œ๋กœ ์ถฉ๋Œ์„ ์ผ์œผํ‚ฌ ์ˆ˜ ์žˆ๋‹ค (์บ์‹œ๋ฏธ์Šค)

 : ์ง์ ‘ ์‚ฌ์ƒ ์บ์‹œ → ํ•œ ์ธ๋ฑ์Šค์— ์บ์‹œ ๋ผ์ธ ํ•˜๋‚˜ ํ• ๋‹น

 : ์ง‘ํ•ฉ ์—ฐ๊ด€ ์บ์‹œ → ํ•œ ์ธ๋ฑ์Šค๊ฐ€ N๊ฐœ์˜ ์บ์‹œ ๋ผ์ธ ๋‚ด์—์„œ ๋Œ€์‘ํ•  ์ˆ˜ ์žˆ์Œ (N๊ฐœ์˜ ์บ์‹œ ๋ผ์ธ์€ ํ•˜๋‚˜์˜ ์„ธํŠธ๋ฅผ ์ด๋ฃธ)

 : ์™„์ „ ์—ฐ๊ด€ ์บ์‹œ → ์บ์‹œ ์–ด๋””์—๋„ ํ• ๋‹นํ•  ์ˆ˜ ์žˆ์Œ

 

 

3) ์บ์‹œ ๊ต์ฒด ์ •์ฑ…

 : ์ง์ ‘ ์‚ฌ์ƒ ์บ์‹œ์—์„œ๋Š” ์˜๋ฏธ๊ฐ€ ์—†์œผ๋‚˜ ๋‹ค๋ฅธ ๋ฐฉ๋ฒ•์—์„œ๋Š” ์ตœ๋Œ€ N๊ฐœ ์ค‘ ํ•˜๋‚˜๋ฅผ ๊ณจ๋ผ์•ผ ํ•จ์œผ๋กœ ํ•„์š”ํ•จ

 : LRU(Last Recently Used) ๊ฐ€์žฅ ์ตœ๊ทผ์— ์‚ฌ์šฉ๋˜์ง€ ์•Š์€ ์บ์‹œ ๋ผ์ธ ์‚ญ์ œ

 : LFU(Last Frequently Used) → ์ ‘๊ทผ ๋นˆ๋„์— ๋”ฐ๋ผ ์‚ญ์ œ

 

 

4) ์บ์‹œ ์“ฐ๊ธฐ ์ •์ฑ…

 : write-through ์ •์ฑ… → ๋ฉ”๋ชจ๋ฆฌ/์•„๋ž˜ ๊ณ„์ธต์˜ ์บ์‹œ๋กœ ๋ฐ”๋กœ ๋ฐ˜์˜ ๊ฐ€๋Šฅ (๋ ˆ์ดํ„ด์‹œ๊ฐ€ ๊น€)

 : write-back ์ •์ฑ… → ๋ณ€๊ฒฝ๋œ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ–๊ณ  ์žˆ๋‹ค๊ฐ€ ๋‚˜์ค‘์— ์บ์‹œ์—์„œ ๋‚˜๊ฐˆ ๋•Œ ๋ฐ˜์˜ํ•จ (๊ตฌํ˜„์˜ ์–ด๋ ค์›€ → ๋”ํ‹ฐ ๋น„ํŠธ ์กด์žฌ)

 

 

 

 : ์บ์‹œ์˜ ์„ฑ๋Šฅ   ์ ‘๊ทผ ์‹œ๊ฐ„์œผ๋กœ ํ‘œํ˜„ ๊ฐ€๋Šฅํ•จ

 : ํ‰๊ท  ์ ‘๊ทผ ์‹œ๊ฐ„ = ํžˆํŠธ ๋ ˆ์ดํ„ด์‹œ + ๋ฏธ์Šค ๋น„์œจ = ์บ์‹œ ๋ฏธ์Šค/(์บ์‹œ ๋ฏธ์Šค+์บ์‹œ ํžˆํŠธ) * ๋ฏธ์Šค ํŒจ๋„ํ‹ฐ

 

 : ์บ์‹œ๋Š” ๋ณดํ†ต ํ•˜๋‚˜๊ฐ€ ์•„๋‹Œ L1, L2, L3 ๋“ฑ ๊ณ„์ธต์œผ๋กœ ๋˜์–ด ์žˆ๋‹ค → ๋ฉ”๋ชจ๋ฆฌ ๋ ˆ์ดํ„ด์‹œ ์ €ํ•˜

 

 

 

- ๋ฉ€ํ‹ฐ์ฝ”์–ด

 : ๊ฐ ์ฝ”์–ด์— ๋ช…๋ น์–ด ๋ฐ ๋ฐ์ดํ„ฐ ์ผ์ฐจ ๋ ˆ๋ฒจ ์บ์‹œ๊ฐ€ ๋…๋ฆฝ์ ์œผ๋กœ ๋“ค์–ด์žˆ์Œ

 : L2 → ๋…๋ฆฝ์บ์‹œ, L3 → ๋Œ€๋ถ€๋ถ„ ๊ณต์œ  ์บ์‹œ

 : ์บ์‹œ์— ์ €์žฅ๋œ ๋ฐ์ดํ„ฐ ์‚ฌ์ด, ์ผ๊ด€์„ฑ ๋ฌธ์ œ ๋Œ€๋‘ (์ฝ”ํžˆ๋Ÿฐ์Šค ๋ฌธ์ œ) → ์ฝ”์–ด๋ฅผ ๊ณ ๋ คํ•œ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ํ•„์š”