Apa itu cache, dan mengapa CPU, GPU, dan jenis prosesor lainnya memilikinya? Inilah semua yang perlu Anda ketahui.
tautan langsung
- Cache: Sejumlah kecil memori berkecepatan tinggi
- Level cache dan hierarki memori
- Cache diperlukan tetapi tidak meningkatkan kinerja dengan sendirinya
Meskipun cache tidak dibicarakan sebanyak inti, RAM (Memori Akses Acak), atau VRAM, Anda mungkin pernah mendengarnya sebelumnya, terutama baru-baru ini. AMD dengan bangga mengiklankan kinerja gaming untuk produknya CPU Ryzen dengan 3D V-Cache sebagai hasil dari penggunaan cache, dan salah satu peningkatan terbesar Intel pada CPU Raptor Lake generasi ke-13 adalah menambahkan lebih banyak cache.
Namun bagaimana cache dapat meningkatkan kinerja jika diukur dalam satuan megabita? Bahkan perangkat RAM termurah pun hadir dengan 16 GB saat ini, jadi bagaimana menambahkan beberapa megabita cache tambahan bisa membuat perbedaan besar pada kinerja? Ya, cache bukanlah jenis memori normal Anda.
Cache: Sejumlah kecil memori berkecepatan tinggi
Sumber: AMD
Cache sebenarnya adalah perkembangan prosesor yang cukup baru, dimulai pada tahun 1990an, dan ditemukan karena RAM. RAM adalah komponen kunci dalam komputer yang menyimpan sejumlah besar data yang diperkirakan akan sering dibutuhkan oleh prosesor (seperti CPU dan GPU). Untuk waktu yang lama, peningkatan kinerja RAM sejalan dengan peningkatan kinerja CPU, namun pada tahun 1990an, hal tersebut menjadi semakin meningkat. jelas bahwa RAM tidak akan mampu mengimbangi CPU terbaru. RAM mempunyai kapasitas yang besar, namun kecepatan transfernya juga terlalu besar lambat.
Di sinilah cache berperan. Ini tidak sebesar RAM baik secara fisik maupun kapasitas, tetapi berada di dalam prosesor itu sendiri dan dapat mentransfer data dengan sangat cepat dan dengan latensi yang sangat rendah. Selama cache menyimpan data yang benar-benar dibutuhkan prosesor, hal ini dapat menghemat waktu karena meminta data yang sama pada RAM berkali-kali lebih lambat. Itu adalah solusi hebat untuk masalah RAM dan memungkinkan perancang CPU untuk terus membuat CPU dan CPU yang lebih cepat Perancang RAM terus membuat kapasitas RAM yang lebih besar tanpa perlu terlalu khawatir pertunjukan. Saat ini, cache ada di hampir semua jenis prosesor.
Anda mungkin bertanya-tanya mengapa cache sangat kecil. Ya, sebagian besar berkaitan dengan ruang dan uang. Bahkan cache sebesar 32MB dapat memakan cukup banyak ruang pada prosesor, dan chip modern dibatasi hingga luas total sekitar 600mm2, sehingga harus digunakan dengan bijak. Itu berarti mendedikasikan lebih banyak area untuk cache bisa menjadi sangat mahal, dan situasi itu sebenarnya semakin buruk, bukan lebih baik. Proses manufaktur terbaru menghasilkan peningkatan yang semakin kecil dalam kepadatan cache, dan TSMC gagal mengurangi ukuran cache sama sekali pada iterasi pertama dari proses 3nmnya.
Level cache dan hierarki memori
Sumber: Carlos Carvalho
Penemuan cache berarti adanya lapisan baru pada semua perangkat penyimpanan data di komputer. Lapisan-lapisan ini membentuk apa yang disebut hierarki memori, yang dapat Anda lihat pada gambar di atas, dan detailnya memori apa yang digunakan dalam sistem tipikal di dalam CPU (meskipun jenis prosesor lain akan terlihat sangat berbeda). serupa). Saat ini, hierarki memori modern tidak hanya mencakup cache, RAM, dan perangkat penyimpanan permanen tetapi juga hierarki memori di dalam cache itu sendiri.
Kebanyakan prosesor memiliki tingkat cache yang berbeda untuk berbagai tujuan. Tingkat cache pertama dan terkecil adalah L1, yang diberikan inti individual untuk memproses data yang dibutuhkan segera. Cache L1 sering kali diukur dalam kilobyte, dengan CPU Ryzen 7000 terbaru memiliki cache L1 sebesar 64 KB per inti. Selain itu, cache L1 modern sering kali dibagi lagi menjadi L1I (untuk instruksi) dan L1D (untuk data).
Berikutnya adalah L2, yang ditujukan untuk sekelompok inti, bukan inti individu. Tentu saja, cache L2 lebih besar daripada cache L1, sering kali berdasarkan urutan besarnya, namun karena ukurannya yang jauh lebih besar dan harus melayani lebih banyak inti berarti cache tersebut lebih lambat dan memiliki latensi yang lebih tinggi. Beberapa prosesor, terutama GPU dan CPU yang lebih lambat, hanya akan menggunakan cache L2.
Langkah selanjutnya adalah L3, yang umumnya digunakan oleh semua core pada chip. Ukurannya dapat bervariasi dari beberapa kali lebih besar dari cache L2 hingga lebih besar, tergantung pada prosesornya. Artinya, ini bahkan lebih lambat dibandingkan cache L2 namun tetap mengungguli RAM. Selain itu, cache L3 juga sering bertindak sebagai "cache korban", yang merupakan tempat perginya data yang dikeluarkan dari cache L1 dan L2. Ini mungkin akan dikeluarkan lebih lanjut dari cache L3 jika tidak diperlukan. Saat ini, cache L3 sangat penting bagi AMD karena teknologi chipletnya. Chip Ryzen 3D V-Cache berisi 64MB L3 cache, dan RX 7000 Memory Cache Dies (atau MCD) masing-masing berisi 16MB L3 cache.
Tingkat cache tertinggi yang terlihat pada sebagian besar prosesor adalah L4, yang seringkali sangat besar sehingga bisa dikatakan sebagai RAM. Faktanya, CPU terbaru yang menggunakan cache L4 adalah chip Intel Sapphire Rapids Xeon, yang menggunakan HBM2 sebagai cache L4 pada model kelas atas. AMD, di sisi lain, tidak pernah menggunakan cache L4 dan sebaliknya puas memperbesar cache L3-nya ke kapasitas tinggi dengan menambahkan lebih banyak CPU dan chiplet V-Cache. Cache L4 biasanya lebih menguntungkan GPU terintegrasi, karena ini merupakan solusi on-die yang dapat berbagi data antara CPU dan GPU terintegrasi.
Di beberapa chipset, terutama chipset seluler, terdapat jenis cache lain: cache tingkat sistem (SLC). Cache ini kemudian digunakan di seluruh chipset, seperti GPU, NPU, dan CPU. Cache dapat menggantikan kebutuhan permintaan ke memori utama, sehingga SLC menguntungkan seluruh SoC.
Cache diperlukan tetapi tidak meningkatkan kinerja dengan sendirinya
Terlepas dari semua hype seputar inovasi terbaru dalam cache, ini bukanlah solusi terbaik untuk kinerja. Lagi pula, tidak ada kemampuan pemrosesan dalam cache; itu hanya menyimpan data, dan hanya itu. Meskipun setiap prosesor benar-benar mendapatkan keuntungan dari memiliki lebih banyak cache, seringkali terlalu mahal untuk menambahkan lebih dari jumlah yang dibutuhkan. Menambahkan lebih banyak cache bahkan mungkin tidak meningkatkan kinerja tergantung pada beban kerja, yang merupakan insentif lebih lanjut untuk tidak menggunakan banyak prosesor.
Meskipun demikian, kemampuan menambahkan cache dalam jumlah besar mungkin diinginkan dalam situasi tertentu. CPU dengan banyak cache cenderung berkinerja lebih baik dalam game, misalnya. CPU AMD Ryzen dengan 3D V-Cache cukup cepat untuk bermain game meskipun memiliki frekuensi lebih rendah dibandingkan chip tanpa V-Cache, dan CPU Intel generasi ke-13 secara signifikan lebih cepat dibandingkan chip generasi ke-12, dengan satu-satunya peningkatan besar adalah peningkatan cache.
Pada akhirnya, cache ada sehingga prosesor dapat melewati RAM sesering mungkin dan kinerja menjadi tidak terkendali. Perancang CPU harus menyeimbangkan kapasitas cache dengan ukuran dan, lebih jauh lagi, biaya, yang semakin sulit dengan setiap generasi proses manufaktur baru. Meskipun cara-cara baru untuk menambahkan cache ke prosesor diperkenalkan beberapa dekade setelah cache ditemukan, sulit membayangkan tujuan dari komponen kunci prosesor ini akan berubah.