Skip to main content

Predicting Performance of Non-contiguous I/O with Machine Learning

  • Conference paper
  • First Online:
High Performance Computing (ISC High Performance 2015)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 9137))

Included in the following conference series:

Abstract

Data sieving in ROMIO promises to optimize individual non-contiguous I/O. However, making the right choice and parameterizing its buffer size accordingly are non-trivial tasks, since predicting the resulting performance is difficult. Since many performance factors are not taken into account by data sieving, extracting the optimal performance for a given access pattern and system is often not possible. Additionally, in Lustre, settings such as the stripe size and number of servers are tunable, yet again, identifying rules for the data-centre proves challenging indeed.

In this paper, we (1) discuss limitations of data sieving, (2) apply machine learning techniques to build a performance predictor, and (3) learn and extract best practices for the settings from the data. We used decision trees as these models can capture non-linear behavior, are easy to understand and allow for extraction of the rules used. Even though this initial research is based on decision trees, with sparse training data, the algorithm can predict many cases sufficiently. Compared to a standard setting, the decision trees created are able to improve performance significantly and we can derive expert knowledge by extracting rules from the learned tree. Applying the scheme to a set of experimental data improved the average throughput by 25–50 % of the best parametrization’s gain. Additionally, we demonstrate the versatility of this approach by applying it to the porting system of DKRZ’s next generation supercomputer and discuss achievable performance gains.

We want to express our gratitude to the “Deutsches Zentrum für Luft- und Raumfahrt e.V.” as responsible project agency and to the “Bundesministerium für Bildung und Forschung” for the financial support under grant 01 IH 11008 A-C.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    Experimental data is taken from Schmidtke’s thesis [15].

  2. 2.

    Note that for a tree of depth one, 80 choices are made for which no measurement is available; these values are excluded from the calculation of the average performance. For bigger trees, less than a handful of choices are not quantifiable. Therefore, we believe this comparison to be fair.

References

  1. Thakur, R., Gropp, W., Lusk, E.: Data sieving and collective I/O in ROMIO. In: FRONTIERS 1999: Proceedings of the The 7th Symposium on the Frontiers of Massively Parallel Computation, p. 182. IEEE Computer Society, Washington, DC (1999)

    Google Scholar 

  2. Ching, A., Choudhary, A., Coloma, K., Liao, W.K., Ross, R., Gropp, W.: Noncontiguous I/O accesses through MPI-IO. In: Proceedings of the 3rd International Symposium on Cluster Computing and the Grid, CCGRID, p. 104. IEEE Computer Society, Washington, DC (2003)

    Google Scholar 

  3. Singh, D.E., Isaila, F., Calderon, A., Garcia, F., Carretero, J.: Multiple-phase collective I/O technique for improving data access locality. In: Proceedings of the 15th Euromicro International Conference on Parallel, Distributed and Network-Based Processing, PDP, pp. 534–542. IEEE Computer Society, Washington, DC (2007)

    Google Scholar 

  4. Singh, D.E., Isaila, F., Pichel, J.C., Carretero, J.: A collective I/O implementation based on inspector-executor paradigm. J. Supercomputing 47(1), 53–75 (2009)

    Article  Google Scholar 

  5. Zhang, X., Ou, J., Davis, K., Jiang, S.: Orthrus: a framework for implementing efficient collective I/O in multi-core clusters. In: Kunkel, J.M., Ludwig, T., Meuer, H.W. (eds.) ISC 2014. LNCS, vol. 8488, pp. 348–364. Springer, Heidelberg (2014)

    Google Scholar 

  6. Knüpfer, A., Brunst, H., Doleschal, J., Jurenz, M., Lieber, M., Mickler, H., Müller, M.S., Nagel, W.E.: The vampir performance analysis tool-set. In: Resch, M., Keller, R., Himmler, V., Krammer, B., Schulz, A. (eds.) Tools for High Performance Computing, Proceedings of the 2nd International Workshop on Parallel Tools, pp. 139–155. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  7. Argonne National Laboratory: Darshan. http://www.mcs.anl.gov/project/darshan-hpc-io-characterization-tool

  8. Madhyastha, T., Reed, D.: Learning to classify parallel Input/Output access patterns. IEEE Trans. Parallel Distrib. Syst. 13(8), 802–813 (2002)

    Article  Google Scholar 

  9. Barham, P., Donnelly, A., Isaacs, R., Mortier, R.: Using magpie for request extraction and workload modelling. In: Proceedings of the 6th Symposium on Opearting Systems Design and Implementation, vol. 6, pp. 259–272 (2004)

    Google Scholar 

  10. Barham, P., Isaacs, R., Mortier, R., Narayanan, D.: Magpie: online modelling and performance-aware systems. In: Proceedings of the 9th Conference on Hot Topics in Operating Systems, vol. 9 (2003)

    Google Scholar 

  11. Isaacs, R., Barham, P., Bulpin, J., Mortier, R., Narayanan, D.: Request extraction in magpie: events, schemas and temporal joins. In: Proceedings of the 11th Workshop on ACM SIGOPS European Workshop, EW11. ACM, New York (2004)

    Google Scholar 

  12. Behzad, B., Huchette, J., Luu, H.V.T., Aydt, R., Byna, S., Yao, Y., Koziol, Q.: Prabhat: a framework for auto-tuning hdf5 applications. In: Proceedings of the 22nd International Symposium on High-Performance Parallel and Distributed Computing, HPDC 2013, pp. 127–128. ACM, New York (2013)

    Google Scholar 

  13. Kunkel, J.M., Zimmer, M., Hübbe, N., Aguilera, A., Mickler, H., Wang, X., Chut, A., Bönisch, T., Lüttgau, J., Michel, R., Weging, J.: The SIOX architecture – coupling automatic monitoring and optimization of parallel I/O. In: Kunkel, J.M., Ludwig, T., Meuer, H.W. (eds.) ISC 2014. LNCS, vol. 8488, pp. 245–260. Springer, Heidelberg (2014)

    Google Scholar 

  14. Zimmer, M., Kunkel, J.M., Ludwig, T.: Towards self-optimization in HPC I/O. In: Kunkel, J.M., Ludwig, T., Meuer, H.W. (eds.) ISC 2013. LNCS, vol. 7905, pp. 422–434. Springer, Heidelberg (2013)

    Chapter  Google Scholar 

  15. Schmidtke, D.: Analyse und Optimierung von nicht-zusammenhängende Ein-/Ausgabe in MPI, April 2014

    Google Scholar 

  16. Breiman, L., Friedman, J.H., Olshen, R.A., Stone, C.J.: Classification and Regression Trees. Wadsworth & Brooks, Pacific Grove (1984)

    MATH  Google Scholar 

  17. Igel, C., Heidrich-Meisner, V., Glasmachers, T.: Shark. J. Mach. Learn. Res. 9, 993–996 (2008)

    MATH  Google Scholar 

  18. Breiman, L.: Random forests. Mach. Learn. 45(1), 5–32 (2001)

    Article  MATH  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Julian Kunkel .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2015 Springer International Publishing Switzerland

About this paper

Cite this paper

Kunkel, J., Zimmer, M., Betke, E. (2015). Predicting Performance of Non-contiguous I/O with Machine Learning. In: Kunkel, J., Ludwig, T. (eds) High Performance Computing. ISC High Performance 2015. Lecture Notes in Computer Science(), vol 9137. Springer, Cham. https://doi.org/10.1007/978-3-319-20119-1_19

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-20119-1_19

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-20118-4

  • Online ISBN: 978-3-319-20119-1

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics