Saat hendak membeli pc baru, seorang teman yang akrab dengan seluk-beluk hardware computer memberi saran, ”jangan beli processor celeron. Soalnya cepat panas dan nggak punya cache.” Apa sih sebenarnya yang dimaksud dengan cache itu?
Cache adalah teknologi yang berbasis pada subsistem memori di computer anda. Tujuan utama dari cache adalah untuk mengakselerasi kinerja computer. Dengan teknologi ini, computer anda dapat bekerja lebih cepat. Untuk memahami gagasan dasar di balik system cache, mari kita perhatikan ilustrasi ransel pustakawan berikut.
Ransel Pustakawan
Seorang pustakawan berada di meja kerjanya. Kehadirannya disana adalah untuk memberikan buku yang anda minta. Anggapah anda tidak bisa mencari dan mengambil buku sendiri di rak, dan anda harus meminta bantuannya untuk mengambilkan setiap buku yang akan anda baca dari rak penyimpanan. Ada dua jenis pustakawan, yakni tanpa cache dan dengan cache.
Pertama mari kita lihat cara kerja pustakawan tanpa cache. Seorang pengunjung dating ke perpustakaan. Dia meminta buku “Kisah 1001 Malam”. Selanjutnya, pustakawan pergi ke rak penyimpanan, mengambil buku yang dimaksud, kembali ke meja kerjanya, dan menyerahkan buku tersebut kepeda si pengunjung.
Selesai membaca, pengunjung tersebut mengembalikan buku kepada pustakawan. Selanjutnya pustakawan menerima buku tersebut dan menyimpannya kembali ke dalam rak. Kemudian dia kembali ke meja kerjanya, menunggu pengunjung berikutnya. Tak lama kemudian datang pengunjung ke dua. Dia meminta kepada pustakawan untuk mengambilkan buku yang sama.
Mendengar buku tersebut, pustakawan berjalan menuju rak pnyimpanan,mengambil buku yang baru saja dia simpan di sana, kembali ke meja kerjanya, dan menyerahkan buku tersebut kepeda pengunjung kedua. Dalam model ini, si pustakawan harus mondar-mandir ke tempat yang sama untuk mengambil buku yang sama. Adakah cara agar si pustakawan tidak harus sering-sering meninggalkan meja kerjanya?
Ya, yakni dengan memberikan cache kepadanya. Cache tersebut adalah ransel yang bisa memuat 10 judul buku (dalam istilah computer, pustakawan tersebut kini memiliki 10 buah cache). Dalam ransel ini, dia akan menyimpan sementara buku yang dikembalikan oleh pengunjung kepadanya (maksimal 10 buku).
Saat perpustakaan baru di buka, ransel pustakawan masih kosong. Pengunjung pertama datang, dan meminta buku “Kisah 1001 Malam”. Seperti pada ilustrasi di atas, pustakawan pergi ke rak penyimpanan buku, mengambil buku yang dimaksud, kembali ke meja kerjanya, dan menyerahkan buku itu pada pengunjung pertama.
Selesai membaca, pengunjung tersebut mengembalikan buku kepada pustakawan. Namun, alih-alih berjalan ke rak penyimpanan untuk menyimpan buku, pustakawan berada tetap di meja kerjanya, dan menyimpan buku tersebut ke dalam ranselnya. Tak lama kemudian datang pengunjung kedua, dam meminta buku yang sama.
Sebelum bergerak ke rak penyimpanan, pustakawan terlebih dahulu mencari buku yang diminta di dlam ransel. Ya, buku tersebut masih berada di dalam ransel! Tanpa harus berkeringat berkjalan ke rak penyimpanan, pustakawan dapat langsung memberikan buku tersebut kepada pengujung kedua.
Cache Komputer
Saat processor mengakses memory utama (RAM), dia membutuhkan waktu sekitar 60 nanosecond (1/60 miliar detik). Cepat sekali, bukan? Ya, bila dibandingkan dengan waktu yang dibutuhkan pustakawan untuk berjalan dari meja kerjanya ke rak penyimpanan, dan sebaliknya.
Namun, tidak bagi processor modern. Beberapa processor membutuhkan waktu 2 nanosecond untuk mengakses RAM (disebut cycle time). Bagi processor ini, 60 nanosecond cycle time ibarat pustakawan yang berjalan ke rak penyimpanan dengan cara merangkak.
Bagaimana jika kita membangun bank memory di motherboard, yang kecil namun sangat cepat (sekitar 30 nanosecond)? Itu sudah dua kali lebih cepat daripada akses ke memory utama. Bank ini level 2 cache atau L2 cache. Bagaimana jika membangun system memory yang lebih kecil, tapi lebih cepat langsung di dalam chip processor? Dengan demikian, memori ini akan diakses dengan kacepatan processor, bukan kecepatan memori bus? Inilah yang disebut L1 cache, yang lebih cepat dari L2cache.
Pada beberapa tipe processor, terdapat 2 level cache yang tertanam langsung di dalam chip. Dalam kasus ini, cache yang berada di dalam motherboard diantara processor dan system memory utama turun peringkat menjadi level 3 atau disebut L3 cache.
Sekarang jelas kan? Mengapa teman anda tidak merekomendasikan processor tanpa L1 cache dan L2 cache, dan mengapa processor yang demikian lebih cepat panas? Karma si pustakawan (processor) harus bolak-balik ke rak penyimpanan (system memory utama) untuk mengambil dan menyimpan buku (data).
Tidak ada komentar:
Posting Komentar