๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐Ÿš— Major Study (Bachelor)/๐ŸŸฉ Computer Architecture

์ปดํ“จํ„ฐ ๊ตฌ์กฐ 5_Cache Performance

by UKHYUN22 2021. 12. 1.
728x90

๊ทธ๋Ÿฌ๋ฏ€๋กœ Block์„ ๊ฐ€์ ธ์˜ฌ ๋•Œ A ๋งŒ ๊ฐ€์ ธ์˜ค๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ B๋„ ๊ฐ€์ ธ์˜ค๋Š” ๊ฒƒ,
์ฆ‰ ํ•œ Block ์•ˆ์— ํ•œ word๋งŒ ๋“ค์–ด์˜ค๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ์—ฌ๋Ÿฌ ๊ฐœ์˜ word๊ฐ€ ๋“ค์–ด์˜ค๊ฒŒ ํ•˜๋„๋ก ํ•ด์•ผ ํ•œ๋‹ค๋Š” ๊ฒƒ์ด๋‹ค.

 

 

 


ํšŒ์ƒ‰ ๋ถ€๋ถ„์ด ํ•œ Block์ด๊ณ  ํ•˜๋‚˜์˜ word๋งŒ ์žˆ๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ 4word๊ฐ€ ์žˆ๋Š” ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค. ์ฆ‰, A๋ฅผ ์“ฐ๊ณ  B๋ฅผ ์“ฐ๊ฒŒ ๋  ๋•Œ ๋ฉ”๋ชจ๋ฆฌ๊นŒ์ง€ ๊ฐ€์ง€ ์•Š๊ณ  Cache์— ์ ‘๊ทผํ•ด์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋Š” ์žฅ์ ์ด ์žˆ๋‹ค.

2bit๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š” ๊ฒƒ์€ Word ๋‹จ์œ„์ด๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค.(MIPS๋Š” byte ๋‹จ์œ„์ด๋‹ค.) 64KB๋Š” 2์˜ 16์Šน Byte ์ด๊ณ  2bit๊ฐ€ ์—†์–ด์ง€๋ฏ€๋กœ 2์˜ 14์Šน Byte ์ฆ‰, 2์˜ 14์Šน word๊ฐ€ ๋“ค์–ด์˜ฌ ์ˆ˜ ์žˆ๋‹ค. 1 block์— 4word(2์˜ 2์Šน word) ๋งŒํผ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ๋‹ค.
14bit ์ค‘ 1block์ด 4word์ด๊ณ  2์˜ 2์Šน word๊ฐ€ ๋œ๋‹ค. 4๊ฐœ๋งŒํผ ์žˆ๊ณ  ๊ทธ ์ค‘์—์„œ ๋‚ด๊ฐ€ ์›ํ•˜๋Š” word๊ฐ€ ์›ํ•˜๋Š” ๊ฒƒ์ธ์ง€ ์ฐพ๋Š” ๊ฒƒ์„ block offset์ด๋ผ๊ณ  ํ•œ๋‹ค.  ๊ทธ๊ฒƒ์ด LSB 2bit๊ฐ€ ํ•˜๋Š” ์—ญํ• ์ด๋‹ค. 14bit ์ค‘ 2bit์€ block offset์ด๊ณ  12bit์€ 
Index๊ฐ€ ๋œ๋‹ค.  
64KB = 2^16Byte = 2^14 Wodr = 2^12Block์ด๋ฏ€๋กœ 12bit๋Š” Index 2bit๋Š” Block offset

 

 

 


Multiple Word Direct Mapped Cache
๊ฐ™์€ Block ์•ˆ์— ์žˆ๋Š” word๋Š” Tag์™€ Valid๋ฅผ ๊ณต์œ ํ•œ๋‹ค. ๋ฐ˜๋ฉด miss๊ฐ€ ์žˆ์„ ๊ฒฝ์šฐ 1word == 1block์ธ ๊ฒฝ์šฐ์™€ ๋‹ค๋ฅด๊ฒŒ
4word == 1block์ธ ๊ฒฝ์šฐ ์‹œ๊ฐ„์ด ๋” ๋งŽ์ด ๊ฑธ๋ฆฐ๋‹ค. ==> miss panelty
hit๊ฐ€ ๋  ํ™•๋ฅ ์„ ๋†’์ด๋Š” ๊ฒƒ์ด๋‹ค. 1block ์•ˆ์— ๋ช‡ ๊ฐœ์˜ word๋ฅผ ๋‘˜ ๊ฒƒ์ธ๊ฐ€๊ฐ€ ๋‹ค์Œ ๊ด€์‹ฌ๊ฑฐ๋ฆฌ๊ฐ€ ๋œ๋‹ค.

 


Execution time = (executeion clock cycles + stall clock cycle ) * cycle time
miss penalty๋ž€..
๋ฉ”๋ชจ๋ฆฌ๋กœ๋ถ€ํ„ฐ ๊ทธ block์„ ์บ์‹œ๋กœ ๊ฐ€์ง€๊ณ  ์˜ค๋Š” ์‹œ๊ฐ„๊ณผ ๊ทธ ๋‹ค์Œ์— CPU๋กœ ๋ณด๋‚ด์ฃผ๋Š” ๊ฒƒ. Block ๋‹จ์œ„๋กœ ์›€์ง์ด๊ธฐ ๋•Œ๋ฌธ์— miss penalty๊ฐ€ ์ปค์ง€๊ฒŒ ๋œ๋‹ค. hit time์€ ๊ต‰์žฅํžˆ ์ž‘๋‹ค. ๊ทธ๋Ÿฌ๋ฏ€๋กœ miss ratio๋ฅผ ์ค„์ด๊ณ  miss penalty๋„ ์ค„์ด๋Š” ๋ฐฉ๋ฒ•์œผ๋กœ ๋‚˜์•„๊ฐ€์•ผ ํ•œ๋‹ค. What happnens if we increase Block size???

 


1block 1word๋ฅผ ์‚ฌ์šฉํ•  ๊ฒฝ์šฐ temporal ํ•˜์ง€๋งŒ spacial ํ•˜์ง€ ์•Š์€ ๋‹จ์ ์ด ์žˆ๊ณ  1block ๋งŽ์€ word๋ฅผ ์„ค์ •ํ•ด๋ฒ„๋ฆด ๊ฒฝ์šฐ
cache์— ์ ์€ Block์ด ๋“ค์–ด๊ฐ€๋ฒ„๋ฆฌ๊ณ  spacial locality๋ฅผ ๋„˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ํฌํ•จ๋  ์ˆ˜ ์žˆ๋‹ค. Block ์•ˆ์— ์žˆ๋Š” word ์‚ฌ์ด์˜ spacial locality๊ฐ€ ์ค„์–ด๋“ค๊ณ  ๋ฐ์ดํ„ฐ transfer ์‹œ๊ฐ„์ด ์ฆ๊ฐ€ํ•˜๋Š” ๋‹จ์ ์ด ์ƒ๊ธด๋‹ค.

 


Performance
์ข‹์•„์กŒ๋‹ค๊ฐ€ ์˜ฌ๋ผ๊ฐ€๋Š” ์ˆœ๊ฐ„์ด ์กด์žฌํ•œ๋‹ค.