Abstract
The internal nature of flash memory technology, makes its performance highly dependent on workload characteristics causing poor performance on random writes. To solve this, Demand-based Flash Translation Layer (DFTL) which selectively caches page-level address mappings, was proposed. DFTL exploits temporal locality in workloads and when low, high cache miss rates are experienced. In this paper, we propose a replication based DFTL, called RFTL, which aims at minimizing the overhead caused by miss penalty from the cached mapping table in SRAM. We developed an analytical model for studying the range of performance for RFTL. We extended EagleTree simulator to implement RFTL. Our experimental evaluation with synthetic workloads endorses the utility of RFTL showing improved performance over DFTL especially for read-dominant workloads. With 80% read dominant workload, RFTL’s cumulative distribution function shows a 20% improvement and under 80% write dominant workload, it outperforms DFTL by 10% on I/O throughput.
Similar content being viewed by others
References
Schroeder, B., Lagisetty, R., Merchant, A.: Flash reliability in production: the expected and the unexpected. In: 14th USENIX Conference on File and Storage Technologies (FAST 16), pp. 67–80. USENIX Association, Santa Clara (2016). http://usenix.org/conference/fast16/technical-sessions/presentation/schroeder
Chang, Y.-H., Kuo, T.-W.: A management strategy for the reliability and performance improvement of mlc-based flash-memory storage systems. IEEE Trans. Comput. 60, 305–320 (2010)
Lee, J., Kim, Y., Shipman, G.M., Oral, S., Kim, J.: Preemptible I/O scheduling of garbage collection for solid state drives. In: IEEE Transaction on CAD of Integrated Circuits and Systems, vol. 32, no. 2, pp. 247–260 (2013). http://dx.doi.org/10.1109/TCAD.2012.2227479
Gupta, A., Kim, Y., Urgaonkar, B.: DFTL: a flash translation layer employing demand-based selective caching of page-level address mappings. In: Proceedings of the 14th International Conference on Architectural Support for Programming Languages and Operating Systems, ser. ASPLOS XIV, pp. 229–240 (2009)
Ma, D., Feng, J., Li, G.: Lazyftl: a page-level flash translation layer optimized for nand flash memory. In: Proceedings of the 2011 ACM SIGMOD International Conference on Management of Data, ser. SIGMOD ’11, pp. 1–12. ACM, New York (2011). http://doi.acm.org/10.1145/1989323.1989325
Dayan, N., Svendsen, M.K., Bjørling, M., Bonnet, P., Bouganim, L.: Eagletree: exploring the design space of SSD-based algorithms. In: Proceedings of VLDB Endowment, vol. 6, no. 12, pp. 1290–1293 (2013). http://dx.doi.org/10.14778/2536274.2536298
Kim, Y., Gupta, A., Urgaonkar, B.: A temporal locality-aware page-mapped flash translation layer. J. Comput. Sci. Technol. 28(6), 1025–1044 (2013)
Agrawal, N., Prabhakaran, V., Wobber, T., Davis, J.D., Manasse, M.S., Panigrahy, R.: Design tradeoffs for SSD performance. In: Proceedings of 2008 USENIX Annual Technical Conference, Boston, MA, USA, June 22-27, pp. 57–70 (2008). http://www.usenix.org/events/usenix08/tech/fullpapers/agrawal/agrawal.pdf
Chen, F., Koufaty, D.A., Zhang, X.: Understanding intrinsic characteristics and system implications of flash memory based solid state drives. In: Proceedings of the Eleventh International Joint Conference on Measurement and Modeling of Computer Systems, ser. SIGMETRICS ’09, pp. 181–192. ACM, New York (2009). http://doi.acm.org/10.1145/1555349.1555371
Park, S.Y., Seo, E., Shin, J.Y., Maeng, S., Lee, J.: Exploiting internal parallelism of flash-based SSDs. IEEE Comput. Archit. Lett. 9, 9–12 (2010)
Jung, M., Kandemir, M.: Revisiting widely held SSD expectations and rethinking system-level implications. In: Proceedings of the ACM SIGMETRICS/International Conference on Measurement and Modeling of Computer Systems, ser. SIGMETRICS ’13, pp. 203–216. ACM, New York (2013). http://doi.acm.org/10.1145/2465529.2465548
Park, S.-H., Ha, S.-H., Bang, K., Chung, E.-Y.: Design and analysis of flash translation layers for multi-channel nand flash-based storage devices. IEEE Trans. Consum. Electron. 55(3), 1392–1400 (2009)
Mativenga, R., Paik, J., Lee, J., Chung, T., Kim, Y.: Minimizing CMT miss penalty in selective page-level address mapping table. In: 2016 IEEE International Conference on Cluster Computing, CLUSTER 2016, Taipei, Taiwan, September 12-16, pp. 152–153 (2016). http://dx.doi.org/10.1109/CLUSTER.2016.81
Kawaguchi, A., Nishioka, S., Motoda, H.: A flash-memory based file system. In: Proceedings of the USENIX 1995 Technical Conference Proceedings, ser. TCON’95, pp. 13–13. USENIX Association, Berkeley (1995)
Karedla, R., Love, J.S., Wherry, B.G.: Caching strategies to improve disk system performance. IEEE Comput. 27(3), 38–46 (1994)
He, B., Yu, J.X., Zhou, A.C.: Improving update-intensive workloads on flash disks through exploiting multi-chip parallelism. IEEE Trans. Parallel Distrib. Syst. 26(1), 152–162 (2015)
Lee, J., Kim, Y., Shipman, G.M., Oral, S., Wang,F., Kim, J.: A semi-preemptive garbage collector for solid state drives. In: ISPASS, pp. 12–21. IEEE Computer Society, Washington, DC (2011). http://dblp.uni-trier.de/db/conf/ispass/ispass2011.html#LeeKSOWK11
Mao, B., Wu, S.: Exploiting request characteristics and internal parallelism to improve SSD performance. In: 2015 33rd IEEE International Conference on Computer Design (ICCD), vol. 00, pp. 447–450 (2015)
Acknowledgements
This work was supported by the National Research Foundation of Korea (NRF) grant funded by the Korea government (MSIT) (No. NRF-2015R1C1A1A01052105).
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Mativenga, R., Paik, JY., Kim, Y. et al. RFTL: improving performance of selective caching-based page-level FTL through replication. Cluster Comput 22, 25–41 (2019). https://doi.org/10.1007/s10586-018-2824-5
Received:
Revised:
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10586-018-2824-5