Hirarki Memori

29
Hierarki Memori Dan Cache Memori.

description

Struktur Hirarki Memori

Transcript of Hirarki Memori

  • Hierarki MemoriDan Cache Memori.

  • Hirarki MemoryDesain memory dipengaruhi:KecepatanKapasitascost.

  • Trade-Off Pada Desain Memory

  • Trade-Off Pada Desain Memory (2)Memory berkapasitas besar, faktor performa tetap diperhatikan.

  • Solusinya ? Kombinasi antara memory yang berkapasitas besar dengan memory yang kapasitasnya lebih kecil dengan waktu akses yang cepat.

  • Cache MemoryTerletak di antara memori utama dan register CPUIdealnya, kecepatan processor=kecepatan memory

  • CACHE MEMORYLokasi cache memory?Kecepatan memori utama sangat rendah dibandingkan kecepatan prosessor modern.Solusi yang efisien?Waktu akses memori cache lebih cepat 5 10 kali dibandingkan memori utama

  • PRINSIP KERJA MEMORI CACHECache berisi salinan sebagian isi memori utamaProcessor mencari wordProcessor membaca word dengan proses HITTProses MISS

  • Memory Stack

  • Cache & Memory Structure

  • Cache & Memory Structure

  • Cache DesignBeberapa point yang diperhatikan dalam design suatu cache memory adalah sebagai berikut : Cache sizeBlock sizeMapping functionReplacement algorithmWrite policy

  • Memory-Mapped FileMemory-mapped file I/O membolehkan file I/O diperlakukan sebagai rutin akses memori yang dipetakan sebagai blok disk ke dalam page memori

    Suatu file diinisialisasikan menggunakan demand pagin. Suatu bagian page file dibaca dari file sistem ke page fisik. Subsequent membaca/menulis ke/dari file yang diperlakukan dalam urutan memori akses.

    Secara sederhana file akses memperlakukan file I/O melalui memori melalui read() write() system calls.

    Beberapa proses juga dapat dipetakan pada fiel yang sama pada memori yang di-share. *

  • *

  • Page ReplacementMencegah alokasi yang berlebihan dari memori dengan memodifikasi layanan rutin page-fault melalui page Menggunakan modify bit untuk mengurangi overhead transfer page hanya modifikasi page yang ditulis di disk. Page replacement melengkapi pemisahan antara memori logik dan memori fisik virtual memori yang besar dapat memenuhi kebutuhan memori fisik yang kecil. *

  • *

  • Basic Page ReplacementTentukan lokasi yang diminta page pada disk.

    Tentuka frame bebas :Jika tersedia frame bebas, maka dapat digunakan Jika tidak tersedia frame bebas, gunakan algoritma penggantian untuk memilih kandidat frame. Baca page yang dituju ke dalam frame bebas (yang baru). Update page dan frame table. Restart process.*

  • *

  • Algoritma Page ReplacementPilih page fault terendah. Evaluasi algoritma dengan menjalankan particular string dari memori acuan (reference string) dan menghitung jumlah page fault dari string. Contoh, reference string sebagai berikut : 1, 2, 3, 4, 1, 2, 5, 1, 2, 3, 4, 5.*

  • How is the hierarchy managed?Registers Memoryby compiler (programmer)Cache Memoryby the hardwareMemory Disksby the hardware and operating system (virtual memory)by the programmer (files)

  • I/O Communication TechniqueTerdapat beberapa mekanisme komunikasi yang berhubungan dengan I/O, yaitu :Programmed I/OInterrupt-driven I/ODirect Memory Access (DMA)

  • Programmed I/O (1)Pada mekanisme ini, processor bertanggung jawab dalam transfer data dari perangkat eksternal ke memory dan sebaliknya. Pada saat processor melakukan eksekusi dan mendapatai instruksi yang berkaitan dengan I/O, maka akan menerbitkan perintah ke modul I/O yang bersangktan.Modul I/O yang bersangkutan akan melakukan aksi yang diminta processor.Sebagai mekanisme untuk menentukan status transfer I/O, modul I/O tidak dapat melakukan interrupt pada processor, sehingga, processor secara periodik melakukan pengecekan akan status tersebut.

  • Programmed I/O (2)Dengan demikian, instruksi untuk mekanisme I/O pada programmed I/O mencakup beberapa hal dibawah ini : ControlDigunakan untuk aktivasi perangkat eksternal dan menginformasikan tentang aksi apa yang harus dilaksanakan.StatusDigunakan untuk mengetahui status akan transfer data dari perangkat I/O ke main memory.Transfer Digunakan untuk memindahkan data antara register processor dengan perangkat eksternal.

  • Programmed I/O (3)Pada gambar disamping ditunjukan mekanisme eksekusi instruksi yang melibatkan I/O.Processor secara periodik melakukan pengecekan untuk mengetahui status daripada transfer data dari perangkat ekstenal ke main memory dan sebaliknya.Sehingga processor disibukan dengan proses untuk mengetahui status transfer.

  • Interrupt-Driven I/O (1)Masalah pada programmed I/O adalah bahwa processor harus menunggu hingga modul I/O siap untuk melakukan transfer yang mengakibatkan processor musti melakukan pengecekan yang berulang-ulang atas status modul I/O.Alternatifnya, processor menerbitkan perintah ke modul I/O dan kemudian processor melanjutkan eksekusinya atas instruksi yang lain.Modul I/O akan melakukan interrupt ke processor untuk meminta layanan jika modul I/O telah siap saling bertukar data dengan processor.Processor kemudian melakukan eksekusi atas instruksi perpindahan data.Setelah selesai, processor akan melanjutkan eksekusi instruksi sebelumnya, sebelum peocessor di interrupt oleh modul I/O.

  • Interrupt-Driven I/O (2)Pada gambar disamping dapat diketahui, processor melakukan intervensi atas proses transfer setelah mendapatkan interrupt dari modul I/O.

  • Direct Memory Access (DMA) - 1Interrupt-Driven I/O dirasa lebih efisien daripada programmed I/O, namun Interrupt-Driven masih memerlukan intervensi aktif dari processor.Kesulitan yang dihadapi oleh programmed I/O dan Interrupt-Driven I/O adalah :Kecepatan transfer I/O dibatasi oleh kecepatan processor dalam memeriksa dan melayani perangkat eksternal.Processor terikat oleh kegiatan mengatur transfer I/O.

  • Direct Memory Access (DMA) - 2Jika terdapat data yang bervolume besar, diperlukan teknik yang lebih efisien.Direct Memory Access (DMA) diperkenalkan sebagai solusi untuk menyediakan modul yang terpisah yal ng terdapat pada sistem BUS atau menggabungkanya dengan modul I/O.Pada saat akan melakukan pembacaan atau penulisan suatu blok data, processor mengeluarkan perintah ke modul DMA dengan cara mengirimkan informasi sebagai berikut : Apakah read atau write yang diminta ? Apakah perangkat I/O terlibat ? Lokasi awal dalam memory yang akan dibaca atau ditulis ? Jumlah word yang akan dibaca atau ditulis ?

  • Direct Memory Access (DMA) - 3Setelah memberikan perintah ke DMA, processor melanjutkan eksekusinya atas instruksi yang lain.DMA melakukan transfer data dari perangkat eksternal ke main memory tanpa intervensi processor.Setelah process transfer selesai, DMA akan melakukan interrupt ke processor.Sehingga processor hanya dilibatkan pada permulaan dan akhir dari proses transfer.

    *******************