Skip to main content
Top

2019 | OriginalPaper | Chapter

Spindle: A Write-Optimized NVM Cache for Journaling File System

Authors : Ge Yan, Kaixin Huang, Linpeng Huang

Published in: Network and Parallel Computing

Publisher: Springer International Publishing

Activate our intelligent search to find suitable subject content or patents.

search-config
loading …

Abstract

Journaling techniques are widely employed in modern file systems to guarantee crash consistency. However, journaling usually leads to system performance decrease due to the frequent storage accesses it entails. Architects can utilize emerging non-volatile memory (NVM) as a persistent cache or journaling device to reduce the storage accesses of journaling file systems. Yet problems such as double writes, metadata write amplification and heavy transaction ordering overhead still exist in current solutions. Therefore, we propose Spindle, a write-optimized NVM cache to address these challenges. Spindle decouples data and metadata accesses by processing data in DRAM while pinning metadata in NVM. With redesigned metadata log and state switch mechanism, Spindle eliminates double writes and relieves metadata write amplification. Moreover, Spindle adopts a lightweight transaction scheme to guarantee crash consistency and reduce transaction ordering overhead. Experimental results reveal that Spindle achieves up to \(47\%\) throughput improvement compared with state-of-the-art design.

Dont have a licence yet? Then find out more about our products and how to get one now:

Springer Professional "Wirtschaft+Technik"

Online-Abonnement

Mit Springer Professional "Wirtschaft+Technik" erhalten Sie Zugriff auf:

  • über 102.000 Bücher
  • über 537 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Maschinenbau + Werkstoffe
  • Versicherung + Risiko

Jetzt Wissensvorsprung sichern!

Springer Professional "Technik"

Online-Abonnement

Mit Springer Professional "Technik" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 390 Zeitschriften

aus folgenden Fachgebieten:

  • Automobil + Motoren
  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Elektrotechnik + Elektronik
  • Energie + Nachhaltigkeit
  • Maschinenbau + Werkstoffe




 

Jetzt Wissensvorsprung sichern!

Springer Professional "Wirtschaft"

Online-Abonnement

Mit Springer Professional "Wirtschaft" erhalten Sie Zugriff auf:

  • über 67.000 Bücher
  • über 340 Zeitschriften

aus folgenden Fachgebieten:

  • Bauwesen + Immobilien
  • Business IT + Informatik
  • Finance + Banking
  • Management + Führung
  • Marketing + Vertrieb
  • Versicherung + Risiko




Jetzt Wissensvorsprung sichern!

Footnotes
1
The memory hierarchy looks like a spindle with the data cache and the metadata cache interposed between DRAM and the disk.
 
Literature
2.
go back to reference Condit, J., et al.: Better I/O through byte-addressable, persistent memory. In: Proceedings of the ACM SIGOPS 22nd Symposium on Operating Systems Principles, pp. 133–146. ACM (2009) Condit, J., et al.: Better I/O through byte-addressable, persistent memory. In: Proceedings of the ACM SIGOPS 22nd Symposium on Operating Systems Principles, pp. 133–146. ACM (2009)
3.
go back to reference Dadmal, U.D., Vinkare, R.S., Kaushik, P., Mishra, S.: 3D X point technology. Int. J. Electron. Commun. Soft Comput. Sci. Eng. (IJECSCSE) 13–17 (2017) Dadmal, U.D., Vinkare, R.S., Kaushik, P., Mishra, S.: 3D X point technology. Int. J. Electron. Commun. Soft Comput. Sci. Eng. (IJECSCSE) 13–17 (2017)
4.
go back to reference Dulloor, S.R., et al.: System software for persistent memory. In: Proceedings of the Ninth European Conference on Computer Systems, p. 15. ACM (2014) Dulloor, S.R., et al.: System software for persistent memory. In: Proceedings of the Ninth European Conference on Computer Systems, p. 15. ACM (2014)
5.
go back to reference Hwang, D., Kim, W.H., Won, Y., Nam, B.: Endurable transient inconsistency in byte-addressable persistent B+-TREE. In: FAST, pp. 187–200 (2018) Hwang, D., Kim, W.H., Won, Y., Nam, B.: Endurable transient inconsistency in byte-addressable persistent B+-TREE. In: FAST, pp. 187–200 (2018)
6.
go back to reference Lee, E., Bahn, H., Noh, S.H.: Unioning of the buffer cache and journaling layers with non-volatile memory. In: FAST, pp. 73–80 (2013) Lee, E., Bahn, H., Noh, S.H.: Unioning of the buffer cache and journaling layers with non-volatile memory. In: FAST, pp. 73–80 (2013)
7.
go back to reference Lee, E., Kang, H., Bahn, H., Shin, K.G.: Eliminating periodic flush overhead of file I/O with non-volatile buffer cache. IEEE Trans. Comput. 65(4), 1145–1157 (2016)MathSciNetCrossRef Lee, E., Kang, H., Bahn, H., Shin, K.G.: Eliminating periodic flush overhead of file I/O with non-volatile buffer cache. IEEE Trans. Comput. 65(4), 1145–1157 (2016)MathSciNetCrossRef
8.
go back to reference Lee, S.K., Lim, K.H., Song, H., Nam, B., Noh, S.H.: WORT: write optimal radix tree for persistent memory storage systems. In: FAST, pp. 257–270 (2017) Lee, S.K., Lim, K.H., Song, H., Nam, B., Noh, S.H.: WORT: write optimal radix tree for persistent memory storage systems. In: FAST, pp. 257–270 (2017)
9.
go back to reference Li, C., Shilane, P., Douglis, F., Shim, H., Smaldone, S., Wallace, G.: Nitro: a capacity-optimized SSD cache for primary storage. In: ATC, pp. 501–512 (2014) Li, C., Shilane, P., Douglis, F., Shim, H., Smaldone, S., Wallace, G.: Nitro: a capacity-optimized SSD cache for primary storage. In: ATC, pp. 501–512 (2014)
10.
go back to reference Lu, Y., Shu, J., Guo, J., Li, S., Mutlu, O.: LightTX: a lightweight transactional design in flash-based SSDs to support flexible transactions. In: 2013 IEEE 31st International Conference on Computer Design (ICCD), pp. 115–122. IEEE (2013) Lu, Y., Shu, J., Guo, J., Li, S., Mutlu, O.: LightTX: a lightweight transactional design in flash-based SSDs to support flexible transactions. In: 2013 IEEE 31st International Conference on Computer Design (ICCD), pp. 115–122. IEEE (2013)
11.
go back to reference Mathur, A., Cao, M., Bhattacharya, S., Dilger, A., Tomas, A., Vivier, L.: The new ext4 filesystem: current status and future plans. In: Proceedings of the Linux symposium, vol. 2, pp. 21–33 (2007) Mathur, A., Cao, M., Bhattacharya, S., Dilger, A., Tomas, A., Vivier, L.: The new ext4 filesystem: current status and future plans. In: Proceedings of the Linux symposium, vol. 2, pp. 21–33 (2007)
12.
go back to reference Pelley, S., Chen, P.M., Wenisch, T.F.: Memory persistency. In: ACM SIGARCH Computer Architecture News, vol. 42, pp. 265–276. IEEE Press (2014) Pelley, S., Chen, P.M., Wenisch, T.F.: Memory persistency. In: ACM SIGARCH Computer Architecture News, vol. 42, pp. 265–276. IEEE Press (2014)
13.
go back to reference Prabhakaran, V., Rodeheffer, T.L., Zhou, L.: Transactional flash. In: OSDI, vol. 8 (2008) Prabhakaran, V., Rodeheffer, T.L., Zhou, L.: Transactional flash. In: OSDI, vol. 8 (2008)
14.
go back to reference Sun, Z., et al.: Multi retention level STT-RAM cache designs with a dynamic refresh scheme. In: Proceedings of the 44th Annual IEEE/ACM International Symposium on Microarchitecture, pp. 329–338. ACM (2011) Sun, Z., et al.: Multi retention level STT-RAM cache designs with a dynamic refresh scheme. In: Proceedings of the 44th Annual IEEE/ACM International Symposium on Microarchitecture, pp. 329–338. ACM (2011)
15.
go back to reference Wei, Q., Wang, C., Chen, C., Yang, Y., Yang, J., Xue, M.: Transactional NVM cache with high performance and crash consistency. In: Proceedings of the International Conference for High Performance Computing, Networking, Storage and Analysis, p. 56. ACM (2017) Wei, Q., Wang, C., Chen, C., Yang, Y., Yang, J., Xue, M.: Transactional NVM cache with high performance and crash consistency. In: Proceedings of the International Conference for High Performance Computing, Networking, Storage and Analysis, p. 56. ACM (2017)
16.
go back to reference Wu, X., Reddy, A.: Scmfs: a file system for storage class memory. In: Proceedings of 2011 International Conference for High Performance Computing, Networking, Storage and Analysis, p. 39. ACM (2011) Wu, X., Reddy, A.: Scmfs: a file system for storage class memory. In: Proceedings of 2011 International Conference for High Performance Computing, Networking, Storage and Analysis, p. 39. ACM (2011)
17.
go back to reference Xu, C., Niu, D., Muralimanohar, N., Jouppi, N.P., Xie, Y.: Understanding the trade-offs in multi-level cell reram memory design. In: 2013 50th ACM/EDAC/IEEE Design Automation Conference (DAC), pp. 1–6. IEEE (2013) Xu, C., Niu, D., Muralimanohar, N., Jouppi, N.P., Xie, Y.: Understanding the trade-offs in multi-level cell reram memory design. In: 2013 50th ACM/EDAC/IEEE Design Automation Conference (DAC), pp. 1–6. IEEE (2013)
18.
go back to reference Xu, J., Swanson, S.: NOVA: a log-structured file system for hybrid volatile/non-volatile main memories. In: FAST, pp. 323–338 (2016) Xu, J., Swanson, S.: NOVA: a log-structured file system for hybrid volatile/non-volatile main memories. In: FAST, pp. 323–338 (2016)
19.
go back to reference Yoon, D.H., Chang, J., Schreiber, R.S., Jouppi, N.P.: Practical nonvolatile multilevel-cell phase change memory. In: Proceedings of the International Conference on High Performance Computing, Networking, Storage and Analysis, p. 21. ACM (2013) Yoon, D.H., Chang, J., Schreiber, R.S., Jouppi, N.P.: Practical nonvolatile multilevel-cell phase change memory. In: Proceedings of the International Conference on High Performance Computing, Networking, Storage and Analysis, p. 21. ACM (2013)
20.
go back to reference Zheng, S., Huang, L., Liu, H., Wu, L., Zha, J.: HMVFS: a hybrid memory versioning file system. In: 2016 32nd Symposium on Mass Storage Systems and Technologies (MSST), pp. 1–14. IEEE (2016) Zheng, S., Huang, L., Liu, H., Wu, L., Zha, J.: HMVFS: a hybrid memory versioning file system. In: 2016 32nd Symposium on Mass Storage Systems and Technologies (MSST), pp. 1–14. IEEE (2016)
Metadata
Title
Spindle: A Write-Optimized NVM Cache for Journaling File System
Authors
Ge Yan
Kaixin Huang
Linpeng Huang
Copyright Year
2019
DOI
https://doi.org/10.1007/978-3-030-30709-7_20

Premium Partner