Intro์ฑ์ด ๋ฒ๋ฒ ์ผ ๋ ์ฐ๋ฆฌ๋ ๋ณดํต ์ด๋ ๊ฒ ์๊ฐํ๋ค. “CPU๋ฅผ ๋๋ฌด ๋ง์ด ์ฐ๊ณ ์๋?”“๋ฉ๋ชจ๋ฆฌ๊ฐ ๋ถ์กฑํ๊ฐ?” ๊ทธ๋ฐ๋ฐ ์ค์ ๋ก๋ ๋ฉ๋ชจ๋ฆฌ๊ฐ ๋จ์ ์์ด ๋ณด์ฌ๋์ฑ์ด ์๊ฐ์ ์ผ๋ก ๋ฉ์นซํ๊ฑฐ๋, ์ฒ์ ์ง์ ํ ๋ ๋ฒ๋ฒ ์ด๊ฑฐ๋,์ด๋ค ๋ฐ์ดํฐ๋ฅผ ์ฒ์ ์ฝ๋ ์๊ฐ ํ ๋ฐ์ ๋ฆ๋ ์ผ์ด ์๊ธธ ์ ์๋ค. ์ด์ ๋ ์ฑ์ด ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ง์ ๋ฌผ๋ฆฌ ์ฃผ์๋ก ๋ค๋ฃจ๋ ๊ฒ์ด ์๋๋ผ,๊ฐ์ ์ฃผ์๋ฅผ ํตํด ์ ๊ทผํ๊ธฐ ๋๋ฌธ์ด๋ค. ๊ทธ๋ฆฌ๊ณ ๊ทธ ๊ณผ์ ์ ์๊ฐ๋ณด๋ค ๋จ์ํ์ง ์๋ค.๋จผ์ ๊ฐ์ ์ฃผ์๋ฅผ ๋ฌผ๋ฆฌ ์ฃผ์๋ก ๋ฒ์ญํด์ผ ํ๊ณ ํ์ํ ๋ฐ์ดํฐ๊ฐ ์์ง RAM์ ์์ผ๋ฉด ๊ฐ์ ธ์์ผ ํ๊ณ ์ด ๊ณผ์ ์์ฒด๋ ๋น์ฉ์ด ๋ ๋ค์ด๋ฒ ๊ธ์์๋ ์ด ํ๋ฆ์ ์ดํดํ๊ธฐ ์ํด๊ฐ์ ๋ฉ๋ชจ๋ฆฌ, ํ์ด์ง, page fault, TLB๋ฅผ ํ๋์ ํ๋ฆ์ผ๋ก ์ ๋ฆฌํด๋ณด๋ ค๊ณ ํ๋ค.1. ์ฑ์ด ํ์ผ์ ์ฝ๋๋ค๊ณ ํด์, ํ์ผ ์ ์ฒด๊ฐ RAM์..
Day 5) ์บ์/์ง์ญ์ฑ: ๋ชจ๋ฐ์ผ ์ฒด๊ฐ ์ฑ๋ฅ์ ํต์ฌ๋ฉ๋ชจ๋ฆฌ ๊ณ์ธต: L1/L2/(๊ณต์ ๋ง์ง๋ง ๋จ๊ณ ์บ์) ↔ DRAM์บ์ ๋ผ์ธ(cache line), ์ง์ญ์ฑ(locality)ํฌ์ธํธ: ๊ฐ์ O(N)์ด๋ผ๋ ์ ๊ทผ ํจํด์ด ๋ค๋ฅด๋ฉด ์ค์ ์ฑ๋ฅ์ ํฌ๊ฒ ๋ฌ๋ผ์ง ์ ์๋ค์ ๋ฆฌ ์ง๋ฌธ๋ด ์ฝ๋์์ ‘๋๋ค ์ ๊ทผ’์ด ๋๋ ๋ถ๋ถ์ ์ด๋์ธ๊ฐ?Intro์ฝ๋๋ฅผ ๊ณต๋ถํ๋ค ๋ณด๋ฉด ์์ฐ์ค๋ฝ๊ฒ ์ด๋ฐ ์๊ฐ์ ํ๊ฒ ๋๋ค.“๋ ๋ค O(N)์ด๋ฉด ์ฑ๋ฅ๋ ๋น์ทํ์ง ์์๊น?”๊ทธ๋ฐ๋ฐ ์ค์ CPU๋ ๊ทธ๋ ๊ฒ ๋จ์ํ๊ฒ ๋์ํ์ง ์๋๋ค.CPU๋ ๋ฐ์ดํฐ๋ฅผ ์ฌ์ฉํ ๋๋ง๋ค DRAM์ ์ง์ ๊ฐ์ ๊ฐ์ ํ๋์ฉ ์ฝ์ง ์๋๋ค.ํจ์ฌ ๊ฐ๊น์ด ์บ์(cache) ๋ฅผ ๋จผ์ ํ์ธํ๊ณ , ํ์ํ ๋ฐ์ดํฐ๋ ๊ฐ ํ๋๊ฐ ์๋๋ผ cache line ๋จ์๋ก ๊ฐ์ ธ์จ๋ค. ์ฆ, ์ฑ๋ฅ์ ๋จ์ํ ์ผ๋ง๋ ๋ง์ด ์ ๊ทผํ..
0. ๋ค์ด๊ฐ๊ธฐ์ด์์ฒด์ ๋ฅผ ๋ณด๋ฉด ์ฉ์ด๊ฐ ํ ๋ฒ์ ๋ฑ์ฅํ๋ค.interrupt, system call, exceptionpage table, TLB, page faultswap, thrashing, working set์ด ๊ธ์ ๊ฐ๋ ์ ๋์ดํ๊ธฐ๋ณด๋ค, ํ๋ฆ์ ๋ฐ๋ผ๊ฐ๋ฉฐ ์ ๋ฆฌํ๋ ๊ฑธ ๋ชฉํ๋ก ํ๋ค.1. ์ปค๋๋ก ๋ค์ด๊ฐ๋ ์ฌ๊ฑด์ 3๊ฐ์ง๋ก ๋ฌถ์ธ๋คCPU๋ ์๋ ๋ช ๋ น์ด๋ฅผ ์์๋๋ก ์คํํ๋ค.๊ทธ๋ฐ๋ฐ ์ด๋ค ์๊ฐ์๋ ์คํ์ด ๋๊ธฐ๊ณ ์ปค๋ ์ฝ๋๊ฐ ์คํ๋๋ค.์ด ์ฌ๊ฑด์ ํฌ๊ฒ 3๊ฐ์ง๋ค.1.1. Hardware Interrupt (์ธ๋ถ์์ ๋ค์ด์ด)์ธ๋ถ ์ฅ์น/ํ์ด๋จธ/I/O ์๋ฃ/์ ๋ ฅ ๊ฐ์ ์ด๋ฒคํธ๊ฐ ์์ธ์ด๋ค.๋น๋๊ธฐ(asynchronous) ์ฑ๊ฒฉ์ด๋ผ ํ์ฌ ์ฝ๋ ํ๋ฆ๊ณผ ๋ฌด๊ดํ๊ฒ ๋ค์ด์ฌ ์ ์๋ค.interrupt handler๊ฐ ์ด๋ฅผ ์ฒ๋ฆฌํ๋ฉฐ, ์ ํต์ ์ผ๋ก..
0. ์๋ก Swift์์ Hashable ํ๋กํ ์ฝ์ Equatable์ ์์ํ๋ค.์ฆ Hashable์ ์ฑํํ๋ ค๋ฉด == ๋น๊ต๊ฐ ๊ฐ๋ฅํ ํ์ ์ด์ด์ผ ํ๋ค๋ ๋ป์ด๋ค.์ด๋ฅผ ์ฒ์ ๋ดค์ ๋ “ํด์๋ง ์์ผ๋ฉด ๋์ง ์ equality๊น์ง ์ธ์ด ์ฐจ์์์ ๊ฐ์ ํ ๊น”๋ผ๋ ์๋ฌธ์ ๊ฐ๊ฒ ๋์๋ค. ์ด ์๋ฌธ์ ํด๊ฒฐํ๊ธฐ ์ํด Dictionary/Set์ ๋์ ๋ฐฉ์๊ณผ ํด์ ์ถฉ๋(collision)์ ๋ํด ํ์ตํ๊ณ ๋ด์ฉ์ ์ ๋ฆฌํด๋ณธ๋ค.1. Dictionary์ Key์ Set์ Element๋ Hashable์ด์ด์ผ ํ๋คSwift ํ์ค ๋ผ์ด๋ธ๋ฌ๋ฆฌ์์ ๋ค์์ ์ด๋ฏธ ๊ฒฐ์ ๋์ด ์๋ค.Dictionary์์ Key๋ Hashable์ด์ด์ผ ํ๋ค.Set์์ Element๋ Hashable์ด์ด์ผ ํ๋ค.์ฆ, ํด์ ๊ธฐ๋ฐ ์ปฌ๋ ์ ์ ๊ตฌ์ฑ์์ด ๋๋ ค๋ฉด Hashable..
- Jetsam
- Swift
- xcode26.3
- tipkit
- page fault
- ์์ง๋์ด
- Xcode
- ํ๊ณ
- spatial locality
- ๋ชจ๋ฐ์ผ์์ง๋์ด
- cs
- cpu
- Meet agentic coding in Xcode
- BOJ
- 24๋ ํ๊ณ
- branchless
- 2026๋ ๊ณํ
- temporal locality
- TLB
- ํ
- ์คํฐ๋
- IOS
- ๊ฐ๋ฐ์
- Memory
- ์๋ฃ ๊ตฌ์กฐ
- misprediction
- 2025๋ ํ๊ณ
- ์คํ
- speculative
- C++
- Total
- Today
- Yesterday