Journal of Signal Processing Systems

, Volume 72, Issue 3, pp 165–180 | Cite as

Eco-Storage: A Hybrid Storage System with Energy-Efficient Informed Prefetching

  • Maen M. Al Assaf
  • Xunfei Jiang
  • Mohamed Riduan Abid
  • Xiao Qin


In this paper, we present an energy-aware informed prefetching technique called Eco-Storage that makes use of the application-disclosed access patterns to group the informed prefetching process in a hybrid storage system (e.g., hard disk drive and solid state disks). Since the SSDs are more energy efficient than HDDs, aggressive prefetching for the data in the HDD level enables it to have as much standby time as possible in order to save power. In the Eco-Storage system, the application can still read its on-demand I/O reading requests from the hybrid storage system while the data blocks are prefetched in groups from HDD to SSD. We show that these two steps can be handled in parallel to decreases the system’s power consumption. Our Eco-Storage technique differs from existing energy-aware prefetching schemes in two ways. First, Eco-Storage is implemented in a hybrid storage system where the SDD level is more energy efficient. Second, it can group the informed prefetching process and quickly prefetch the data from the HDD to the SSD to increase the frequent HDD standby times. This will makes the application finds most of its on-demand I/O reading requests in the SSD level. Finally, we develop a simulator to evaluate our Eco-Storage system performance. Our results show that our Eco-Storage reduces the power consumption by at least 75 % when compared with the worst case of non-Eco-Storage case using a real-world I/O trace.


Informed prefetching Power consumption Parallel storage systems Hybrid storage system 



This work was discussed with my colleagues in Dr. Xiao Qin’s research group. I really thank them very much.


  1. 1.
    Al Assaf, M. M. Informed prefetching in distributed multi-level storage systems,
  2. 2.
    Al Assaf, M. M., Al Ghamadi, M., Jiang, X., Zhang, J., Qin, X. (2012). A pipelining approach to informed prefetching in distributed multi-level storage systems. 11th IEEE International Symposium on Network Computing and Applications (NCA). Cambridge.Google Scholar
  3. 3.
    Patterson, R. H., Gibson, G., Stodolsky, D., Zelenka, J. (1995). Informed prefetching and caching. In Proceedings of the 15th ACM symposium on operating system principles (pp. 79–95). CO.Google Scholar
  4. 4.
    Griffioen, J., & Appleton, R. (1994). Reducing file system latency using a predictive approach. In Proceedings of the 1994 USENIX annual technical conference (pp. 197–207). Berkeley.Google Scholar
  5. 5.
    Zhang, Z., Lee, K., Ma, X., Zhou, Y. (2008). PFC: Transparent optimization of existing prefetching strategies for multi-level storage systems. In Proceedings of 28th international conference on distributed computing system (pp. 740–751). Beijing.Google Scholar
  6. 6.
    Huizinga, M., & Desai, D. S. (2000). Implementation of informed prefetching and caching in linux. In Proceedings of the international conference on information technology (pp. 443–448). Las Vegas.Google Scholar
  7. 7.
    Patterson, R. H., Garth, A., Gibson, M. (1993). Satyanarayanan: a status report on research in transparent informed prefetching. ACM SIGOPS Operating Systems Review, 27(2), 21–34.CrossRefGoogle Scholar
  8. 8.
    Tomkins, A., Patterson, R. H., Gibson, G. (1997). Informed multi-process prefetching and caching. In Proceedings of the 1997 ACM SIGMETRICS international conference on measurement and modeling of computer systems (pp. 100–114). Seattle.Google Scholar
  9. 9.
    Chang, F., & Gibson, G. A. (February 1999). Automatic I/O hint generation through speculative execution. Proceedings of the third symposium on operating systems design and implementation (pp. 1–14). New Orleans.Google Scholar
  10. 10.
    Patterson, R. H., Gibson, G. A., Satyanarayanan, M. (1992). Using transparent informed prefetching (TIP) to reduce file read latency. In Proceedings of conference on mass storage systems and technologie (pp. 329–342). Greenbelt.Google Scholar
  11. 11.
    Jason, F. (2002). Multi-level memory prefetching for media and stream processing. In IEEE international conference on multimedia and expo (pp. 101–104). St. Louis.Google Scholar
  12. 12.
    Kang, J., & Sung, W. (2001). A multi-level block priority based instruction caching scheme for multimedia processors. In Proceedings of the 24th international conference on distributed computer systems (pp. 125–132). Antwerp.Google Scholar
  13. 13.
    Nijim, M. (2010). Modelling speculative prefetching for hybrid storage systems. In 2010 IEEE fifth international conference on networking, architecture and storage (NAS) (pp. 143–151). Macau.Google Scholar
  14. 14.
    Nijim, M., Zong, Z., Qin, X., Nijim, Y. Multi-layer prefetching for hybrid storage systems: Algorithms, models, and evaluations. In 2010 39th international conference on parallel processing workshops.Google Scholar
  15. 15.
    Kimbrel, T., Cao, P., Felten, E., Karlin, A., Li, K. (1996). Integrated parallel prefetching and caching. Proceedings of the 1996 ACM SIGMETRICS international conference on measurement and modeling of computer systems (pp. 262–263). PA.Google Scholar
  16. 16.
    Patterson, R. H., & Gibson, G. (1994). Exposing I/O concurrency with informed prefetching. Proceedings of the third international conference on on Parallel and distributed information systems (pp. 7–16). Austin.Google Scholar
  17. 17.
    Chen, Y., Byna, S., Sun, X., Thakur, R., Gropp, W. (2008). Exploring parallel I/O concurrency with speculative prefetching. Proceedings of the 2008 37th international conference on parallel processing (pp. 422–429). Portland.Google Scholar
  18. 18.
    Lewis, J., Alghamdi, M. I., Assaf, M. A., Ruan, X. -J., Ding, Z. -Y., Qin, X. (2010). An automatic prefetching and caching system. In Proceedings of the 29th international performance computing and communications conference (IPCCC).Google Scholar
  19. 19.
    Chen, Y., Byna, S., Sun, X., Thakur, R., Gropp, W. (2008). Hiding I/O latency with pre-execution prefetching for parallel applications. Proceedings of the 2008 ACM/IEEE conference on Supercomputing (pp. 1–10). Austin.Google Scholar
  20. 20.
    Byna, S., Chen, Y., Sun, X. -H., Thakur, R., Gropp, W. (2008 November 15). Parallel I/O prefetching using MPI file caching and I/O signatures. Proceedings of the 2008 ACM/IEEE conference on Supercomputing. Austin.Google Scholar
  21. 21.
    Borthakur, D. (2008). HDFS architecture. The Apache Software Foundation.
  22. 22.
    Shafer, J., Rixner, S., Cox, A. L. (March 2010). The Hadoop distributed filesystem: balancing portability and performance. IEEE International Symposium on Performance Analysis of Systems & Software (ISPASS) (pp. 122–133). White Plains.Google Scholar
  23. 23.
    Hughes G., & Murray J. (2005) Reliability and security of RAID storage systems and D2D archives using SATA disk drives. ACM Transactions on Storage, 1(1), 95–107.CrossRefGoogle Scholar
  24. 24.
    Ganger, G. R., Worthington, B. L., Hou, R. Y., Patt, Y. N. (1994). Disk arrays: high-performance, high-reliability storage subsystems. Computer, 27, 30–36. doi: 10.1109/2.268882. ISSN:0018-9162. Ann Arbor.CrossRefGoogle Scholar
  25. 25.
    Mishra, S. K., & Mohapatra, P. (1996). Performance study of RAID-5 disk arrays with data and parity cache. Proceedings of 1996 international conference on parallel processing (pp. 222–229). Ithaca.Google Scholar
  26. 26.
    Baek, S.H., et al. (2001). Reliability and performance of hierarchical RAID with multiple controllers. Proceedings of twentieth annual ACM symposium on principles of distributed computing (pp. 246–254).Google Scholar
  27. 27.
    Meador, W. (1989). Disk array systems. Proceedings of COMPCON Spring ’89. Thirty-Fourth IEEE Computer Society International Conference, pp. 143–146. San Francisco, CA, USA.Google Scholar
  28. 28.
    Hou, R., Menon, J., Patt, Y. (1993). Balancing I/O response time and disk rebuild time in a RAID5 disk array. Proceedings of on systems sciences (pp. 70–79).Google Scholar
  29. 29.
    Drapeau, A., & Katz, R. (1993). Striped tape arrays. In Proceedings of 12th IEEE symposium on mass storage systems.Google Scholar
  30. 30.
    Yang, C. K., Mitra, T., Chiueh, T. (2002). A decoupled architecture for application-specific file prefetching. In Freenix track of USENIX 2002 annual conference.Google Scholar
  31. 31.
    Tuma, W. (2008). Comparison of drive technologies for high transaction databases. Storage developer conference. Santa Clara.
  32. 32.
    Kaneko, T. (1974). Optimal task switching policy for a multilevel storage system. IBM Journal of Research and Development, 18(4), 310–315.zbMATHCrossRefGoogle Scholar
  33. 33.
  34. 34.
    Papathanasiou, A.E., & Scott, M.L. (June 27–July 02 2004). Energy efficient prefetching and caching. Proceedings of the annual conference on USENIX annual technical conference (pp.22–22). Boston.Google Scholar
  35. 35.
    Manzanares, A., Qin, X., Ruan, X., Yin, S. (2011). PREBUD: prefetching for energy-efficient parallel I/O systems with buffer disks. ACM Transactions on Storage (TOS), 7(1), 1–29. doi: 10.1145/1970343.1970346.CrossRefGoogle Scholar
  36. 36.
  37. 37.
  38. 38.
    Western Digital HDD vendor specifications’ document.
  39. 39.
  40. 40.
    OCZ Technology Group, Inc SSD vs HDD comparison.

Copyright information

© Springer Science+Business Media New York 2013

Authors and Affiliations

  • Maen M. Al Assaf
    • 1
  • Xunfei Jiang
    • 2
  • Mohamed Riduan Abid
    • 3
  • Xiao Qin
    • 2
  1. 1.King Abdullah II School for Information TechnologyThe University of JordanAmmanJordan
  2. 2.Department of Computer Science and Software EngineeringAuburn UniversityAuburnUSA
  3. 3.Alakhawayn University in IfraneIfraneMorocco

Personalised recommendations