Advertisement

Toward Performance Prediction for Multi-BSP Programs in ML

  • Victor Allombert
  • Frédéric Gava
  • Julien Tesson
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 11336)

Abstract

bsml and multi-ml are functional parallel programming languages “à la ml ” based of the respectively the bsp and multi-bsp bridging models. multi-bsp extends bsp to take into account hierarchical architectures. For both models, it is possible to predict the performances of algorithms thanks to embedded cost models. To do so, we propose formal operational semantics with cost annotations for the two aforementioned languages. This work has been done in a incremental manner. First we recall the cost semantics of core-ml language. Then, we adapt it to bsml and then to multi-ml. It is then possible to evaluate the cost of a program following the annotated semantics. Finally, we compare the theoretical approach with the current implementation on a code example.

Keywords

Semantics bsp bsmlmulti-bsp Cost Time prediction 

References

  1. 1.
    Allombert, V.: Functional Abstraction for Programming Multi-Level Architectures: Formalisation and Implementation. Ph.D. thesis, UPEC (2017)Google Scholar
  2. 2.
    Allombert, V., Gava, F., Tesson, J.: Multi-ML: programming multi-BSP algorithms in ML. J. Parallel Prog. 45(2), 20 (2017)Google Scholar
  3. 3.
    Bisseling, R.H.: Parallel Scientic Computation: A Structured Approach Using BSP and MPI. Oxford University Press, Oxford (2004)CrossRefGoogle Scholar
  4. 4.
    Cha, H., Lee, D.: H-BSP: a hierarchical BSP computation model. J. Supercomput. 18(2), 179–200 (2001)CrossRefGoogle Scholar
  5. 5.
    Culler, D., et al.: LogP: towards a realistic model of parallel computation. In: Principles and Practice of Parallel Programming, pp. 1–12. ACM (1993)Google Scholar
  6. 6.
    Dean, J., Ghemawat, S.: MapReduce: simplified data processing on large clusters. Commun. ACM 51(1), 107–113 (2008)CrossRefGoogle Scholar
  7. 7.
    Gava, F.: BSP functional programming: examples of a cost based methodology. In: Bubak, M., van Albada, G.D., Dongarra, J., Sloot, P.M.A. (eds.) ICCS 2008. LNCS, vol. 5101, pp. 375–385. Springer, Heidelberg (2008).  https://doi.org/10.1007/978-3-540-69384-0_43CrossRefGoogle Scholar
  8. 8.
    Gesbert, L., Gava, F., Loulergue, F., Dabrowski, F.: Bulk synchronous parallel ML with exceptions. Future Gener. Comput. Syst. 26(3), 486–490 (2010)CrossRefGoogle Scholar
  9. 9.
    Hayashi, Y., Cole, M.: Static performance prediction of skeletal parallel programs. Parallel Algorithms Appl. 17(1), 59–84 (2002)CrossRefGoogle Scholar
  10. 10.
    Hoffmann, J., Das, A., Weng, S.C.: Towards automatic resource bound analysis for OCaml. In: Principles of Programming Languages. POPL 2017. ACM (2017)Google Scholar
  11. 11.
    Jakobsson, A.: Automatic Cost Analysis for Imperative BSP Programs. Int. J. Parallel Prog. (Feb 2018)Google Scholar
  12. 12.
    Jay, C.: Costing parallel programs as a function of shapes. Sci. Comput. Prog. 37(1), 207–224 (2000)CrossRefGoogle Scholar
  13. 13.
    Roshan, J., et al.: Core\(\_\)bench: Micro-benchmarking library for OCaml (2014)Google Scholar
  14. 14.
    de la Torre, P., Kruskal, C.P.: Submachine locality in the bulk synchronous setting. In: Bougé, L., Fraigniaud, P., Mignotte, A., Robert, Y. (eds.) Euro-Par 1996. LNCS, vol. 1124, pp. 352–358. Springer, Heidelberg (1996).  https://doi.org/10.1007/BFb0024723CrossRefGoogle Scholar
  15. 15.
    Abella, J., et al.: wcet analysis methods: pitfalls and challenges on their trustworthiness. In: IEEE Symposium on Industrial Embedded Systems, pp. 39–48 (2015)Google Scholar
  16. 16.
    Valiant, L.G.: A bridging model for parallel computation. Commun. ACM 33(8), 103–111 (1990)CrossRefGoogle Scholar
  17. 17.
    Valiant, L.G.: A bridging model for multi-core computing. J. Comput. Syst. Sci. 77(1), 154–166 (2011)MathSciNetCrossRefGoogle Scholar

Copyright information

© Springer Nature Switzerland AG 2018

Authors and Affiliations

  • Victor Allombert
    • 1
  • Frédéric Gava
    • 2
  • Julien Tesson
    • 2
  1. 1.Université d’Orléans, LIFOOrléansFrance
  2. 2.Université Paris-Est Créteil, LACLCréteilFrance

Personalised recommendations