Anda di halaman 1dari 11

Jurnal Internasional Penelitian Teknik Terapan, ISSN 0973-4562 Volume 13, Nomor 5 (2018) hlm.

3128–3138
© Research India Publications, http://www.ripublication.com

AFAPRA: Algoritma Penggantian Halaman Sadar Flash Adaptif

Lezwon Castellino
Departemen Ilmu Komputer, Universitas Kristus, Bengaluru, Karnataka, India.

Joy Paulose

Departemen Ilmu Komputer, Universitas Kristus, Bengaluru, Karnataka, India.

Abstrak: Perangkat NAND digunakan di hampir semua perangkat portabel saat ini. Di PENGANTAR
masa lalu, terjadi peningkatan yang luar biasa dalam penggunaan perangkat NAND

sebagai media penyimpanan. Penggantian halaman memainkan peran penting dalam Algoritma pengganti halaman telah dibahas oleh banyak peneliti dan
perangkat NAND karena berkontribusi terhadap kinerja sistem. Banyak algoritme telah banyak algoritma telah diusulkan selama bertahun-tahun untuk
diusulkan selama bertahun-tahun untuk mengatasi masalah yang terkait dengan perangkat meningkatkan efisiensi mekanisme halaman. Algoritme populer seperti
abu berbasis memori NAND. Masalah seperti kecepatan baca tulis asimetris dan hapus skema Least Recent Used (LRU), Least Frequently Used (LFU), 2Q [1]
sebelum operasi tulis, telah diatasi oleh algoritme seperti Ghost buffer Assisted dan dan Clock [2] dikembangkan untuk perangkat penyimpanan magnetik
Self-tuningAlgorithm (GASA), Smart Evicted Page List (SEPL), dan FlashAware Page tradisional. Namun, karena evolusi teknologi penyimpanan, algoritme
ReplacementAlgorithm (FAPRA) dan berbagai lainnya. Namun, performanya dapat ini tidak lagi dianggap efisien. Meningkatnya penggunaan teknologi
ditingkatkan lebih lanjut dengan menggabungkan fitur tertentu dalam algoritme ini. Dalam penyimpanan Micro Secure Digital (SD) dan NAND di smartphone
makalah ini, algoritma baru yang disebut Adaptive Flash Aware Page Replacement telah membuktikan algoritme lama ini tidak efisien dan lambat [3].
Algorithm (AFPRA) diusulkan. AFAPRA mengurangi penulisan ke perangkat abu dengan Untuk mengatasi masalah ini, FlashAware Page Replacement
memberikan prioritas lebih tinggi untuk menulis halaman intensif. Selain itu, algoritme ini Algorithms (FAPRA) diperkenalkan.
mengurangi polusi cache dengan meningkatkan prioritas halaman yang tersebar. Halaman

jangka panjang diberikan preferensi yang lebih tinggi dalam algoritme ini karena mungkin

direferensikan berulang kali setelah jangka waktu tertentu. Ini dilakukan menggunakan
Data dalam disk magnetik dapat dengan mudah ditulis dan diperbarui
daftar bayangan adaptif, yang menyimpan metadata dari halaman yang baru saja dihapus.
sesuai kebutuhan. Namun, teknologi di perangkat penyimpanan NAND
Eksperimen yang ekstensif telah dilakukan pada algoritme ini dan hasilnya menunjukkan
bekerja secara berbeda. NAND mendukung pembaruan out-of-place [4].
bahwa algoritme ini mengungguli algoritme terkini dalam hal rasio hit dan jumlah tulis.
Dengan kata lain, halaman tidak dapat langsung ditimpa dan diperbarui di
algoritma ini mengurangi polusi cache dengan meningkatkan prioritas halaman yang
kartu SD. Memori flash mendukung tiga jenis operasi: baca, tulis, dan hapus.
tersebar. Halaman jangka panjang diberikan preferensi yang lebih tinggi dalam algoritme ini
Kelemahan utama perangkat NAND adalah operasi pembaruan di mana
karena mungkin direferensikan berulang kali setelah jangka waktu tertentu. Ini dilakukan
halaman perlu diperbarui. Unit operasi untuk membaca dan menulis halaman
menggunakan daftar bayangan adaptif, yang menyimpan metadata dari halaman yang baru
berada pada tingkat halaman sedangkan operasi penghapusan dilakukan
saja dihapus. Eksperimen ekstensif telah dilakukan pada algoritme ini dan hasilnya
pada tingkat blok seperti yang digambarkan pada Gambar 1. Oleh karena itu,
menunjukkan bahwa algoritme ini mengungguli algoritme terkini dalam hal rasio hit dan
setiap kali halaman akan diperbarui, blok induknya harus dihapus dan ditimpa
jumlah tulis. algoritma ini mengurangi polusi cache dengan meningkatkan prioritas halaman
, yang mungkin membutuhkan banyak waktu. Karena alasan ini, kecepatan
yang tersebar. Halaman jangka panjang diberikan preferensi yang lebih tinggi dalam algoritme ini karena mungkin direferensikan berulang kali setelah jangka waktu tertentu. Ini dilakukan menggunakan daf
tulis di perangkat kartu SD relatif lebih lambat.

Kata kunci: Memori flash, Cache buffer, Penggantian halaman, Paging,


NAND.
Di perangkat NAND, biaya operasi penghapusan adalah yang
tertinggi. Biaya untuk operasi tulis relatif lebih rendah
Jurnal Internasional Penelitian Teknik Terapan, ISSN 0973-4562 Volume 13, Nomor 5 (2018) hlm. 3128–3138
© Research India Publications, http://www.ripublication.com

GAMBAR 1. Arsitektur memori NAND fl ash

Tabel 1. Karakteristik Memori Flash NAND tidak perlu memodifikasi antarmuka sistem file untuk berinteraksi dengan
perangkat abu. FTL mengemulasi disk magnetik tradisional untuk
Operasi Waktu Akses Granularitas
Baca baca 2 KB 20 µ s memungkinkan sistem berinteraksi dengan perangkat dengan cara yang mirip
Menulis 2 KB 200 µ s dengan disk magnetik. FTL juga mengelola fungsi pengumpulan sampah di
Menghapus 128 KB 1,5 md
dalam perangkat abu. FTL juga dibuat untuk menangani kegagalan daya,
karena dapat terjadi kapan saja dan menyebabkan kerusakan data pada
perangkat abu.
dan biaya untuk operasi baca paling rendah seperti yang ditunjukkan pada
Tabel 1. Perangkat ini mengikuti kendala hapus sebelum menulis di mana data Bahkan dengan fungsionalitas tambahan yang disediakan oleh Flash
perlu dihapus pada tingkat blok sehingga data baru dapat ditempatkan di Translation Layer, algoritma penggantian halaman tradisional tidak dapat
lokasi. Perangkat NAND membatalkan pemblokiran yang datanya telah berfungsi secara efisien pada perangkat flash karena arsitekturnya yang
diperbarui dan menulis data ke lokasi baru. Ini memelihara tabel yang modern. Dengan mempertimbangkan semua kekurangan ini, sangat jelas
memetakan alamat logis dari halaman ke alamat fisik dari halaman-halaman bahwa algoritma pertukaran halaman tradisional tidak cocok untuk
dalam memori. Pengumpul sampah bertanggung jawab untuk menemukan perangkat NAND. Oleh karena itu, untuk memenuhi kebutuhan perangkat
blok yang tidak valid dan menghapusnya, untuk digunakan kembali nanti. NAND, beberapa algoritma penggantian halaman seperti Clean-First LRU
(CFLRU) [3], LRU-Write Sequence Reordering (LRU-WSR) [6], Cold Clean
First LRU (CCF-LRU) ) [7], Flash Aware Replacement Strategy (FARS) [8],
Perangkat NAND menggunakan Flash Translation Layer [5] (FTL) Spatial-CLOCK [2], Smart Evicted Page List (SEPL) [9], Flash Aware Page
sebagai antarmuka antara kernel dan perangkat penyimpanan. Replacement Algorithm (FAPRA) [10] dan Ghost buffer Assisted dan
Perangkat abu dibuat dan beroperasi dengan cara yang sangat Self-tuning Algorithm (GASA) [11] miliki
berbeda dibandingkan dengan disk magnetik. Namun, karena adanya
lapisan FTL, kernel

3129
Jurnal Internasional Penelitian Teknik Terapan, ISSN 0973-4562 Volume 13, Nomor 5 (2018) hlm. 3128–3138
© Research India Publications, http://www.ripublication.com

telah diusulkan. Pada bagian berikut, algoritma SEPL [9], FAPRA ditandai sebagai halaman kotor Dingin dan dipindahkan ke MRU dari Daftar

[10] dan GASA [11] yang populer dianalisis. Campuran (ML). Ini memungkinkan halaman hot dirty tetap berada di buffer dan

karenanya mengurangi frekuensi penulisan.

Meskipun buffer hantu dapat membantu mengidentifikasi halaman populer,

PEKERJAAN YANG BERHUBUNGAN ukurannya dapat menjadi masalah yang memprihatinkan. Misalnya, jika ukuran buffer

bayangan terlalu besar, halaman dingin yang jarang akan memiliki peluang lebih tinggi

untuk memasuki posisi MRU dari Daftar Campuran, yang dapat meningkatkan frekuensi
Pada bagian ini, kita akan meninjau algoritma pengganti berbasis abu tiga
buffer yang terlewat. Demikian pula, jika ukuran buffer bayangan terlalu kecil, buffer
halaman untuk perangkat abu. Kami akan mencatat kelebihan dan
tersebut mungkin gagal mengidentifikasi halaman populer pada tingkat yang signifikan.
kekurangan mereka dan melihat bagaimana kinerja dapat ditingkatkan.
Oleh karena itu, ukuran buffer hantu memainkan peran yang sangat penting dalam

performa algoritma ini.

Ghost buffer Assisted and Self-tuning Algorithm (GASA) GASA mengatasi masalah ini dengan mengimplementasikan mekanisme yang

secara otomatis menyesuaikan ukuran buffer bayangan tergantung pada beban kerja.

GASA [11] adalah algoritma penggantian halaman yang baru-baru ini diperkenalkan GASA menempelkan bendera Ghost ke halaman yang digunakan untuk memutuskan

untuk perangkat penyimpanan berbasis Flash yang mencoba mengurangi operasi tulis ke apakah ukuran buffer harus ditingkatkan atau dikurangi. Halaman yang diminta, ketika

perangkat abu dengan tetap mempertahankan rasio hit yang stabil. GASA melakukan ini ditemukan dalam daftar hantu, dipindahkan ke posisi MRU dari daftar campuran.

dengan membuang halaman yang bersih dan dingin sebelum yang lain. Algoritma GASA Bendera hantu dilampirkan ke halaman untuk menandainya sebagai halaman yang

juga menggunakan tiga daftar: Daftar Campuran (ML), ColdCleanList (CCL) dan Daftar direferensikan dari daftar hantu. Jika halaman tersebut direferensikan lagi di masa

Hantu (GL) seperti yang ditunjukkan pada Gambar 2. Daftar Campuran menyimpan mendatang dari daftar campuran, bendera hantu akan membantu kita mencatat bahwa

halaman hot clean, hot dirty, dan cold dirty. Daftar Cold clean menyimpan halaman cold daftar hantu berhasil mengidentifikasi halaman populer. Oleh karena itu, ukuran buffer

clean. Daftar Hantu atau buffer hantu, menyimpan metadata dari halaman-halaman yang hantu akan ditingkatkan untuk menampung lebih banyak halaman panas. Setelah

digusur. Algoritme secara otomatis menyesuaikan ukuran buffer bayangan tergantung daftarnya diperbesar, bendera hantu dihapus dari halaman. Demikian pula, selama

pada beban kerja. penggusuran, jika halaman korban ada di ML dengan kumpulan tanda hantunya,

kemudian ini menunjukkan bahwa halaman tersebut belum sering diakses. Oleh karena

itu, ukuran buffer hantu dikurangi untuk menghindari masuknya halaman dingin. GASA

mengimplementasikan strategi untuk buffer hantu yang dapat memanfaatkan rasio hit
GASA mengklasifikasikan halaman menjadi empat status: Hot clean, Cold
dalam suatu algoritma dalam jangka panjang. Strategi ini diimplementasikan dalam
Clean, Hot Dirty dan Cold Dirty. Mirip dengan CCFLRU, GASA lebih memilih
algoritma AFAPRA yang diusulkan untuk meningkatkan rasio hit totalnya.
penggusuran halaman cold clean untuk mengurangi penulisan ke perangkat flash.

Namun, sementara CCF-LRU mungkin mengurangi jumlah klik dengan menggusur

halaman yang baru direferensikan, algoritme GASA menyimpan referensi halaman

yang digusur dalam buffer bayangan untuk referensi di masa mendatang [11]. Jika

halaman di buffer bayangan direferensikan lagi, GASA memindahkan konten

halaman langsung ke buffer dan menandainya sebagai panas. Halaman-halaman

populer diidentifikasi dengan teknik ini, sehingga meningkatkan rasio klik.

Daftar Halaman yang Digusur Cerdas (SEPL)

Selama penggusuran, daftar bersih dingin diperiksa terlebih dahulu.


Jika list berisi halaman, maka halaman pada posisi LRU dipilih sebagai SEPL [9] adalah singkatan dari Smart Evicted Page List. Algoritma SEPL mencoba

halaman korban. Sebelum diganti, metadatanya disimpan dalam Ghost untuk mengatasi beberapa kekurangan CFLRU dan FARS dengan memberikan

Buffer. Jika CCL kosong, algoritme mulai memindai ML untuk halaman prioritas lebih pada penulisan halaman intensif dan jangka panjang. SEPL berisi

yang sangat kotor, dari posisi LRU. Ketika halaman cold dirty ditemukan, daftar EPL (Evicted Page List) yang menyimpan metadata dari halaman yang baru

isinya akan dialihkan ke disk dan metadatanya dicatat dan disisipkan saja digusur. Daftar halaman juga berisi buffer jendela adaptif ukuran yang

pada posisi MRU di Ghost Buffer, sebelum diganti. Jika aHot cleanpage menyesuaikan ukurannya secara otomatis sesuai dengan algoritme. Setiap halaman

ditemukan, halaman tersebut diubah menjadi halaman cold clean dan dilampirkan dengan faktor SEPL yang menjadi dasar penggusuran halaman dengan

dipindahkan ke MRU dari Cold Clean List. Adapun halaman kotor panas, daftar SEPL seperti yang digambarkan pada Gambar 3.

ini

3130
Jurnal Internasional Penelitian Teknik Terapan, ISSN 0973-4562 Volume 13, Nomor 5 (2018) hlm. 3128–3138
© Research India Publications, http://www.ripublication.com

GAMBAR 2. Contoh Algoritma GASA

Algoritma SEPL menginisialisasi dua konstanta ReadFactor danWriteFactor ukuran berkurang. Demikian pula, jika halaman kotor, ukuran jendela akan

menjadi 1 dan 8 secara berurutan [9]. Ketika sebuah halaman diminta, jika itu bertambah. Jika halaman tidak ditemukan di EPL, algoritme memeriksa perangkat

ditemukan dalam daftar halaman. Ini dipindahkan ke posisi MRU dalam daftar. abu untuk halaman tersebut. Jika halaman berjarak lebih dari 32 sektor, faktor

Jika ini adalah permintaan tulis, faktor SEPL untuk halaman tersebut dinaikkan halaman dinaikkan 8 sehingga halaman yang diakses secara acak lebih lama

olehWriteFactor (8) lainnya oleh ReadFactor (1). Ini karena biaya operasi tulis berada di memori. Timer disetel untuk setiap 1000 permintaan untuk mengurangi

setidaknya 8 kali lebih banyak daripada biaya operasi baca. Jika ada yang prioritas halaman dalam daftar.

terlewat, daftar hantu EPL dipindai. Jika ditemukan, halaman akan dipindahkan
ke MRU dari daftar halaman dan faktor SEPL ditingkatkan oleh WriteFactor (8). SEPL berfokus pada tiga masalah utama. (1) SEPL berupaya mengurangi
Ini dilakukan untuk mengurangi penggusuran halaman jangka panjang. Hit polusi cache dengan memberikan prioritas lebih tinggi ke halaman yang tersebar
halaman dalam daftar EPL juga memberikan perspektif tentang penggusuran satu sama lain. (2) Toko SEPL menulis halaman intensif dalam buffer untuk durasi
jenis halaman. Halaman bersih berarti terlalu banyak halaman bersih yang yang lebih lama dengan memberi mereka faktor SEPL yang tinggi. (3) Algoritme
diusir, dan karenanya juga jendela memberikan prioritas lebih tinggi ke halaman jangka panjang melalui penggunaan

buffer bayangan. Ini adalah solusi yang sangat bermanfaat

3131
Jurnal Internasional Penelitian Teknik Terapan, ISSN 0973-4562 Volume 13, Nomor 5 (2018) hlm. 3128–3138
© Research India Publications, http://www.ripublication.com

GAMBAR 3. Contoh Algoritma SEPL

diimplementasikan dalam algoritma untuk meningkatkan efisiensinya. Algoritme yang Rasio Keuntungan terhadap Biaya (BCR) mempertimbangkan ruang kosong

diusulkan, AFAPRA, menggunakan solusi ini untuk meningkatkan rasio hitnya. yang dihemat dan biaya untuk membaca seluruh kandidat halaman korban. BCR

untuk menggusur halaman bersih adalah 1 karena tidak memiliki subhalaman kotor

sedangkan untuk menggusur halaman kotor penuh BCR adalah 0. Nilai keterkinian

dan frekuensi gabungan juga diperhitungkan untuk merancang nilai pemilihan korban
Algoritma Penggantian Halaman Sadar Flash (FAPRA)
menggunakan rumus BCE.

FAPRA [10] berfokus pada pengurangan penulisan halaman ke disk dan untuk
Saat bingkai gratis diperlukan, algoritme FAPRA dipicu. Algoritme pertama
mengurangi degradasi rasio hit halaman. FAPRA menggunakan frekuensi akses
kali mengeluarkan halaman dari daftar campuran, asalkan tidak kosong.
halaman kotor untuk membagi halaman menjadi halaman panas dan dingin.
Halaman dengan Selecting Index Value (SIV) terbesar digusur. Namun, jika
FAPRA juga mengurangi degradasi pada memori abu dengan mengurangi jumlah
daftar campuran kosong, algoritme mengeluarkan halaman kotor penuh
penulisan ke blok yang digunakan. Algoritme memperhitungkan frekuensi akses
dengan SIV terbesar. FAPRA memeriksa subhalaman kotor sebagian. Jika
dan keterkinian akses untuk memilih halaman korban. Ini menggunakan teknik sub
halaman ditemukan dengan subhalaman bersih, FAPRA hanya menulis
halaman di mana alih-alih seluruh halaman ditulis kembali ke memori, hanya
kembali subhalaman kotor ke memori. Untuk mengurangi tingkat perataan
subhalaman kotor yang dianggap seperti yang ditunjukkan pada Gambar 4.
keausan, halaman ditulis menjadi blok bebas dengan jumlah penghapusan
paling sedikit.

Algoritma ini terdiri dari dua daftar. Daftar campuran dan daftar halaman kotor penuh. Daftar campuran berisi halaman bersih
dan sebagian halaman kotor. Halaman kotor sebagian adalah halaman di mana tidak semua subhalaman halaman itu kotor.
Daftar halaman kotor terdiri dari halaman kotor penuh. Halaman-halaman ini METODE YANG DIUSULKAN

tidak memiliki subhalaman yang bersih dan oleh karena itu dianggap kotor sepenuhnya.

FAPRA memperkenalkan rasio manfaat terhadap biaya untuk menggusur halaman korban. Pada bagian ini kami akan mempresentasikan ide dan alur kerja dari algoritme

AFAPRA kami.

3132
Jurnal Internasional Penelitian Teknik Terapan, ISSN 0973-4562 Volume 13, Nomor 5 (2018) hlm. 3128–3138
© Research India Publications, http://www.ripublication.com

GAMBAR 4. Contoh halaman Kotor di FAPRA

Struktur halaman. Daftar Ghost hanya terdiri dari metadata halaman yang digusur. Setiap

halaman berisi dua variabel bendera. Variabel hot flag menunjukkan apakah

Untuk meningkatkan kinerja dari algoritma ini (GASA, FAPRA, SEPL), halaman dalam memori adalah halaman panas (halaman yang sering diakses)

sebuah algoritma baru bernama Algoritma Pengganti Halaman Sadar Flash atau tidak. Bendera hantu menunjukkan apakah memori halaman diambil dari

Adaptif (AFAPRA) diusulkan. Mirip dengan SEPL, AFAPRA akan memiliki daftar hantu. Ini akan membantu kami menyesuaikan ukuran daftar hantu yang

daftar hantu yang akan menyimpan metadata dari halaman yang digusur. sesuai. Halaman tersebut juga akan berisi eFactor. Variabel eFactor akan

Daftar hantu akan bersifat adaptif. Algoritme akan terdiri dari tiga daftar: bertindak sebagai dasar untuk kriteria penggusuran dari algoritme.

daftar campuran, daftar pembersihan dingin, dan daftar hantu. Daftar


campuran terdiri dari jendela penggusuran. Jendela akan secara otomatis
menyesuaikan nanti sesuai dengan skema penggusuran halaman. Ukuran
jendela diinisialisasi ke
Algoritma

0,5 (setengah ukuran daftar campuran) di awal. Kisaran ukuran jendela diizinkan
Permintaan Halaman
untuk bervariasi dari jendela / 2 ke jendela / 5. Halaman-halaman tersebut akan

dibedakan berdasarkan konsep yang diajukan oleh Zhi Li, dkk. [6].
Dalam algoritma yang diusulkan ketika sebuah halaman diminta, algoritma
Halaman-halaman tersebut diklasifikasikan menjadi panas bersih, panas kotor,
pertama-tama memeriksa daftar tetap untuk melihat apakah halaman tersebut ada.
dingin bersih dan dingin kotor. Gambar 5 menunjukkan arsitektur algoritme
Jika halaman ditemukan dan bendera panasnya disetel, maka halaman itu
AFAPRA. Hot cleanpage adalah halaman yang sering diakses dan tidak dimodifikasi
dipindahkan ke posisi MRU dalam daftar. EFactor halaman bertambah 1 untuk
di dalam memori. Salinannya sama dengan yang ada di perangkat penyimpanan.
meningkatkan prioritasnya. Jika bendera bayangan halaman disetel, itu berarti daftar
Halaman hot dirty adalah halaman yang sering diakses dan telah dimodifikasi di
bayangan membantu memulihkan halaman jangka panjang kembali ke memori. Hal ini
dalam memori. Halaman-halaman ini harus diberi prioritas tertinggi untuk tetap
pada gilirannya menyebabkan ukuran daftar hantu bertambah 1 dan bendera hantu di
berada dalam memori. Halaman cold clean adalah halaman yang jarang diakses
halaman dihapus.
yang tidak dimodifikasi di dalam memori, sedangkan halaman cold dirty adalah

halaman yang telah dimodifikasi.


Jika halaman tidak ditemukan dalam daftar campuran, algoritme akan
mencari halaman dalam daftar cold clean. Jika halaman ditemukan dalam daftar
bersih dingin, itu dipindahkan ke posisi MRU dari daftar campuran. Jika halaman
Daftar cold clean terdiri dari semua halaman cold clean. Daftar campuran
diperlukan untuk operasi tulis, eFactornya disetel ke 8 dan kemudian
terdiri dari dingin kotor, panas bersih dan panas kotor
dipindahkan ke

3133
Jurnal Internasional Penelitian Teknik Terapan, ISSN 0973-4562 Volume 13, Nomor 5 (2018) hlm. 3128–3138
© Research India Publications, http://www.ripublication.com

GAMBAR 5. Arsitektur Algoritma AFAPRA

Daftar Campuran, jika tidak 1 ditambahkan ke eFactor yang ada. Hitungan 8 diberikan diperlukan untuk operasi baca maka eFactor halaman diatur ke 1. Jika
untuk meningkatkan prioritas untuk menulis halaman intensif dan untuk membantu diperlukan untuk operasi tulis, eFactor halaman diatur ke 4. Lokasi halaman juga
mereka tetap dalam memori untuk durasi yang lebih lama. penting. Jika halaman berjarak 32 sektor dari halaman yang terakhir diambil, itu
berarti halaman-halaman tersebut sedang diakses secara acak. Oleh karena itu,

Jika tidak ada klik dalam daftar campuran dan daftar cold clean, algoritme akan eFactor halaman bertambah 4, untuk memprioritaskan halaman yang diakses

merujuk ke daftar hantu untuk memeriksa apakah metadata halaman ada di secara acak. Ukuran jendela dan ukuran daftar bayangan disesuaikan setelah

dalamnya. Jika pagemetadata ditemukan dalam daftar bayangan, datanya dimuat setiap permintaan halaman. Algoritma permintaan halaman digambarkan dalam

dalam halaman, dan bendera bayangannya disetel. Jika halaman bayangan menjadi Algoritma 1.

panas saat digusur, eFactor-nya disetel ke 8, sebelum memindahkannya ke MRU

Daftar Campuran. Ini dilakukan untuk mempertahankan halaman jangka panjang

dalam memori dan memberikan prioritas yang lebih tinggi daripada halaman jangka Alokasi Halaman
pendek. Jika halamannya dingin, eFactor 4 disetel dan halaman dipindahkan ke

daftar Cold Clean. Hitungan 4 dipilih untuk menjaga keseimbangan antara faktor Prosedur alokasi halaman bekerja seperti yang diilustrasikan dalam
jangka panjang dan faktor dingin. Halaman tersebut mungkin berjangka panjang, Algoritma 2. Jika daftar pembersihan dingin tidak kosong, korban dipilih dari
tetapi jika jarang diakses, maka hal itu dapat menghambat peruntukan halaman baru posisi LRU daftar pembersihan dingin. Jika daftar Cold Clean kosong,
dengan tetap berada di memori untuk waktu yang terlalu lama. algoritme memindai jendela di dalam daftar campuran. Algoritme pertama
kali memindai halaman di posisi LRU. Jika eFactor-nya 0, maka itu dipilih
sebagai korban, jika tidak eFactornya berkurang 1 dan algoritme memindai
halaman berikutnya dalam daftar. Algoritme secara berulang memindai
Algoritme memantau faktor bersih halaman. Jika halaman bersih, setiap halaman dalam jendela hingga halaman dengan eFactor 0 ditemukan.
berarti terlalu banyak halaman bersih yang digusur. Oleh karena itu, Perhatikan bahwa halaman dengan eFactor 0 pada akhirnya akan ditemukan
ukuran jendela dikurangi 1. Demikian pula, jika halaman kotor, ukuran karena eFactor halaman berkurang setiap kali diulangi. Halaman korban
jendela ditambah 1 halaman untuk menampung lebih banyak halaman kemudian dihapus dari daftar.
kotor.

Jika halaman tidak ditemukan dalam daftar mana pun, maka data
diambil langsung dari perangkat abu. Jika halaman Jika halaman korban memiliki set bendera hantu, itu berarti terlalu
banyak halaman dingin yang diambil dari hantu

3134
Jurnal Internasional Penelitian Teknik Terapan, ISSN 0973-4562 Volume 13, Nomor 5 (2018) hlm. 3128–3138
© Research India Publications, http://www.ripublication.com

EVALUASI KINERJA

Pada bagian ini kinerja dari algoritma AFAPRA yang diusulkan, dianalisis
menggunakan utilitas simulasi perangkat abu bernama Flash-DBSim [12].
Flash-DBSim adalah alat populer yang digunakan untuk mensimulasikan
fungsi disk NAND. Ini memberikan kemampuan untuk melakukan evaluasi
kinerja berbasis jejak dari berbagai algoritma cache buffer. FlashDBSim
telah digunakan oleh banyak peneliti untuk mengukur kinerja algoritma
mereka [4], [7], [13]. Evaluasi dilakukan dengan menggunakan jejak yang
telah direkam sebelumnya yang tersedia dalam alat simulasi. Performa dari
algoritma yang diusulkan akan dibandingkan dengan algoritma populer
lainnya seperti CFLRU, LRU-WSR dan CCF-LRU.

Pengaturan Eksperimen

Percobaan dilakukan pada CPU Intel Core i5 2.5Ghz. Sistem ini berisi
6 GB RAM inbuilt dan menjalankan Windows 10 dengan dukungan
64-bit.

Flash-DBSim diinisialisasi dengan memori 512MB dan ukuran halaman

daftar, oleh karena itu ukuran daftar hantu berkurang 1. Setelah halaman 2KB. Ukuran blok adalah 128KB dengan setiap blok terdiri dari 64 halaman.

dihapus dari daftar, datanya, jika bersih, akan dibuang. Jika halaman itu kotor, Flash-DBSim hadir dengan jejak pra-rekaman masing-masing 200.000 dan

halaman tersebut akan dialihkan ke perangkat NAND dan kemudian dibuang. 1.000.000 rekaman. Eksperimen dilakukan dengan 200.000 rekaman yang

Metadata di sisi lain disimpan dalam daftar hantu. Jika daftar bayangan sudah dapat memberikan hasil yang andal.

penuh, halaman di posisi LRU akan dibuang, dan halaman baru ditambahkan
di posisi MRU dari daftar bayangan. Ukuran daftar hantu disesuaikan setelah Tiga metrik kinerja berikut dipertimbangkan dalam percobaan.
proses penggusuran Rasio jumlah penulisan, rasio jumlah hit, dan runtime yang diambil
pada akhir simulasi. Itu

3135
Jurnal Internasional Penelitian Teknik Terapan, ISSN 0973-4562 Volume 13, Nomor 5 (2018) hlm. 3128–3138
© Research India Publications, http://www.ripublication.com

GAMBAR 6. Perbandingan Rasio Hit

GAMBAR 7. Perbandingan Tulisan Halaman

ukuran jendela untuk eksperimen ini disetel ke 0,5 dan ukuran daftar bayangan Rasio Hit
diinisialisasi ke ukuran yang sama seperti ukuran daftar ML dan CCL.

Rasio Hit yang dicapai oleh AFAPRA secara komparatif lebih tinggi
dibandingkan dengan algoritma lainnya. Ini karena fitur daftar hantu AFAPRA
di mana halaman yang baru saja dihapus disimpan lebih lama di dalam
memori. CF-LRU memberikan hasil relatif selama perbandingan rasio hit dari

Hasil Eksperimen algoritma. Namun, kinerja cache AFAPRA meningkat seiring waktu karena
memprioritaskan penyimpanan halaman yang sering diakses dalam memori
untuk durasi yang lebih lama. Gambar 6 menunjukkan rasio hit di antara
Simulasi dari algoritma ini dilakukan pada FlashDBSim dan hasilnya
berbagai algoritma.
dianalisis. Hasil yang dihasilkan oleh simulator Flash-DBSim
diilustrasikan pada Gambar 8, Gambar 9 dan Gambar 10, dan
dibahas pada sub bagian berikut.

3136
Jurnal Internasional Penelitian Teknik Terapan, ISSN 0973-4562 Volume 13, Nomor 5 (2018) hlm. 3128–3138
© Research India Publications, http://www.ripublication.com

ANGKA 8. Perbandingan kinerja runtime

Menulis Rasio Hitungan dalam memori yang tersebar di lokasi acak pada disk. Ini juga mengurangi

kemungkinan halaman yang sering digunakan digusur dengan meningkatkan

AFAPRA berkinerja lebih baik daripada algoritme lainnya sehubungan dengan eFactornya, setiap kali digunakan. Halaman-halaman yang digunakan berulang

metrik jumlah tulis. Pengurangan jumlah tulis yang disediakan oleh AFAPRA, kali setelah durasi tertentu, dicatat oleh daftar bayangan dan diberikan prioritas

disebabkan oleh mekanisme yang menunda penggusuran halaman intensif tulis yang lebih tinggi, sehingga mereka dapat tetap berada di buffer untuk durasi yang

dan prioritas eFactor yang menyimpannya lebih lama dalam memori. Hitungan lebih lama.

tulis sangat rendah dibandingkan dengan LRU-WSR seperti yang ditunjukkan


pada Gambar 7. CFLRU dan CCFLRU namun kesulitan untuk mencocokkan Algoritma AFAPRA yang diusulkan diuji pada platform simulasi fl
kriteria kinerja yang ditetapkan oleh AFAPRA dan LRU-WSR ash Flash-DBSim. Hasilnya ditampilkan pada Gambar 6, Gambar 7
dan Gambar 8. Hasil tersebut menunjukkan bahwa kinerja algoritma
AFAPRA menggantikan algoritma lain sehubungan dengan
parameter kinerja seperti rasio hit dan jumlah tulis.
Runtime

Gambar 8 menunjukkan perbandingan kinerja runtime AFAPRA dengan Di masa mendatang, algoritme ini harus diuji menggunakan struktur
algoritma serupa lainnya. Waktu yang dibutuhkan untuk menjalankan operasi data yang lebih baik dan mekanisme subpaging yang selanjutnya dapat
pelacakan menggunakan algoritme AFAPRA lebih rendah daripada sebagian berkontribusi terhadap peningkatan kinerjanya.
besar algoritme lain kecuali untuk CCFLRU. Ini karena kondisi kompleks yang
disertakan dalam algoritme AFAPRA untuk menyimpan halaman yang dapat
sering diakses di dalam memori.

REFERENSI

[1] T. Johnson, D. Shasha, 2Q: Per-


KESIMPULAN formance Management Replacement Algorithm, Proceedings of the
20thVLDBConference (1994) 439–450
http://dx.doi.org/1-55860-153-8 doi: 1-55860-153-8.
Dalam makalah ini, algoritma penggantian buffer baru yang disebut AFAPRA
[2] H. Kim, M. Ryu, U. Ramachandran, H. Kim,
disajikan untuk meningkatkan kinerja memori fl ash. Buffer dibagi menjadi daftar
M. Ryu, U. Ramachandran, http://dl.acm.org/citation. cfm? doid =
bersih campuran dan dingin. Algoritme juga berisi daftar bayangan untuk
2254756.2254786, Apa skema penggantian cache buffer yang baik
mempertahankan riwayat halaman yang baru saja digusur. AFAPRA mencoba untuk penyimpanan abu seluler ?, ACM SIGMETRICS Performance
mengurangi jumlah penulisan dengan memberikan prioritas yang lebih tinggi ke Evaluation Review 40 (1) (2012) 235. http://dx.doi.org/10.1145/
halaman

3137
Jurnal Internasional Penelitian Teknik Terapan, ISSN 0973-4562 Volume 13, Nomor 5 (2018) hlm. 3128–3138
© Research India Publications, http://www.ripublication.com

2318857.2254786 doi: 10.1145 / 2318857.2254786. Teknologi Informasi, ICCSIT 2009, 2009, hlm. 185–
http://dl.acm.org/citation.cfm?doid=2254756.2254786 189. http://dx.doi.org/10.1109/ICCSIT.2009.5234967
[3] S.-y. Park, D. Jung, J.-u. Kang, J.-s. Kim, J. Lee, doi: 10.1109 / ICCSIT.2009.5234967.
http://portal.acm.org/citation.cfm?id=1176789CFLRU: [13] HZ, PJ, PY, LY, BPCLC: Efisien
algoritma pengganti untuk memori fl ash, Prosiding konferensi cientWriteBufferManagement Scheme for Flash-Based Solid State
internasional 2006 tentang Kompiler, arsitektur dan sintesis untuk Disk, Jurnal Internasional Teknologi Konten Digital dan Aplikasinya 4
sistem tertanam (2006) 234–241 (6) (2010) 123–133. http://dx.doi.org/10.4156/jdcta.vol4.issue6.15 doi:
http://dx.doi.org/10.1145/1176760.1176789 10.4156 / jdcta.vol4.issue6.15.
doi: 10.1145 / 1176760.1176789.
http://portal.acm.org/citation.cfm?id=1176789
[4] P. Jin, Y. Ou, T. Härder, Z. Li, AD-LRU: Efi-
algoritma penggantian buffer yang efisien untuk database berbasis fl
ash, Data and Knowledge Engineering 72 (2012) 83-102.
http://dx.doi.org/10.1016/j.datak.2011.09.007
doi: 10.1016 / j.datak.2011.09.007.
[5] Intel, Memahami Lapisan Terjemahan Flash (FTL)
Speci fi cation, Viewpoints (Desember 1998).
[6] H. Jung, H. Shim, S. Park, S. Kang, J. Cha, LRU-
WSR: Integrasi LRU dan penulisan urutan ulang urutan untuk memori
fl ash, IEEE Transactions on Consumer Electronics 54 (3) (2008)
1215–1223. http://dx.doi.org/10.1109/TCE.2008.4637609
doi:
10.1109 / TCE.2008.4637609.
[7] Z. Li, P. Jin, X. Su, K. Cui, L. Yue, CCF-LRU:
Algoritme penggantian buffer baru untuk memori fl ash, IEEE
Transactions on Consumer Electronics 55 (3) (2009) 1351–1359.
http://dx.doi.org/
10.1109 / TCE.2009.5277999 doi: 10.1109 / TCE.2009.
5277999.
[8] O. Kwon, H. Bahn, K. Koh, FARS: Penggantian halaman
Algoritma untuk sistem tertanam berbasis memori NAND fl ash,
dalam: 2008 IEEE 8 Konferensi Internasional Komputer dan
Teknologi Informasi, 2008, hlm. 218–223.
http://dx.doi.org/10.1109/CIT.2008.4594677
doi: 10.1109 / CIT.2008.4594677.
[9] X. Jin, S. Jung, YH Song, SEPL: Halaman yang digusur pintar
daftar buffer untuk sistem penyimpanan abu NAND, Prosiding
- Konferensi Internasional IEEE ke-10 tentang Komputer dan
Teknologi Informasi, CIT-2010, Konferensi Internasional IEEE ke-7
tentang Perangkat Lunak dan Sistem Tertanam, ICESS-2010,
ScalCom-2010 (Cit) (2010) 1687–1694.

http://dx.doi.org/10.1109/CIT.2010.297
doi: 10.1109 / CIT.2010.297.
[10] G. Xu, L. Ren, Y. Liu, Penggantian Halaman Sadar Flash
Algoritma 2014 (1).
[11] C. Li, D. Feng, Y. Hua, W. Xia, F. Wang, Gasa: A
Algoritme penggantian halaman baru untuk memori NAND 2016 ash,
Konferensi Internasional IEEE 2016 tentang Arsitektur dan
Penyimpanan Jaringan, NAS 2016 - Prosidinghttp:
//dx.doi.org/10.1109/NAS.2016.7549403
doi: 10.1109 / NAS. 2016.7549403.
[12] X. Su, P. Jin, X. Xiang, K. Cui, L. Yue, Flash-
DBSim: Alat simulasi untuk mengevaluasi algoritma database
berbasis ash, dalam: Proceedings - 2009 2nd IEEE International
Conference on Computer Science and

3138

Anda mungkin juga menyukai