bluecomsci.files.wordpress.com · Web viewMain Memory and Cache. 5705100021 ชนิษฐา...

26
Main Memory and Cache 5705100021 ชชชชชช ชชชชชช 5705100042 ชชชชชชชช ชชชชชชชชชช 5705100044 ชชชชชชชช ชชชชชชชชชชชชช 5705100058 ชชชชช ชชชชชชช 5705100059 ชชชชชช ชชชชชชชชชชชช 5705100602 ชชชชชช ชชชชชชช

Transcript of bluecomsci.files.wordpress.com · Web viewMain Memory and Cache. 5705100021 ชนิษฐา...

Page 1: bluecomsci.files.wordpress.com · Web viewMain Memory and Cache. 5705100021 ชนิษฐา ผิวคำ. 5705100042 พัชนพรรณ อนันตศัพท์.

Main Memory and Cache5705100021 ชนษฐา ผวคำา

5705100042 พชนพรรณ อนนตศพท

5705100044 สรฤกษ อศวศรวลาศ

5705100058 ณฐพล ฐตสร

5705100059 สรวช วฒนธญญาการ

5705100602 ธนชชา ศรอดร

Page 2: bluecomsci.files.wordpress.com · Web viewMain Memory and Cache. 5705100021 ชนิษฐา ผิวคำ. 5705100042 พัชนพรรณ อนันตศัพท์.

บทคดยอ

Main Memory และ Cache เปนหนวยความจำา คอ Memory เชนเดยวกน เพยงแต Main Memory ออกแบบมาเพอใหเกบขอมล ทความเรวไมสงมากนก ในขณะทCache ออกแบบมาเพอใหเกบขอมลหรอชดคำาสงทมความเรวสงมาก ทถกเรยกใชบอยครง เมอชดคำาสงถกนำาไปใชใน Cache จะ

ทำาใหการทำางานเรวขนแตขณะเดยวกน Cache กมราคาสง แตMain Memory มราคาถกกวา เราควรเลอกหนวยความจำาทเหมาะกบการใชงาน

จรงๆเพอตามวตถประสงค

คำาสำาคญ : Main Memory , Cache , Memory

Page 3: bluecomsci.files.wordpress.com · Web viewMain Memory and Cache. 5705100021 ชนิษฐา ผิวคำ. 5705100042 พัชนพรรณ อนันตศัพท์.

หนวยความจำาหลก (Main Memory) ของคอมพวเตอรหนวยความจำาหลก (Main Memory) คอ หนวยความจำาหลกเปนหนวยความจำาพนฐานในคอมพวเตอรทกเครอง เปนหวใจของการทำางานในรปแบบอตโนมต มหนาทเกบขอมลตางๆ ทปอนเขามาเพอใหหนวยประมวลผลนำาไปใช และเกบขอมลทเกยวกบคณสมบตและระบบการทำางานของเครองคอมพวเตอรดวยหนวยของขอมลทจดเกบในหนวยความจำาเรยกวาไบต (byte) 1 ไบต จะประกอบไปดวย 8 บต นอกจากนยงมหนวยเปนกโลไบต (kilobyte หรอ KB ) ซงมคาเทากบ 1,024 ไบต , เมกะไบต (megabyte หรอ MB) มคาโดยประมาณหนงลานไบต หรอ 1,024 KB , กกะไบต ( gigabyte หรอ GB ) มคาประมาณหนงพนลานไบตหรอหนงลานกโลไบตและเทราไบต ( terabyte หรอ TB ) มคาประมาณหนงลานลานไบต หนวยความจของขอมลในหนวยความจำาสรปไดดงน

8 bits = 1 byte1024 bytes = 1 kilobyte (KB)1024 KB = 1 megabyte (MB)1024 MB = 1 gigabyte (GB)1024 GB = 1 terabyte (TB)หนวยความจำาหลกทเปนทรจกกนอยางกวางขวางม 3 ประเภท คอ แรม (RAM) รอม (ROM) และซมอส (CMOS)

แรม (RAM)

Page 4: bluecomsci.files.wordpress.com · Web viewMain Memory and Cache. 5705100021 ชนิษฐา ผิวคำ. 5705100042 พัชนพรรณ อนันตศัพท์.

Random access memory หรอ RAM เปนอปกรณหรอแผงวงจรททำาหนาทเกบขอมลและโปรแกรมคอมพวเตอร หนวยความจำาแรม บางครงเรยกวาหนวยความจำาชวคราว (volatile) ทงนเนองจากโปรแกรมและขอมลทถกเกบในหนวยความจำาแรมจะถกลบหายไป เมอปดเครองคอมพวเตอร ดงนนถาตองการเกบขอมลและโปรแกรมทอยในแรมไวใชงานในอนาคตจะตองบนทกขอมลเหลานน ลงในหนวยความจำาสำารอง (secondary storage) กอนทจะปดเครองคอมพวเตอรทกครง เครองคอมพวเตอรพกพาบางประเภทจะใชหนวยความจำา ทเรยกวา flash ROM หรอ flash memory ซงสามารถจดเกบขอมลและโปรแกรมไวได 

รอม (ROM)

Read - 0nly memory หรอ ROM เปนหนวยความจำาทบนทกขอสนเทศและคำาสงเรมตน (start -up) ของระบบ คณสมบตเดนของรอมคอ ขอมลและคำาสงจะไมถกลบหายไป ถงแมวาจะปดเครองคอมพวเตอร หรอไมมกระแสไฟฟาหลอเลยงแลวกตาม

Cache คออะไร? และ ทมาของ CacheCache นน ถาวากนตามหลกการ มนกคอ หนวยความจำาชนดหนง ซงจะมความเรวในการเขาถงและการถายโอนขอมลทสง โดยจะมหนาทในการเกบ พก ขอมลทมการใชงานบอยๆ เพอเวลาท CPU ตองการใชขอมลนนๆ จะไดคนหาไดเรว โดยทไมจำาเปนทจะตองไปคนหาจากขอมลทงหมด 

เปรยบเทยบกนงายๆ กเหมอนกบการอานหนงสอ แลวเวลาทเจอขอความทนาสนใจ กทำาการจดบนทกไวทสมด แลวเมอเวลาตองการขอมลนนๆ กสามารถคนหาจากในสมดจดไดงายกวาเปดหาจากหนงสอทงเลม แนนอน ขอมลทจดลงในสมดนน มขนาดนอยกวาในหนงสอแนๆ คงไมมใครทจะลอกขอมลทกบรรทด ทกหนาของหนงสอ ลงในสมดจดเปนแนแท 

Page 5: bluecomsci.files.wordpress.com · Web viewMain Memory and Cache. 5705100021 ชนิษฐา ผิวคำ. 5705100042 พัชนพรรณ อนันตศัพท์.

ในปจจบน เราจะพบการใชงาน Cache อย 2 แบบ นนกคอ Memory Cache และ Disk Cache โดยทหลกการทำางานของทง 2 ชนดนกคลายๆ กนกลาวคอ Disk Cache นน จะเปนการอานขอมลทตองการใชงานเขามาเกบไวในหนวยความจำาหลก เมอ CPU มการเรยกใชงาน กจะเขาไปคนหาในหนวยความจำาหลกกอน หากวาไมพบจงจะไปคนหาใน Harddisk ตอไปในกรณของ Memory Cache นน เปนอกลำาดบขนหนงถดจาก Disk Cache นนกคอ จะทำาการดงขอมลทมการเรยกใชงานบอยๆ เขามาเกบไวในหนวยความจำา ขนาดเลก ทมความไวสงกวาหนวยความจำาหลก เมอ CPU ตองการใชงาน กจะมองหาขอมลทตองการท หนวยความจำาขนาดเลกนนกอน กอนทจะเขาไปหาในหนวยความจำาหลกท มการเขาถงและการสงถายขอมลทชากวาตอไป และ หนวยความจำาขนาดเลกๆ นน เรากเรยกมนวา Cache นนเอง 

สำาหรบในบทความน เราจะพดถงเรอง Memory Cache กนอยางเดยว เพราะฉะนนผมจะขอเรยกแคสนๆวา Cache กขอใหเปนอนเขาใจตรงกนนะครบ วามนหมายถง Memory Cache 

          Cache นน ตำาแหนงของมน จะอยระหวาง CPU กบ หนวยความจำาหลก โดยมนจะทำาการดง หรอ เกบขอมลทมการเรยกใชงานบอยๆ จากหนวยความจำาหลก ซงความไวในการอาน หรอ สงถายขอมลจาก Cache ไปยง CPU หรอ จาก CPU

Page 6: bluecomsci.files.wordpress.com · Web viewMain Memory and Cache. 5705100021 ชนิษฐา ผิวคำ. 5705100042 พัชนพรรณ อนันตศัพท์.

ไปยง Cache นน จะทำาไดเรวกวา จากหนวยความจำาหลกไปยง CPU หรอจาก CPU ไปยงหนวยความจำาหลก มาก เพราะทำาดวย SRAM ซงมความไวสง และมราคาแพงกวาหนวยความจำาของระบบทเปน DRAM อยมาก และกเพราะราคาทแพงน ทำาใหขนาดของ Cache ทใชในระบบ จงมขนาดนอยกวาหนวยความจำาหลกอยมากเชนกน 

DRAM หรอ Dynamic RAM นนจะทำาการเกบขอมลในตวเกบประจ ( Capacitor ) ซงจำาเปนจะตองมการ refresh เพอ เกบขอมลใหคงอย โดยการ refresh น ทำาใหเกดการหนวงเวลาขนในการเขาถงขอมล และกเนอง จากทมนตอง refresh ตวเองอยตลอดเวลานเอง จงเปนเหตใหไดชอวา Dynamic RAM 

สวน SRAM นนจะตางจาก DRAM ตรงทวา DRAM จะตองทำาการ refresh ขอมลอยตลอดเวลา แตในขณะท SRAM จะเกบขอมลนนๆ ไว และจะไมทำาการ refresh โดยอตโนมต ซงมนจะทำาการ refresh กตอเมอ สงใหมน refresh เทานน ซงขอดของมน กคอความเรว ทเรวกวา DRAM ปกตมาก แตกดวยราคาทสงกวามาก จงเปนขอดอยของมนเชนกน 

จากทกลาวมาขางตน กดเหมอนวา Cache นน มความสำาคญ ตอความเรวของระบบอยไมใชนอย แลวทำาไมเราถงเพงจะใหความสำาคญกบมนละ? เพราะวา เพงมการใช Cache กบ CPU รนใหมๆ อยางนนหรอ? 

เปลาเลย จรงๆแลว เรามการใช Cache มาตงนานแลว ตงแตรน 80486 ซงสมยนนทาง Intel กไดเรมมการใส Cache ใหกบ CPU ของตน โดยเรมใสขนาด 8KB ในรน 486DX-33 และ ไดทำาการเพมเปน 16KB ในรน 486DX4 เปนตนมา ซง Cache ทใสไปนน ไดใสเขาไปในแกนหลกของ CPU เลย ทำาใหการตดตอระหวาง CPU กบ Cache นน ทำาไดเรวมาก และมการใช Cache อกขนหนง โดย

Page 7: bluecomsci.files.wordpress.com · Web viewMain Memory and Cache. 5705100021 ชนิษฐา ผิวคำ. 5705100042 พัชนพรรณ อนันตศัพท์.

ใสไวท Mainboard ซงจะมขนาดทใหญกวา แตชากวา Cache ทใสไวในแกน CPU 

เมอ CPU ตองการขอมลใดๆ กจะทำาการคนหาจาก Cache ทอยภายในแกน CPU กอน หากวาพบขอมลทตองการ ( เรยกวา Cache Hit ) กจะดงขอมลนนๆ มาใชงานไดเลย แตหากไมพบ ( เรยกวา Cache Miss ) กจะทำาการคนหาในสวนของ Cache ทอยบน Mainboard ตอไป และ หากวายงไมพบอก กจะไปคนหาในหนวยความจำาหลกตอไปอกขน และหากวาในหนวยความจำาหลกนน กยงไมมขอมลทตองการ กจะไปคนหาตอใน Harddisk ตอไป 

ดวยตำาแหนงในการเกบ Cache ทตางกน และ ลำาดบขนในการเรยกใชงานตางกน จงเรยก Cache ทอยในแกนของ CPU วา Internal Cache หรอ Level 1 Cache ( L1 Cache ) และ เรยก Cache ทอยบน Mainboard นนวาเปน External Cache หรอ Level 2 Cache ( L2 Cache ) 

ตอมา ใน CPU รน Pentium ของ Intel นน กไดทำาการแบง Cache ภายใน ออกเปน 2 สวนเพอแยกการทำางานกน ซงกไดแบงจาก 16KB น ออกเปน 8KB เพอใช เกบคำาสงตางๆ เรยกวา Instruction Cache และ อก 8KB เพอใชเกบขอมลตางๆ เรยกวา Data Cache 

และตอมา CPU ในรน Pentium II ของทาง Intel นน กไดมการเปลยนแปลงตำาแหนงการเกบ Cache ระดบ 2 ซงจากปกตจะจดเกบไว บน Mainboard กทำาการยาย มาเกบไวบน Package เดยวกบ CPU ( CPU Intel Pentium II นน จะมลกษณะเปน Cartridge แผนกวางๆ ม CPU อยตรงกลางและ เกบ Cache ไวขางๆ แลวรวมกนเปน Package เดยวกน เรยกวา Single Edge Contact Cartridge หรอ SECC แตกยงคงเรยก Cache ทอยบน SECC วาเปน External Cache หรอ Level 2 Cache เชนเดม เพราะยงคง อย

Page 8: bluecomsci.files.wordpress.com · Web viewMain Memory and Cache. 5705100021 ชนิษฐา ผิวคำ. 5705100042 พัชนพรรณ อนันตศัพท์.

ภายนอกตว CPU เพยงแคอยบน Package เดยวกนเทานน 

แตดวยราคาทสงมากของ CPU Pentium II ในสมยทเพงวางตลาดนน ทำาใหมผทมอำานาจในการซอมาใชงานนอย ทาง Intel จงไดตด Cache ระดบ 2 ออก จาก Pentium II เพอลดตนทนการผลต และ เปลยนรปแบบ Package ใหดบางลง แลวเรยก CPU ใหมนวา Celeron และ เรยก Package ของ Celeron วา Single Edge Processor Package 

จากทกลาวมาแลวขางตนมาแลววา Cache นนมราคาสง เพราะฉะนน เมอตด Cache ระดบ 2 ออกทำาใหราคาของ Celeron ถกกวา Pentium II อยมาก และ ทาง Intel กหวงจะใช Celeron ทราคาถกนน ตตลาดระดบกลาง และ ระดบลาง 

แตแลวกฝนสลาย เพราะ Celeron ทไมม Cache นน ในดานการเลนเกมส ทไมมการเรยกใช Cache เทาไร ทำาคะแนน หรอ มความสามารถ เทยบเทากบ Pentium II ทระดบความเรวเทาๆ กน แต ในงานดาน Office Application เชน Microsoft Word, Microsoft Excell กลบทำาไดแยมากๆ จากทเหนกคอ Celeron ทความเรว 300 MHz นน เมอใชงานกบ Application ดงกลาว กลบชากวา Pentium MMX 233 เสยอก ทำาให Celeron รนดงกลาวไมไดรบความนยมเทาใดนก 

ทาง Intel จงไดผลต Celeron รนใหมทไดเตม Cache ระดบ 2 เขาไปดวย โดยใหมขนาดเพยง 1/4 ของ Pentium II แตใหทำางานดวย ความเรวเทากบ ความเรวของ CPU ( Cache ระดบ 2 ของ Pentium II นนจะทำางานทความเรวเพยงครงหนงของความเรว CPU ) และเพยงแคเพม Cache ระดบ 2 เขาไปนเอง ผลคะแนนทไดจากการทำางานกบ Application ดงกลาวนน กลบเพมขนมามาก ตางจาก รนเดมทไมม Cache อยางเหนไดชด 

Page 9: bluecomsci.files.wordpress.com · Web viewMain Memory and Cache. 5705100021 ชนิษฐา ผิวคำ. 5705100042 พัชนพรรณ อนันตศัพท์.

นเปนจดหนงละนะ ททำาให Cache เรมเปนทสนใจ มากขน แตยงไมหมดเทาน อกจดหนงททำาใหเรองของ Cache นน เปนทกลาวถง กนมากขนในขณะน เกดจากการประกาศตวของ AMD K6-III 

AMD K6-III มอะไรด ถงทำาใหเรองของ Cache เปนทนาสนใจนก อนนคงตองเทาความกลบไปอกสกนดหนงกอน วา CPU ของ AMD นนกมการใช Internal Cache และ External Cache เชนเดยวกบ CPU ของ Intel มาโดยตลอด เมอ Intel เปลยนสถาปตยกรรมใหม เอา Cache ไปไวบน Package ของ CPU และไมมการใช Cache บน Mainboard อกตอไป แตทาง AMD กยงคงใชงานบน สถาปตยกรรมเดม คอม Internal Cache ภายใน CPU และม External Cache อยบน Mainboard เรอยมา จนถงรน AMD K6-2 

พอมา AMD K6-III ( หรอกคอ AMD K6-3 แตมการเปลยนชอ เพอใหสอดคลองกบ Intel Pentium III ) ทาง AMD กไดทำาการ เพม Cache เขาไปท Package ของ CPU บาง ( แตไมไดรวมเขาไปในแกนของ CPU ) และ กยงคงใหม Cache บน Mainboard เชนเดม ดงนน จงเกดมการใชงาน Cache ถง 3 ระดบดวยกน ( เรยกวา Tri-Level Cache ) โดย ระดบแรกสดนน กคอ Cache ทอยภายในแกนของ CPU เลย ระดบถดมา กอยบน Package ของ CPU และ ระดบสดทายอยบน Mainboard ซงขนาดของ Cache กจะมากขนตามลำาดบ ในขณะทความเรวในการใชงานกลบลดลงตามลำาดบ 

และนเอง จงทำาใหเรองของ Cache นนเปนทนาสนใจยงนก ทงเรองทวา ขนาดของ Cache ทมใน Celeron มนอย แตทำางานดวยความเรวสง เทากบความเรว CPU สวน Pentium II ม Cache มากกวา Celeron แตทำางานดวยความเรวเปนครงหนง ของ CPU อยางไหนสำาคญกวากน ขนาด หรอ ความเรว? และ เรองของ Tri-Level Cache ใน AMD K6-III นน จะทำาใหระบบเรวขนจรงไหม? ม Cache หลายระดบดกวาไหม? 

Page 10: bluecomsci.files.wordpress.com · Web viewMain Memory and Cache. 5705100021 ชนิษฐา ผิวคำ. 5705100042 พัชนพรรณ อนันตศัพท์.

เราจะมาดกนตอไป ถงรายละเอยด และ ความสำาคญของ Cache ในแตละระดบกนตอไป 

Cache ระดบ 1 ( Level 1 cache )

Cache ระดบ 1 นน จะเปนสวนทสำาคญทสด และตำาแหนงของมนกจะอยใกลๆ กบตว CPU ทสด ทำาให CPU สามารถเขาถงไดรวดเรวมาก ซงโดยปกตแลวขนาดของมน กจะไมใหญนก เชน สำาหรบ CPU Intel Pentium II หรอ Intel Celeron จะม L1 Cache ขนาดเพยง 32 KB และ บน AMD K6-2 จะมขนาด 64 KB ซงถงแมวาจะมขนาดเพยง เลกนอย แตกมความสำาคญมาก 

ลองดผลการทดลองประกอบ เพอดความสำาคญของ Cache ทง 2 Level นะครบ

AMD K6-2 350MHz บน ASUS P5A ( L2 512KB )

PC100 SDRAM 1x128 MB

Matrox Millenium G200 8 MB Display Card Driver Version 4.26

ทดสอบโดย Program Final Reality 1.01 บน Windows 98 / DirectX 6.0

ทดสอบ 4 ครง โดยทดสอบ ครงท 1 L1 on L2 on, ครงท 2 L1 on L2 off, ครงท 3 L1 off L2 onและ ครงสดทาย L1 off L2 off

ผลทไดจากการทดสอบเปนดงกราฟนครบ

Page 11: bluecomsci.files.wordpress.com · Web viewMain Memory and Cache. 5705100021 ชนิษฐา ผิวคำ. 5705100042 พัชนพรรณ อนันตศัพท์.

จากรป จะเหนวา เมอ disable L1 cache แลว Performance จะ drop ลงอยางเหนไดชดๆ เลย และ เชนกน เมอ disable L2 Cache แลว Performance ก drop ลงเชนกน แตกยงเหนผลไดไมชดเจนเทากบการ disable L1 Cache 

เอาละ ทนดผลการทดสอบอยางไมเปนทางการของผมประกอบนะครบ

Intel Pentium II 300 MHz ( L1 32KB, L2 512 KB ) บน DFI LX ( ท office )

PC 66 SDRAM 1x32 MB

ทดสอบโดย Wintum 98 version 1.0.33  

การทดสอบ

Memory Performance ( MB/s )

L1:on, L2:on

636.0284

L1:on,

538.4206

Page 12: bluecomsci.files.wordpress.com · Web viewMain Memory and Cache. 5705100021 ชนิษฐา ผิวคำ. 5705100042 พัชนพรรณ อนันตศัพท์.

L2:off

L1:off, L2:on

*

L1:off, L2:off

*

หมายเหต * หมายถง ใชเวลาในการ boot นานมาก ( มากกวา 5 นาท ) และ เมอเรยก Program กคางไปเลย ( ไม hang แตนานมาก กเลยไมไดทดสอบ )

จากผลการทดลองขางตน ทง 2 การทดลอง กพอจะสรปกนไดแลวนะครบ ถงความสำาคญของ Level 1 Cache และ Level 2 Cache โดยเฉพาะอยางยง กบ Level 1 Cache นน เมอผมปดการใชงานของมนท BIOS เทานนหละ ( Disable Level 1 Cache ) กวาจะ boot ทนงกนานเลย กวาจะทำาอะไรๆ กลำาบาก จะขยบ mouse ยงยากเลยครบ พอเรยก program กรอกวา 5 นาท ถงจะขนหนาจอมา ยงถา เปน mode ท disable ทง L1 และ L2 cache นน พอเรยก program กหยดนงไปเลย 

Level 1 cache นน จะทำางานดวยความเรวทเทากบ CPU เลย ( คงเพราะฝงอยในตว CPU ) และ สำาหรบกวาทวา ยงม Cache มากๆ กจะยงเรวกวา แนนอนวา คำากลาวนเปนจรง แตกไมใชทงหมดทกกรณ เพราะวามองคประกอบอนๆ ดวย ดงจะเหนไดจาก L1 cache ของ Intel Pentium II ซง ม ขนาดเพยง 32 KB แตมการเขาถงได 4 ทศทาง ( 4 way associative ) ในขณะท AMD K6-2 จะม L1 cache ขนาด 64 KB แตม การเขาถงไดเพยง 2 ทศทาง ( 2 way

Page 13: bluecomsci.files.wordpress.com · Web viewMain Memory and Cache. 5705100021 ชนิษฐา ผิวคำ. 5705100042 พัชนพรรณ อนันตศัพท์.

associative ) ซงในกรณของการเขาถงแบบสมนน Intel จะทำาไดเรวกวา AMD 

Cache ระดบ 2 ( Level 2 cache )

สวนถดมาในการคนหาขอมลของ CPU เมอคนหาใน Cache ระดบ 1 ไมพบ กคอ Cache ระดบ 2 ซง ขนาดของ Level 2 Cache นน กจะตางกน ตามรน และ ชนดของ CPU นนๆ ซง กแนนอน จะมความของความเรวแตกตางกนไปดวย 

จากทกลาวมาแลวเมอตอนตนๆ ถงเรองของ Celeron กบ Pentium II ทวา Celeron นนม Cache ระดบ 2 เพยง 128 KB แตทำางานดวยความเรวเทาๆ กบ CPU สวน Pentium II จะม Cache ระดบ 2 ถง 512 KB แตทำางานดวย ความเรวเพยง ครงหนงของความเรวของ CPU แลวอยางไหน สำาคญกวากน ความเรว หรอวาขนาด 

เราจะมาดผลการเปรยบเทยบประสทธภาพกนระหวาง Pentium II กบ Celeron ซงดจะยตธรรม และ เปนกลางทสด เพราะวา ตางกใชแกนของ CPU เหมอนๆกน จะตางกนกเพยงแคขนาด และ ความเรวของ Cache ระดบ 2 เทานน 

ใหสงเกตทรปขางลาง 2 รปตอไปน ซงเปนกราฟแสดงผลเปรยบเทยบ Performance ระหวาง Pentium II 300 และ Celeron 300A ดวย Mainboard ASUS P2B สวน spec อนๆ กตามทกลาวไวแลวขางตน ( ตอนทดสอบ K6-2 ) 

Page 14: bluecomsci.files.wordpress.com · Web viewMain Memory and Cache. 5705100021 ชนิษฐา ผิวคำ. 5705100042 พัชนพรรณ อนันตศัพท์.

แสดงผลการเปรยบเทยบระหวาง ขนาด และ ความเรวของ L2 cache ดวย Winstone 

แสดงผลการเปรยบเทยบระหวาง ขนาด และ ความเรวของ L2 cache ดวย Quake II

จะเหนไดวา ม Level 2 Cache มากๆ นน ให Performance ทดกวาจรงๆ แตกไมมากนก เหนผลไมชดเจน เมอเทยบ กบ Celeron ทม Level 2 Cache ทเรวๆ 

อยางไรกตาม ขนาดของ Level 2 cache นน กยงเปนจดหลกสำาคญของ Performance เพอลดการ access disk โดยการอานขอมลมาเกบไวท RAM และนำาสวนสำาคญๆ ทใชบอยๆ มาเกบท Cache นน ถา Cache มขนาดทใหญๆ การทจะตองอานขอมลจาก RAM ซงชากวา Cache นน กทำาไดดกวา ยงกบระบบ Network-File-Server นน ยงม Cache มากๆ และ เรวๆ จะยงด ดงนน Intel Pentium II Xeon จงม L2 Cache 512K หรอมากกวานน และ

Page 15: bluecomsci.files.wordpress.com · Web viewMain Memory and Cache. 5705100021 ชนิษฐา ผิวคำ. 5705100042 พัชนพรรณ อนันตศัพท์.

ทำางานทความเรวเทาๆ กบ CPU 

สำาหรบ AMD K6, K6-2 นน ใช cache ซงอยบน Mainboard ซง ความเรวสงสด กตาม FSB ทใช เชน K6-2 300 MHz นน Level 2 Cache กจะม ความเรว ท 100 MHz ( FSB 100 MHz ) แต Intel Pentium II - 300 MHz นน จะม Level 2 Cache ทความเรว 150 MHz และ Celeron 300A จะม Level 2 Cache ทมความเรวถง 300 MHz ซงสำาหรบ AMD K6-2 กบ Pentium II นน ดไมแตกตางเทาไร แตหากวา เปน Pentium II 400 ละ จะม Levl 2 Cache ททำางานท 200 MHz ในขณะท AMD K6-2 400 MHz กยงใช Cache ททำางานดวยความเรว 100 MHz เชนเดม นนกเปนสวนสำาคญจดหนงททำาใหผล Performance ในเรอง Memory Performance ของ AMD ดอยกวา Intel Pentium II และ Celeron 

แตในสำาหรบ AMD K6-3 นน ทาง AMD ไดรวม Level 2 cache เขากบ Package เดยวกบ CPU เลย โดยเกบฝงไวบนตวของ CPU เชนเดยวกบ Celeron แตมขนาดเปน 2 เทา และ ทำางานทความเรวเทาๆ กบ CPU ซงกทำาให AMD K6-3 นน ม L2 cache มากกวาถง Celeron 2 เทา และ ม Level 2 cache ทความเรวเปน 2 เทาของ Pentium II ( ทความเรวเทาๆกน ) 

มาดความสำาคญของ Levl 2 cache จากการทดลองอนๆ บางนะครบ อนนเปนการทดลองของทางบรษท Level 2 Company กนนะครบ โดยใช Program Ziff-Davis' Ver. 3.0 program MAC version ( ทดสอบกบเครอง Mac ) โดยทดสอบกบ L2 cache ขนาด 256 KByte และ 1024 KByte โดยผลทไดน เปน เปอรเซนตทเพมขนจากการทไมม L2 cache 

256 K 1,024 K

Processor 30% 57%

Page 16: bluecomsci.files.wordpress.com · Web viewMain Memory and Cache. 5705100021 ชนิษฐา ผิวคำ. 5705100042 พัชนพรรณ อนันตศัพท์.

Graphics Mix 27% 44%

Publishing Graphics Mix 38% 95%

QuickDraw Routines

Copy Bits 40% 70%

Text 47% 86%

Lines 49% 117%

กเปนผลไวดคราวๆนะครบ เพราะเปนผลบนเครอง Mac แตผลทไดกสามารถใชเปนขอสรปไดเชนกนถงความสำาคญ ของ Cache ไดเชนกน

Cache ระดบ 3 ( Level 3 cache )

AMD K6-III นน มจดทนาสนใจมากๆ อยางหนง นนกคอ K6-III นนจะม Level 2 cache ฝงอยใน chip CPU มาดวย แตในขณะเดยวกน Mainboard ทใชสำาหรบ AMD K6-III นน กม Cache มาใหดวย ทำาให มนมอง Cache บน Mainboard นนๆ เปน Cache ระดบ 3 ( Level 3 Cache ) 

ทน เรามาลองดกนวา ถาม Cache ระดบ 3 แลว Performance จะเพมขน หรอ ลดลงอยางไร และ ขนาดของ Cache ระดบ 3 นนจะตองเปนเทาไร โดยจากรปน เปนการทดลองจาก Tom's Hardware เปรยบเทยบใหเหนถงผลของการม Cache ระดบ 3 ท ขนาดตางๆ โดยทดสอบกบ CPU AMD K6-III ( เพราะเปนรนเดยวในปจจบนทมการใชงาน Cache ถง 3 ระดบ ) 

Page 17: bluecomsci.files.wordpress.com · Web viewMain Memory and Cache. 5705100021 ชนิษฐา ผิวคำ. 5705100042 พัชนพรรณ อนันตศัพท์.

จากกราฟ กคงจะเหนถง Performance ทเพมขนเมอม Cache ระดบ 3 และ Performance ทเพมขน กบ ขนาดของ Cache ระดบ 3 แลวนะครบ แตจะเปนเชนนกบทกกรณหรอไม เรามาลองวเคราะหกนดดกวานะครบ 

ถาผมกำาหนดให เวลาทใชในการอานขอมลจากแหลงตางๆ เปนดงน

Cache ระดบ 1 1 หนวยเวลา ( Unit )

Cache ระดบ 2 10 หนวยเวลา ( Unit )

Cache ระดบ 3 ขนาด 512 K

100 หนวยเวลา ( Unit )

Cache ระดบ 3 ขนาด 1,024 K

200 หนวยเวลา ( Unit )

Cache ระดบ 3 ขนาด 2,048 K

400 หนวยเวลา ( Unit )

หนวยความจำาหลก 1,000 หนวยเวลา ( Unit )

Page 18: bluecomsci.files.wordpress.com · Web viewMain Memory and Cache. 5705100021 ชนิษฐา ผิวคำ. 5705100042 พัชนพรรณ อนันตศัพท์.

เมอ CPU ตองการขอมลเพอการประมวลผล กจะมองหาขอมลทตองการดงกลาวเสยกอน จากใน Cache ระดบ 1 ซงถาหาพบ กจะใชเวลาเพยง ไมเกน 1 หนวย แตถาไมพบ กจะไปมองหาท Cache ระดบ 2 ตอไป ถาหาพบ กจะใชเวลาไมเกน 11 หนวยเวลา ( 1+10 ) แตถาหาไมพบ กตองเสยเวลา มากกวา 11 หนวยเวลาเพอไปคนหาในหนวยความจำาหลก หรอ ใน Cache ระดบ 3 ตอไป 

ถาไมม Cache ระดบ 3 การหาขอมลนน เมอหาจากใน Cache ทงระดบ 1 และ ระดบ 2 ไมพบ กจะเขาไปหาทหนวยความจำาหลกตอไป ซงถาพบ กจะใชเวลามากกวา 11 ( 1+10 ) หนวยเวลา แตไมเกน 1,011 ( 1+10+1,000 ) หนวยเวลา แตถาม Cache ระดบ 3 กจะทำาการเขาไปคนหาใน Cache ระดบ 3 ตอไป ซงเวลาทใช กขนอยกบขนาดของ Cache ระดบ 3 นนดวย ซงถาหาพบใน Cache ระดบ 3 กจะใชเวลาทมากกวา 11 หนวยเวลา แตนอยกวา 111 ( 1+10+100 ) หนวยเวลา สำาหรบ Cache ระดบ 3 ขนาด 512KB และ นอยกวา 211 ( 1+10+100 ) สำาหรบ Cache ระดบ 3 ขนาด 1,024 KB และ นอยกวา 411 ( 1+10+400 ) สำาหรบ Cache ระดบ 3 ขนาด 2,048KB ซงจะสงเกตไดวา ถาสามารถหาขอมลพบใน Cache ระดบ 3 นน เวลาทใชงาน กนอยกวา การทไมม Cache ระดบ 2 อยมากกวาเทาตว 

แตถาไมพบละ? ถาไมพบขอมลทตองการใน Cache ระดบ 3 กจะเสยเวลาในการคนหาทมากขน กอนทจะไปคนหาในหนวยความจำาหลกตอไป ซงตรงจดนเอง กเปนผลทำาให Performance ทไดลดลง แตอยางไรกตาม การทม Cache ระดบ 3 ขนาดใหญนน โอกาสทจะทำาใหคนหาขอมลทตองการ นนกมากขน 

สำาหรบอตราสวนระหวาง Level 2 ตอ Level 3 นนกมสวนสำาคญ เชนเดยวกนกบ อตราสวนระหวาง Level 1/Level 2 หากวา CPU มองหา ขอมลทตองการใน Cache ระดบใดๆ ไมเจอ กจะทำาการคนหาใน Cache ระดบถดไป ซงจะมความเรวชากวา แตมขนาดใหญกวา แตอยางไรกตาม ถาใน

Page 19: bluecomsci.files.wordpress.com · Web viewMain Memory and Cache. 5705100021 ชนิษฐา ผิวคำ. 5705100042 พัชนพรรณ อนันตศัพท์.

Cache ระดบถดไปนน ขนาดไมใหญ โอกาสทจะหาขอมลทตองการเจอนน กมนอยกวา ( เพราะมเนอท นอยกวา ทำาใหโอกาสทจะดงขอมลจาก RAM มา แลวตรงกบทตองการนน เปนไปไดนอยกวา ) กทำาให CPU นน เสยเวลา ในการคนหาไปอยางสญเปลา ( ในกรณทหาไมพบ ) แลวกจะทำาใหผล Performance นนชากวา จากทควรจะเปน ปกตแลว อตราสวนจะเปนระหวาง Cache ระดบถดมาตอ Cache ระดบกอนหนา จะเปน 4:1 เชน Level 2 Cache /Level 1 Cache ของ Celeron จะเปน 128:32 ( 4:1 ) และ K6-3 จะเปน 256:64 ( 4:1 ) ยกเวนของ Pentium II ทเปน 512:32 ( 16:1 ) 

ทาง AMD กไดอางวา ดวย Cache 1Mb บน Mainboard นน จะทำาให Performance เพมขน 3-4 % ( L3/L2 = 1024/256 = 4/1 ) ซง ปจจบนนน กม Mainboard ทม ทง Cache 1M และ 512 K ใหเลอก เพราะฉะนน นคงเปนตวชวยในการพจารณาตวหนงแลวนะครบ สำาหรบผทคดจะใช AMD K6-3 วาควรจะใช Mainboard อะไรด สำาหรบการ disable Level 3 Cache นน คดวา เปนไปได โดยผานทาง BIOS ซงกนาจะมผลชวยในการ Overclock ใหไดมากขน 

คราวนเราลองยอนกลบไปดถงตอนแรก ทผมเปรยบเทยบเรอง Cache กบการจดโนตยอลงสมดนน เราอาจสรปไดวา สมองของเราเปน Cache ระดบ 1 เพราะเมออานและเหนวาขอความไหน หรอประโยคไหนทนาจำาทสด สำาหรบนกเรยน นสต นกศกษา กคงอาจเลงไวแลววา ตรงน อาจารยตองเอามาออกขอสอบแนๆ กจะอานแลวทองจำาเอาไว และ เมอเกนความสามารถทจะทองจำา กทำาการจดโนตยอไวในสมดเลมเลกๆ นนกคอ Cache ระดบ 2 นนเอง และ บางทในการอาน กอาจมเรองทนาสนใจมากๆ จดโนตยอไมไหว กอาจใชปากกาขดขอความสำาคญๆหรอทำาการคนหนาหนงสอตรงนนไว นนกคอ Cache ระดบ 3 นนเองครบ 

Page 20: bluecomsci.files.wordpress.com · Web viewMain Memory and Cache. 5705100021 ชนิษฐา ผิวคำ. 5705100042 พัชนพรรณ อนันตศัพท์.

กเหนกนแลวนะครบ วา ขนาดของ Cache นน เปนสงสำาคญ และ ความเรวของ Cache นน กสำาคญเชนกน แต ถาใหเลอก ระหวาง Celeron 300A ซงม Level 2 cache 128 K ทำางานทความเรวเทาๆ กบ CPU กบ Pentium II 300 ทม L2 cache 512 K ทำางานเปนครงหนง แตราคานนตางกนเทาตว ในขณะท Performance ในดานทไมเกยวกบ Business นน แทบไมตางกน กขอเลอก Celeron จะดกวา ( ถกกวาตงเยอะ ) 

แตหากวาตองใชงานดาน Business แลวละก คงจะตองเลอก CPU ทม Cache มากๆ ไวกอน เพราะถงแมวา Cache นนจะเรว แตมขนาดนอย เปอรเซนตในการหาขอมลพบใน Cache กนอยลง ถงแมจะถกชดเชยดวยความเรว แตมนกทำาให Cache นนตองรบ ภาระทหนกมากขนไปดวย 

ตารางขางลางน กแสดงถง Feature ตางๆ ของ L1,L2,L3 cache ของ CPU ในแตละรน 

  K6-2

K6-3

K7 Celeron

Xeon

PII

L1 Size 64kB

64kB

128kB 32kB

32kB

32kB

L1 'associativety

2 2 2 4 4 4

Page 21: bluecomsci.files.wordpress.com · Web viewMain Memory and Cache. 5705100021 ชนิษฐา ผิวคำ. 5705100042 พัชนพรรณ อนันตศัพท์.

'

L2 Size 512kB+

256kB

512kB+

128kB

512kB+

512kB

L2 Speed

FSB 1xCPU

1/3,1/2xCPU

1xCPU

1xCPU

1/2xCPU

L3 Size - 512kB+

- - - -

L3 Speed

- FSB - - - -

Memory Access

FSB FSB 2xFSB FSB FSB FSB

 

สรป

Main Memory และ Cache เปนหนวยความจำาทใชงานทแตกตางกนออกไป

Page 22: bluecomsci.files.wordpress.com · Web viewMain Memory and Cache. 5705100021 ชนิษฐา ผิวคำ. 5705100042 พัชนพรรณ อนันตศัพท์.

Main Memory เปนทเกบชดคำาสงขอมลเพอรอให CPU ประมวลผล Main Memory มนกคอ RAM กบ ROM ของ Computer ขนาด Main Memmory ไมไดมผลตอการประมวลผลเรวขนแตจะเกบคำาสงไวรอประมวลผลไดมากขนCache ออกมามาเพอใชคำาสงทตองการความเรวสง หรอ ชดคำาสงทถกใชบอยๆ Cache จะเกบคำาสงทเรยกใชบอยๆ แลวจะทำางานไดเรวขน

Page 23: bluecomsci.files.wordpress.com · Web viewMain Memory and Cache. 5705100021 ชนิษฐา ผิวคำ. 5705100042 พัชนพรรณ อนันตศัพท์.

อางองhttp://irrigation.rid.go.th/rid 15/ ppn/Knowledge/Cache/ Cache.htm

http://clubcomp.blogspot.com/ 2012/05/ main-memory.html

https://sites.google.com/a/sau.ac.th/xupkrn-khxmphiwtexr/hnwy-khwam-cahlak-main-memory