CACHE MEMORY
CACHE MEMORY
1. Definisi Cache Memory
Cache memory adalah memori yang memiliki
kecepatan sangat tinggi yang digunakan sebagai perantara antara RAM dan CPU.
Memori ini mempunyai kecepatan yang lebih tinggi daripada RAM. Memori ini
digunakan untuk menjembatani perbedaan kecepatan CPU yang sangat tinggi dengan
kecepatan RAM yang jauh lebih rendah. Jika processor membutuhkan suatu data,
pertama-tama ia akan mencarinya pada cache. Jika data ditemukan, processor akan
langsung membacanya dengan delay yang sangat kecil. Tetapi jika data tidak
ditemukan, processor akan mencarinya pada RAM.
Cache adalah memory berukuran kecil yang sifatnya temporary (sementara). Cache umumnya terbagi menjadi beberapa jenis, seperti L1 cache, L2 cache dan L3 cache. Walaupun ukuran filenya sangat kecil, namun keceptannya sangat tinggi. Dalam terminologi hardware, istilah ini biasanya merujuk pada memory berkecepatan tinggi yang menjembatani aliran data antara processor dengan memory utama (RAM) yang biasanya memiliki kecepatan jauh lebih rendah.
2. Kinerja Cache
3. Penggunaan Asosiasi Untuk
Mengurangi Tingkat Kesalahan
- Memungkinkan blok diletakkan di sebarang line yang sedang tidak terpakai.
- Diharapkan akan mengatasi kelemahan utama Direct Mapping.
- Harus menguji setiap cache untuk menemukan blok yang diinginkan.
- Mengecek setiap tag pada line
- Sangat lambat untuk cache berukuran besar.
- Nomor line menjadi tidak berarti. Address main memory dibagi menjadi 2 field saja, yaitu tag dan word offset.
- Melakukan pencarian ke semua tag untuk menemukan blok.
- Cache dibagi menjadi 2 bagian yaitu : lines dalam SRAM dan tag dalam associative memory
- Keuntungan Associative Mapping : Cepat dan fleksibel.
- Kerugian Associative Mapping : Biaya Implementasi, misalnya untuk cache ukuran 8 kbyte dibutuhkan 1024 x 17 bit associative memory untuk menyimpan tag identifier.
Pada sistem komputer terdapat berbagai jenis memori, yang berdasarkan kecepatan dan posisi relatifnya terhadap prosesor, bisa disusun secara hirarkis. Puncak hirarki sistem “memori” komputer adalah register yang berada dalam chip prosesor dan merupakan bagian integral dari prosesor itu sendiri. Isi register-register itu bisa dibaca dan ditulisi dalam satu siklus detak. Level hirarki berikutnya adalah memori cache internal (on-chip). Kapasitas cache internal yang sering disebut sebagai cache level pertama ini umumnya sekitar 8 KB. Waktu yang diperlukan untuk mengakses data atau instruksi dalam cache internal ini sedikit lebih lama dibandingkan register, yakni beberapa siklus detak.
Prosesor-prosesor mutakhir dilengkapi dengan cache level kedua yang kapasitasnya lebih besar dan ditempatkan di luar chip. Prosesor P6 (Pentium Pro), misalnya, cache level pertamanya berkapasitas 8KB untuk data dan 8 KB untuk instruksi. Cache level keduanya berkapasitas 256 KB, yang merupakan keping terpisah tetapi dikemas menjadi satu dengan prosesornya. Selama program dieksekusi, sistem komputer secara terus menerus memindah-mindahkan data dan instruksi ke berbagai tingkat dalam hirarki sistem “memori”.
Data dipindahkan menuju ke puncak hirarki bila diakses oleh prosesor, dan dikembalikan lagi ke hirarki yang lebih rendah bila sudah tidak diperlukan lagi. Data-data tersebut ditransfer dalam satuan-satuan yang disebut “blok”; satu “blok” dalam cache disebut satu “baris”. Umumnya, data yang berada pada suatu level hirarki merupakan bagian dari data yang disimpan pada level di bawahnya.
Program komputer pada umumnya tidak mengakses memori secara acak. Besar kecenderungannya bahwa bila program mengakses suatu word maka dalam waktu dekat word tersebut akan diakses lagi. Hal ini dikenal sebagai prinsip lokalitas temporal. Juga besar kecenderungannya bahwa dalam waktu dekat word yang berada di dekat word yang baru diakses akan diakses juga. Yang terakhir ini dikenal sebagai prinsip lokalitas spatial. Karena sifat lokalitas temporal, maka harus diperhatikan word yang telah ada dalam cache, dan karena sifat lokalitas spatial maka perlu diperhatikan kemungkinan memindahkan beberapa word yang berdekatan sekaligus.
Hirarki cache, atau cache multi-level , mengacu pada arsitektur memori yang menggunakan hierarki penyimpanan memori berdasarkan berbagai kecepatan akses ke data cache. Data yang sangat diminta disimpan dalam cache di penyimpanan memori akses berkecepatan tinggi, memungkinkan akses yang lebih cepat oleh inti unit pemrosesan pusat (CPU).
Hirarki cache adalah bentuk dan bagian dari hierarki memori dan dapat dianggap sebagai bentuk penyimpanan berjenjang .Desain ini dimaksudkan untuk memungkinkan inti CPU memproses lebih cepat meskipun latensi memori dari akses memori utama . Mengakses memori utama dapat bertindak sebagai penghambat kinerja inti CPU saat CPU menunggu data, sementara membuat semua memori utama berkecepatan tinggi mungkin sangat mahal.Cache berkecepatan tinggi adalah kompromi yang memungkinkan akses berkecepatan tinggi ke data yang paling sering digunakan oleh CPU, memungkinkan clock CPU yang lebih cepat .
- Penulisan disk dikelompokkan. Alih-alih banyak transfer data kecil, kami memiliki beberapa transfer data yang besar. Ini meningkatkan kinerja disk dan meminimalkan keterlibatan prosesor.
- Beberapa data yang ditujukan untuk ditulis dapat dirujuk oleh program sebelum dump berikutnya ke disk. Dalam hal ini, data diambil dengan cepat dari cache perangkat lunak daripada perlahan-lahan dari disk.
Komentar
Posting Komentar