Platform Technology หน่วยความจำแคช Cache memory

Slides:



Advertisements
งานนำเสนอที่คล้ายกัน
Suphot Sawattiwong Array ใน C# Suphot Sawattiwong
Advertisements

องค์ประกอบของระบบคอมพิวเตอร์
3. วิธีทำให้ข้อมูลเป็นสารสนเทศมีกี่วิธีอะไรบ้าง
การงานอาชีพและเทคโนโลยี เรื่อง อุปกรณ์คอมพิวเตอร์
Computer Programming 1 LAB Test 3
การงานอาชีพและเทคโนโลยี เรื่อง อุปกรณ์คอมพิวเตอร์
Department of Computer Business
ข้อมูลชนิดโครงสร้าง (Structure Data)
บทที่ 11 การเขียนโปรแกรมโดยใช้ข้อมูลชนิดพอยท์เตอร์
Data Type part.III.
Central Processing Unit
Lecture No. 3 ทบทวนทฤษฎีและแบบฝึกหัด
Structure Programming
ระบบคอมพิวเตอร์ (Computer System)
LAB # 4 Computer Programming 1 1. พิจารณาโปรแกรมต่อไปนี้
Computer Programming 1 LAB # 6 Function.
LAB # 4.
Week 6 ประกาศค่าตัวแปร.
รับและแสดงผลข้อมูล.
หลักการทำงานคอมพิวเตอร์
หลักการทำงานของคอมพิวเตอร์
ตัวชี้ P O I N T E R Created By Tasanawan Soonklang
ปฏิบัติการครั้งที่ 9 ฟังก์ชัน.
การประกาศตัวแปร “ตัวแปร” คือสิ่งที่เราสร้างขึ้นมาเพื่อใช้เก็บค่าต่างๆและอ้างอิงใช้งานภายในโปรแกรม ตามที่เรากำหนดขึ้น การสร้างตัวแปรขึ้นมาเราเรียกว่า.
หน่วยความจำ (Memory Unit)
ลำดับการทำงานหน่วยความจำ
ส่วนประกอบของคอมพิวเตอร์
มารู้จักคอมพิวเตอร์กันเถอะ มารู้จักคอมพิวเตอร์กันเถอะ
บทที่ 2 การทำงานของ PC.
ปฏิบัติการประกอบเครื่องคอมพิวเตอร์
ข้อมูลชนิดอาร์เรย์ ประเภทของข้อมูลที่ผ่านมาส่วนใหญ่ในตอนต้นๆจะเป็นข้อมูลเดี่ยว โดยตัวแปรหนึ่งตัวสามารถเก็บข้อมูลได้หนึ่งตัว ถ้าหากต้องการเก็บข้อมูลหลายตัวจะต้องประกาศตัวแปรหลายตัว.
องค์ประกอบของระบบคอมพิวเตอร์
Functional components of a computer
Introduction to Cache Memory Systems
เขียนโปรแกรมด้วย microC
Lecture 7 ฟังก์ชัน To do: Hand back assignments
Lecture 9 Class (คลาส) To do: Hand back assignments
CPU ไม่รวม I/O PROCESSOR , MATH CO-PROCESSOR
Algorithm มหาวิทยาลัยเนชั่น Java Pre-Test 49 (Series 1, 2 )
การเขียนโปรแกรมภาษาซี
การสร้างฟังก์ชั่นเพื่อพัฒนาโปรแกรม Interactive C
ฟังก์ชัน ง30212 การเขียนโปรแกรมด้วยภาษาคอมพิวเตอร์ ศูนย์คอมพิวเตอร์
บทที่ 5 ฟังก์ชันกับอาร์เรย์ Function & Array
ส่วนประกอบของคอมพิวเตอร์
Week 2 Variables.
ความหมาย การประกาศ และการใช้
ผู้จัดทำ นางสาว สุทธิดา แสงอุไร มัธยมศึกษาปีที่ 4/2 เลขที่ 27.
การทำงานของคอมพิวเตอร์
อธิบายหลักการทำงาน บทบาท และประโยชน์ของคอมพิวเตอร์
เครื่องคอมพิวเตอร์. ? เครื่องคำนวณอิเล็กทรอนิกส์ ประกอบด้วยวงจร อิเล็กทรอนิกส์และไอซี ชิปเซ็ต ต่างๆ ที่สามารถจดจำ ประมวลผลข้อมูล เปรียบเทียบ ตัดสินใจทาง.
Output of C.
Chapter 4 Cache Memory Computer Memory System Overview
เครื่องคอมพิวเตอร์ และอุปกรณ์
Cache.
… Cache …L1,L2.
องค์ประกอบของคอมพิวเตอร์
เริ่มจากอดีต ตั้งแต่ยุคสมัยเริ่มต้น ของการใช้ PC มีการนำเอาสแตติกแรมมา ใช้ แต่ขนาดของ RAM ในขณะนั้นมีเพียง 8-16 กิโลไบต์ ซึ่งต้องใช้พื้นที่บอร์ด ขนาดใหญ่
Java Network Programming 1
วิชา การปฏิบัติการประกอบเครื่องคอมพิวเตอร์
Chapter 11 Instruction Sets: Addressing Modes
EDO RAM นางสาวชุติมา พุ่มพฤกษ์
องค์ประกอบของคอมพิวเตอร์
หลักในการเลือกซื้อคอมพิวเตอร์ที่เหมาะสม
Integrated Network Card
ส่วนประกอบของคอมพิวเตอร์
CC-NUMA (Cache-coherent nonuniform memory access).
ส่วนประกอบของคอมพิวเตอร์
หลักการโปรแกรม 1 Lecture 14: โปรแกรมย่อย ( การส่งพารามิเตอร์ แบบ pass by reference)
Latency เวลาทำงานโดยนับจากเริ่มขอข้อมูล จนถึงได้รับข้อมูล bit แรก.
บทที่ 3 โครงสร้างภาษาซีเบื้องต้น
ใบสำเนางานนำเสนอ:

Platform Technology หน่วยความจำแคช Cache memory

เนื้อหา Introduction to cache memory Hit rate/Miss rate Write Policy Replacement algorithm Mapping function

What is Cache memory A high speed memory closely connected to the processor

Multilevel cache

ทำไมต้อง cache memory? หน่วยความจำหลักทำงานได้ช้ามากเมื่อเทียบกับซีพียู ก๊อปปี้ค่าในหน่วยความจำหลักมาใส่ในแคชก่อนแล้วค่อยให้ซีพียูอ้างถึงหน่วยความจำ แคชด้วยความเร็วสูง โปรแกรมส่วนใหญ่เมื่อใช้หน่วยความจำตำแหน่งหนึ่งแล้ว มักจะอ่านค่าหน่วยความจำ ตำแหน่งนั้นๆ อีกหลายๆ ครั้ง (locality of reference)

Locality of reference :Example void main (void) { int table[1024]; for (i= 0; i<100000; i++) k = i % 26; c = table[k] printf(“%d”,c); }

จำนวนครั้งที่พบข้อมูลในแคช จำนวนการแอกเซสหน่วยความจำแคชทั้งหมด นิยามต่างๆ ของ Cache Hit : โพรเซสเซอร์พบข้อมูลในแคช Miss : โพรเซสเซอร์ไม่พบข้อมูลในแคช Hit rate จำนวนครั้งที่พบข้อมูลในแคช จำนวนการแอกเซสหน่วยความจำแคชทั้งหมด

Write back Write through Write policy Write back เขียนข้อมูลลงในแคชเท่านั้น แล้วค่อยไปเขียนลงหน่วยความจำหลักหลังยกเลิกการใช้แคชบล๊อกนั้นๆ ประสิทธิภาพสูง - ไม่เหมาะกับระบบมัลติโพรเซสเซอร์ Write through ทุกครั้งที่เขียนข้อมูลในแคช ให้เขียนข้อมูลลงในหน่วยความจำหลักด้วย ประสิทธิภาพต่ำกว่า แต่สามารถใช้กับระบบมัลติโพรเซสเซอร์ได้

Multiprocessor

Unified VS Separated cache Unified cache Keeping both program and data More simple and higher hit rate Separate cache Keeps program in code cache Keeps data in data cache Suitable for Von-Neuman architecture

Unified cache

Separated cache

Von-Neumann architecture and Cache

Pentium Pro cache

Replacement algorithm แคชมีขนาดเล็ก เมื่อเทียบกับหน่วยความจำหลัก ต้องเอาของเก่าออกจากแคชเพื่อใส่ข้อมูลที่ต้องการ Least Recently used (LRU) Least Frequently Used (LFU) First-in-First-Out (FIFO)

Cache mapping Direct mapping Fully associative mapping Set associative mapping

Direct mapping ง่ายต่อการสร้าง ใช้จำนวนบิตของ tag field น้อย บล๊อก 0, 128, 256, … , 3968 ไม่สามารถอยู่ในหน่วยความจำพร้อมๆ กัน ได้

Direct mapping

Direct mapping

Direct mapping

Fully associative mapping หน่วยความจำบล๊อกใดๆ ก็ตามสามารถอยู่ในแคชตำแหน่งใดก็ได้ สิ้นเปลืองจำนวนเกทในการสร้างสูงมาก จำนวนบิตที่ต้องการใน tag field มีจำนวนมาก

Fully associative mapping

Fully associative mapping

Set-associative mapping จับข้อดีของ Fully-associative และ Direct mapped มารวมกัน สามารถออกแบบให้มีหลาย way ที่สามารถเก็บข้อมูล

2-way Set associative mapped

2-way Set associative mapped

4-way set associative mapped

4-way set associative mapped

Processor cache comparison

Cache of Intel Celeron

Cache of Intel Celeron

Cache of AMD Athlon

Cache of AMD Athlon

Homework จงออกแบบหน่วยความจำแคชของโพรเซสเซอร์ที่สามารถอ้างหน่วยความจำได้ 64 กิโลไบต์ โดยกำหนดให้หน่วยความจำแคชมีขนาด 512 ไบต์ จงออกแบบหน่วยความจำแคชในรูปแบบต่อไปนี้ Direct mapped Fully associative 2-way set associative 4-way set associative