Apakah cache?
Cache dipanggil memori cache, iaitu memori berkapasiti kecil berkelajuan tinggi antara unit pemprosesan pusat dan memori utama Ia biasanya terdiri daripada memori tempatan ini untuk CPU dan diperkenalkan untuk mengurangkan Atau menghapuskan kesan perbezaan kelajuan antara CPU dan memori pada prestasi sistem. Kapasiti cache kecil tetapi pantas, kelajuan memori rendah tetapi kapasiti besar Dengan mengoptimumkan algoritma penjadualan, prestasi sistem akan bertambah baik.
Persekitaran pengendalian tutorial ini: sistem Windows 7, komputer Dell G3.
Apakah itu cache?
Memori cache: Memori cache dalam komputer, terletak dalam CPU dan memori utama DRAM (Dynamic Random Access Memory ), memori yang lebih kecil tetapi sangat berkelajuan tinggi, biasanya terdiri daripada SRAM (Memori Akses Rawak Statik).
Seperti yang ditunjukkan dalam Rajah 3.28, cache ialah memori berkapasiti kecil antara CPU dan memori utama M2, tetapi kelajuan akses lebih cepat daripada memori utama dan memori utama. kapasiti adalah jauh lebih kecil daripada ingatan utama. Cache boleh memberikan arahan dan data kepada CPU pada kelajuan tinggi, dengan itu mempercepatkan pelaksanaan program. Dari sudut fungsi, ia adalah memori penimbal bagi memori utama, yang terdiri daripada SRAM berkelajuan tinggi. Dalam mengejar kelajuan tinggi, semua fungsi, termasuk pengurusan, dilaksanakan dalam perkakasan dan oleh itu telus kepada pengaturcara.
Pada masa ini, dengan kemajuan penyepaduan peranti semikonduktor, cache dan CPU berkapasiti kecil boleh disepadukan ke dalam cip yang sama, dan kelajuan kerjanya hampir dengan kelajuan CPU, sekali gus membentuk sistem cache dua peringkat atau lebih.
Fungsi cache
Fungsi Cache adalah untuk meningkatkan kadar input dan output data CPU. Kapasiti cache adalah kecil tetapi pantas, kelajuan memori rendah tetapi kapasiti besar Dengan mengoptimumkan algoritma penjadualan, prestasi sistem akan bertambah baik, seolah-olah kapasiti sistem storan adalah bersamaan dengan memori dan kelajuan akses adalah serupa dengan. Cache.
Kelajuan CPU jauh lebih tinggi daripada memori Apabila CPU terus mengakses data daripada memori, ia perlu menunggu untuk tempoh masa tertentu, manakala Cache boleh menyimpan sebahagian daripada memori. data yang CPU baru sahaja digunakan atau dikitar semula Jika CPU perlu mengakses data sekali lagi, Apabila menggunakan bahagian data ini, ia boleh dipanggil terus dari Cache, dengan itu mengelakkan akses berulang kepada data dan mengurangkan masa menunggu CPU. , sekali gus meningkatkan kecekapan sistem. Cache dibahagikan kepada L1Cache (cache tahap satu) dan L2Cache (cache tahap dua terutamanya disepadukan di dalam CPU, manakala L2Cache disepadukan pada motherboard atau CPU).
Prinsip asas cache
Selain SRAM, cache juga mempunyai logik kawalan. Jika cache berada di luar cip CPU, logik kawalannya biasanya digabungkan dengan logik kawalan memori utama, dipanggil pengawal memori utama/chace jika cache berada di dalam CPU, CPU menyediakan logik kawalannya;
Pertukaran data antara CPU dan cache adalah dalam unit perkataan, manakala pertukaran data antara cache dan memori utama adalah dalam unit blok. Satu blok terdiri daripada beberapa perkataan dan mempunyai panjang tetap. Apabila CPU membaca perkataan dalam ingatan, ia menghantar alamat memori perkataan itu ke cache dan memori utama. Pada masa ini, logik kawalan cache menentukan sama ada perkataan itu berada dalam cache pada masa ini berdasarkan alamat: jika ya, cache mencecah dan perkataan itu segera dipindahkan ke CPU jika tidak, cache hilang (terlepas), dan kitaran bacaan memori utama digunakan untuk membaca perkataan dari memori utama Bacaan dihantar ke CPU Pada masa yang sama, keseluruhan blok data yang mengandungi perkataan ini dibaca dari memori utama dan dihantar ke cache.
Rajah 3.29 menunjukkan gambarajah skematik cache. Andaikan bahawa masa baca cache ialah 50ns dan masa baca memori utama ialah 250ns. Sistem storan adalah modular, dan setiap modul 8K dalam memori utama dikaitkan dengan cache dengan kapasiti 16 perkataan. Cache dibahagikan kepada 4 baris, setiap baris mempunyai 4 perkataan (W). Alamat yang diberikan kepada cache disimpan dalam CAM memori bersekutu, iaitu memori boleh alamat kandungan. Apabila CPU melaksanakan arahan akses memori, ia menghantar alamat perkataan untuk diakses ke CAM jika W tiada dalam cache, W dipindahkan dari memori utama ke CPU. Pada masa yang sama, satu baris data yang terdiri daripada empat perkataan berturut-turut yang mengandungi W dihantar ke cache, menggantikan baris data asal dalam cache. Di sini, algoritma penggantian dilaksanakan oleh litar logik perkakasan yang sentiasa menguruskan penggunaan cache.
Kadar pukulan cache
Dari perspektif CPU, tujuan meningkatkan cache adalah untuk meningkatkan purata masa baca memori utama dari segi prestasi Sehampir mungkin dengan masa baca cache. Untuk mencapai matlamat ini, bahagian semua capaian memori yang dipenuhi oleh cache untuk memenuhi keperluan CPU harus mengambil kira bahagian yang tinggi, iaitu, kadar hit cache hendaklah hampir kepada 1. Mencapai matlamat ini adalah mungkin disebabkan oleh lokaliti akses program.
Semasa pelaksanaan atur cara, dengan mengandaikan Nc mewakili jumlah bilangan akses yang dilengkapkan oleh cache, Nₘ mewakili jumlah bilangan akses yang dilengkapkan oleh memori utama dan h ditakrifkan sebagai kadar hit, kemudian h =Nc/(Nc+Nₘ)
Jika tc mewakili masa capaian cache apabila hit berlaku, tₘ mewakili masa capaian memori utama apabila miss berlaku dan 1-h mewakili kadar miss (kadar hilang), maka purata masa capaian tₐ cache/sistem ingatan utama ialah
tₐ=htc+(1−h)tₘ
Matlamat yang kami kejar adalah untuk menjadikan purata masa capaian tₐ cache/sistem ingatan utama sehampir mungkin dengan tc pada kos perkakasan yang kecil. Katakan r=tₘ/tc mewakili nisbah masa capaian antara memori utama dan cache, dan e mewakili kecekapan capaian, maka kita mempunyai Lebih baik. Nilai r yang sesuai ialah 5 hingga 10 dan tidak boleh terlalu besar.
e=tc/ta=tc/(htc+(1−h)tm)=1/(h+(1−h)r)=1/(r+(1−r)h)
Ia boleh dilihat daripada prinsip kerja asas cache yang diperlukan oleh reka bentuk cache untuk mengikuti dua prinsip: Satu adalah untuk berharap bahawa kadar hit cache adalah setinggi mungkin, yang sepatutnya hampir 1 adalah untuk berharap bahawa cache adalah telus kepada CPU, iaitu, sama ada terdapat cache atau tidak, CPU mengakses memori dengan cara yang sama, dan perisian tidak perlu menambah apa-apa Arahan boleh mengakses cache. Isu kadar hit dan ketelusan diselesaikan Dari perspektif akses memori CPU, memori akan mempunyai kapasiti memori utama dan kelajuan yang hampir dengan cache. Untuk tujuan ini, litar perkakasan tertentu mesti ditambah untuk melengkapkan fungsi kawalan, iaitu pengawal cache.
Apabila mereka bentuk struktur cache, beberapa isu mesti diselesaikan: ① Bagaimana untuk menyimpan kandungan memori utama apabila ia dipindahkan ke dalam cache ② Bagaimana untuk mencari maklumat dalam cache semasa mengakses memori? ③ Bagaimana untuk menggantikan cache apabila ruang cache tidak mencukupi Apakah kandungan yang sudah wujud dalam cache ④ Bagaimana untuk menulis semula kandungan cache apabila operasi tulis diperlukan Antaranya, dua soalan pertama? berkaitan antara satu sama lain, iaitu, cara mencari maklumat memori utama dalam cache, dan cara menukar alamat memori utama Tukar kepada alamat cache. Berbanding dengan kapasiti memori utama, kapasiti cache adalah sangat kecil Kandungan yang disimpannya hanyalah subset daripada kandungan memori utama, dan pertukaran data antara cache dan memori utama adalah dalam blok. Untuk meletakkan blok memori utama ke dalam cache, beberapa kaedah mesti digunakan untuk mencari alamat memori utama dalam cache, yang dipanggil pemetaan alamat. Maksud fizikal perkataan "pemetaan" adalah untuk menentukan hubungan yang sepadan antara lokasi dan melaksanakannya dengan perkakasan. Dengan cara ini, apabila CPU mengakses memori, alamat memori perkataan yang diberikan olehnya secara automatik akan ditukar kepada alamat cache, iaitu penukaran alamat cache. Masalah penggantian cache adalah terutamanya untuk memilih dan melaksanakan algoritma penggantian untuk menggantikan kandungan dalam cache apabila cache terlepas. Soalan terakhir melibatkan strategi operasi tulis cache, yang memfokuskan pada mengekalkan konsistensi antara memori utama dan cache semasa kemas kini. Untuk lebih banyak pengetahuan berkaitan, sila lawati ruanganSoalan Lazim
!Atas ialah kandungan terperinci Apakah cache?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Perkara itu sebenarnya seperti ini Pada masa itu, ketua saya memberi saya tugas pemantauan prestasi perkakasan Semasa proses menggunakan perf, saya memasukkan senarai perf arahan dan saya melihat maklumat berikut: Tugas saya adalah untuk membolehkan peristiwa cache ini. untuk dikira secara normal. Tetapi intinya, saya tidak tahu apa maksud kehilangan dan beban ini.

Kelajuan capaian terpantas antara ingatan ialah "memori dalaman"; memori dalam komputer menggunakan struktur hierarki, disusun mengikut kelajuan, termasuk memori dalaman, memori cache, memori utama komputer, dan cakera berkapasiti besar dibahagikan kepada RAM Random Access Memory dan ROM Read Only Memory.

Boleh diakses terus. Memori dalaman, juga dipanggil memori, adalah jambatan antara memori luaran dan CPU Semua program dalam komputer dijalankan dalam memori. Fungsi memori adalah untuk menyimpan sementara data pengiraan dalam CPU dan data ditukar dengan ingatan luaran seperti cakera keras. Selagi komputer sedang berjalan, sistem pengendalian akan memindahkan data yang perlu dikira dari memori ke CPU untuk pengiraan apabila pengiraan selesai, CPU akan menghantar keputusan operasi komputer yang stabil.

计算机具有很强的记忆能力的基础是:足够容量的存储装置。存储器可分为内存和外存,它们使得计算机具有强大的记忆功能,可以存储大量的信息,这些信息,不仅包括各类数据信息,还包括加工这些数据的程序。

Sistem ingatan merujuk kepada sistem dalam komputer yang terdiri daripada pelbagai peranti storan yang menyimpan atur cara dan data, komponen kawalan, dan peranti (perkakasan) dan algoritma (perisian) yang menguruskan penjadualan maklumat. Sistem storan menyediakan keupayaan untuk menulis dan membaca maklumat (program dan data) yang diperlukan untuk kerja komputer, dan merealisasikan fungsi ingatan maklumat komputer. Struktur hierarki sistem storan boleh dibahagikan kepada lima peringkat: kumpulan daftar, cache cache, memori utama, memori maya dan memori luaran.

Pemacu kilat USB dicipta di China, dan Netac ialah pencipta global pemacu kilat USB. Pada Julai 2002, "Kaedah Penyimpanan Luar Kilat Cepat dan Peranti untuk Sistem Pemprosesan Data" telah diberi kuasa secara rasmi oleh Pejabat Harta Intelek Negeri Paten ini mengisi jurang 20 tahun dalam paten ciptaan dalam bidang storan komputer di China 2004 7 Disember 2019, Netac menerima paten ciptaan asas untuk cakera kilat yang dibenarkan secara rasmi oleh Pejabat Paten Kebangsaan AS.

使用cache可以提高计算机运行速度这是因为Cache缩短了CPU的等待时间。Cache是位于CPU和主存储器DRAM之间,规模较小,但速度很高的存储器。Cache的功能是提高CPU数据输入输出的速率;Cache容量小但速度快,内存速度较低但容量大,通过优化调度算法,系统的性能会大大改善。

Cache dipanggil memori cache Ia adalah memori berkapasiti kecil berkelajuan tinggi antara unit pemprosesan pusat dan memori utama Ia biasanya terdiri daripada memori tempatan jenis ini untuk mengurangkan atau menghapuskan jurang antara CPU dan memori Kesan perbezaan kelajuan antara mereka terhadap prestasi sistem. Kapasiti cache kecil tetapi pantas, kelajuan memori rendah tetapi kapasiti besar Dengan mengoptimumkan algoritma penjadualan, prestasi sistem akan bertambah baik.