Journal of ICT, Design, Engineering and Technological Science (JITDETS) VOL. 3, NO. 1, pp. 20-24, 2019 DOI: https://doi.org/10.33150/JITDETS-3.1.5 ORIGINAL CONTRIBUTION Acceleration of Storage Performance in Cloud Systems by Using NVRAM Jisun Kim 1 , Yunjoo Park 2 , Kyungwoon Cho 3 , Hyokyung Bahn 4* 1,2,3,4 Department of Computer Science & Engineering, Ewha W. University, Seoul, South Korea AbstractNon-Volatile Random Access Memory (NVRAM) is anticipated to be utilized as the performance accelerator of future cloud storage systems. This article aims to analyze how large performance improvement can be expected if we use NVRAM as the performance accelerator of legacy storage subsystems. Speciϐically, we try to ϐind the best employment of NVRAM with respect to storage performances. To do so, we quan- tify the hot storage area and replace it with NVRAM to obtain the best performances. Our analysis shows that the source of hot storage trafϐic is not limited to any single particular storage area, but it is different for application types executed. Speciϐically, journaling accesses dominate in database applications, while swapping accesses dominate in memory-intensive applications. In some applications such as video streaming, ϐile accesses dominate. Based on these ϐindings, we suggest the usage of NVRAM to maximize the performance improvement of cloud storage systems. Index Terms— NVRAM, Storage, Cloud System, Cloud Application, Storage Accelerator Received: 13 April 2019; Accepted: 26 May 2019; Published: 26 June 2019 © 2019 JITDETS. All rights reserved. I. INTRODUCTION With the rapid enhancement of NVRAM technologies like PRAM (phase-change random access memory) and STT-RAM (spin-transfer torque random access memory) [1, 2, 3, 4], it is expected that NVRAM will be used in the memory and storage hierarchies of future cloud servers [5, 6, 7]. In this article, we perform empirical analysis to see how much performance improvement can be expected if we supplement NVRAM as an additional component of cloud storage. Our goal is to optimize the us- age of NVRAM when it is added to existing storage subsystems. To this end, we ϐirst see the storage access characteristics of different types of ap- plications with respect to swapping accesses, journaling accesses, and ϐile accesses. Note that all storage accesses can be classiϐied into one of these 3 types of accesses. Because these 3 access types occur on separated storage areas, we can utilize NVRAM as a swapping area, a journaling area, or a ϐile system area. Due to the high cost of NVRAM, we need to decide which area of the storage subsystems will consist of NVRAM. The ϐirst observation of this article is that a bunch of storage ac- cesses do not happen in the same storage area, but it is different for ap- plication types executed. For example, journaling accesses dominate in database applications as transaction handling causes signiϐicant write op- erations to the journaling area in database systems. On the contrary, swapping accesses dominate in memory-intensive applications because the memory size is not sufϐicient to load the full workload of the appli- cation. For multimedia streaming applications, ϐile accesses dominate as these kinds of applications need signiϐicant ϐile accesses on multimedia data. Our second contribution is the investigation of expected perfor- mance improvement when we supplement NVRAM to different storage ar- eas. We observed that the largest improvement by using NVRAM does not happen if we use it as a ϐixed storage area but we can improve performance further by utilizing it adaptively for different kinds of applications. For ex- ample, for memory-intensive applications, we can obtain the best perfor- mance when we adopt NVRAM as a swapping area. On the contrary, for database applications, the best performance can be obtained by adopting NVRAM as a journaling area. For video streaming applications, adopting NVRAM as a ϐile system area leads to the best performances. * Corresponding author: Hyokyung Bahn Email: bahn@ewha.ac.kr