Pengantar Umum Untuk Koherensi Cache
Ringkasan: Konsep koherensi cache mungkin relatif baru bagi Anda, tetapi ini adalah konsep bidang komputer yang relatif penting. Jadi hari ini, halaman ini akan memberi Anda pengenalan umum tentang koherensi cache.
Daftar isi
Gambaran
Dalam arsitektur komputer, koherensi cache adalah konsistensi data sumber daya bersama, yang akhirnya disimpan dalam beberapa cache lokal. Masalah dapat terjadi dengan data yang tidak koheren ketika klien memelihara cache sumber daya memori umum, terutama yang umum untuk CPU dalam sistem multiprosesor.
Setiap prosesor memiliki memori cache terpisah dalam sistem multiprosesor memori bersama. Kemungkinan besar ada banyak salinan data bersama: satu salinan di memori utama dan satu di cache lokal dari setiap prosesor yang memintanya.
Jika salah satu salinan data berubah, salinan lainnya harus mencerminkan perubahan tersebut. Koherensi cache adalah disiplin, dan memastikan bahwa perubahan nilai operan (data) bersama menyebar ke seluruh sistem dengan segera.
Bagian berikut mencantumkan persyaratan untuk koherensi cache.
- Tulis Propagasi: Perubahan data dalam cache apa pun harus disebarkan ke salinan lain di cache yang setara.
- Serialisasi Transaksi: Semua prosesor harus melihat Baca/Tulis ke satu lokasi memori dalam urutan yang sama.
Secara teoritis, koherensi dapat diimplementasikan pada granularitas beban/penyimpanan. Namun, dalam praktiknya, biasanya dieksekusi pada granularitas blok cache.
Definisi
Koherensi mendefinisikan perilaku membaca dan menulis ke satu lokasi alamat. Jenis data yang muncul secara bersamaan dalam memori cache yang berbeda disebut koherensi cache. Ini juga disebut memori global di beberapa sistem.
Dalam sistem multiprosesor, lebih dari satu prosesor telah meng-cache salinan lokasi memori X. Untuk mencapai koherensi cache, perlu memenuhi kondisi berikut.
- Ketika prosesor P membaca lokasi X setelah penulisan oleh prosesor yang sama Pto X dan penulisan ke X oleh prosesor lain tidak muncul di antara instruksi tulis dan baca oleh P, X harus selalu mengembalikan nilai yang ditulis oleh P.
- Ketika prosesor P1 membaca lokasi X, prosesor lain menulis dari P2 ke X, dan prosesor lain menulis ke X terjadi antara dua akses, dan membaca dan menulis cukup dipisahkan. X harus selalu mengembalikan nilai yang ditulis oleh P2. Kondisi ini mendefinisikan konsep tampilan memori yang koheren. Penyebaran penulisan ke lokasi memori bersama memastikan bahwa semua cache memiliki tampilan memori yang koheren. Jika prosesor P1 membaca nilai lama X, kita dapat mengatakan bahwa memori tidak koheren bahkan setelah P2 ditulis.
Kondisi di atas memenuhi kondisi Propagasi Tulis yang diperlukan untuk koherensi cache. Namun belum memadai karena tidak memenuhi kriteria Serialisasi Transaksi.
Mekanisme koherensi
Ada dua mekanisme paling umum untuk memastikan koherensi:mengintip Dan berbasis direktori, dengan kelebihan dan kekurangannya masing-masing. Jika tersedia bandwidth yang cukup, protokol berbasis Snooping cenderung lebih cepat karena semua transaksi adalah permintaan/tanggapan yang dilihat oleh semua prosesor.
Kerugiannya adalah pengintaian tidak memiliki skalabilitas. Setiap permintaan harus disiarkan ke semua node dalam sistem, yang berarti bahwa ketika sistem bertambah besar, ukuran bus dan bandwidth yang disediakannya harus meningkat.
Di sisi lain, direktori cenderung memiliki latensi yang lebih lama, dengan tiga hop request/forward/respons. Namun, direktori menggunakan bandwidth jauh lebih sedikit karena pesan bersifat point-to-point daripada disiarkan. Akibatnya, banyak sistem besar mengadopsi koherensi cache semacam ini.
Protokol koherensi
Protokol konsistensi menerapkan konsistensi cache dalam sistem multiprosesor. Tujuannya adalah untuk memastikan bahwa dua klien tidak boleh melihat nilai yang berbeda dalam data bersama yang sama.
Protokol harus mencapai tuntutan dasar koherensi, disesuaikan dengan sistem atau aplikasi target.
Protokol juga dapat dikategorikan sebagai snoopy atau berbasis direktori. Biasanya, sistem awal mengadopsi protokol berbasis direktori, di mana direktori melacak data dan sharer bersama. Permintaan transaksi dikirim ke semua prosesor dalam protokol snoopy. Semua prosesor memantau permintaan dan merespons dengan tepat.
Artikel Sebelumnya
[2022] Best Watermark Software On Windows Ringkasan: Konsep koherensi cache mungkin relatif baru bagi Anda, tetapi ini adalah konsep bidang komputer yang relatif penting. Jadi hari ini, ini...Artikel Berikutnya
Perangkat Lunak OCR Online Terbaik di Windows/iOS/Android Ringkasan: Konsep koherensi cache mungkin relatif baru bagi Anda, tetapi ini adalah konsep bidang komputer yang relatif penting. Jadi hari ini, ini...Tentang Pemulihan Data Bitwar
3 Langkah untuk mendapatkan kembali 500+ jenis dokumen, foto, video, audio, file arsip yang dihapus, diformat atau hilang dari berbagai skenario kehilangan data.
Pelajari Lebih Lanjut