skip to main content
10.1145/3019612.3019745acmconferencesArticle/Chapter ViewAbstractPublication PagessacConference Proceedingsconference-collections
research-article

P3ARSEC: towards parallel patterns benchmarking

Published:03 April 2017Publication History

ABSTRACT

High-level parallel programming is a de-facto standard approach to develop parallel software with reduced time to development. High-level abstractions are provided by existing frameworks as pragma-based annotations in the source code, or through pre-built parallel patterns that recur frequently in parallel algorithms, and that can be easily instantiated by the programmer to add a structure to the development of parallel software. In this paper we focus on this second approach and we propose P3ARSEC, a benchmark suite for parallel pattern-based frameworks consisting of a representative subset of PARSEC applications. We analyse the programmability advantages and the potential performance penalty of using such high-level methodology with respect to hand-made parallelisations using low-level mechanisms. The results are obtained on the new Intel Knights Landing multicore, and show a significantly reduced code complexity with comparable performance.

References

  1. B. Chapman, G. Jost, and R. v. d. Pas, Using OpenMP: Portable Shared Memory Parallel Programming. The MIT Press, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. A. Duran, E. Ayguadé, R. M. Badia, J. Labarta, L. Martinell, X. Martorell, and J. Planas, "Ompss: a proposal for programming heterogeneous multi-core architectures," Parallel Processing Letters, vol. 21, pp. 173--193, 2011. Google ScholarGoogle ScholarCross RefCross Ref
  3. T. Mattson, B. Sanders, and B. Massingill, Patterns for parallel programming. Addison-Wesley Professional, 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. M. McCool, J. Reinders, and A. Robison, Structured Parallel Programming, 1st ed. San Francisco, CA, USA: Morgan Kaufmann Publishers Inc., 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. M. Danelutto and M. Torquati, "Structured parallel programming with "core" fastflow," in Central European Functional Programming School, ser. LNCS. Springer, 2015, vol. 8606, pp. 29--75.Google ScholarGoogle Scholar
  6. J. Enmyren and C. W. Kessler, "SkePU: A multi-backend skeleton programming library for multi-gpu systems," in Proceedings of the Fourth International Workshop on High-level Parallel Programming and Applications, ser. HLPP '10. New York, NY, USA: ACM, 2010, pp. 5--14. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. S. Ernsting and H. Kuchen, "Algorithmic skeletons for multi-core, multi-gpu systems and clusters," Int. J. High Perform. Comput. Netw., vol. 7, no. 2, pp. 129--138, Apr. 2012. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. C. Campbell and A. Miller, A Parallel Programming with Microsoft Visual C++: Design Patterns for Decomposition and Coordination on Multicore Architectures, 1st ed. Microsoft Press, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. K. J. Brown, A. K. Sujeeth, H. J. Lee, T. Rompf, H. Chafi, M. Odersky, and K. Olukotun, "A heterogeneous parallel framework for domain-specific languages," in 2011 Inter. Conf. on Parallel Architectures and Compilation Techniques, ser. PACT '11. IEEE, 2011, pp. 89--100. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. T. Sujeeth, Arvind K. and Rompf, K. J. Brown, H. Lee, H. Chafi, V. Popic, M. Wu, A. Prokopec, V. Jovanovic, M. Odersky, and K. Olukotun, Composition and Reuse with Compiled Domain-Specific Languages. Berlin, Heidelberg: Springer Berlin Heidelberg, 2013, pp. 52--78. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. M. Danelutto, J. D. Garcia, L. M. Sanchez, R. Sotomayor, and M. Torquati, "Introducing parallelism by using repara c++11 attributes," in 24th Euromicro Inter. Conf on Parallel, Distributed, and Network-Based Processing (PDP), Feb 2016, pp. 354--358. Google ScholarGoogle ScholarCross RefCross Ref
  12. M. Danelutto, T. D. Matteis, G. Mencagli, and M. Torquati, "Parallelizing high-frequency trading applications by using c++11 attributes," in 2015 IEEE Trustcom/BigDataSE/ISPA, vol. 3, Aug 2015, pp. 140--147. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. M. Danelutto, T. De Matteis, G. Mencagli, and M. Torquati, "Data stream processing via code annotations," The Journal of Supercomputing, pp. 1--15, 2016. {Online}. Available Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. D. Chasapis, M. Casas, M. Moretó, R. Vidal, E. Ayguadé, J. Labarta, and M. Valero, "PARSECSs: Evaluating the impact of task parallelism in the parsec benchmark suite," ACM Trans. Archit. Code Optim., vol. 12, no. 4, pp. 41:1--41:22, Dec. 2015. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. C. Bienia, S. Kumar, J. P. Singh, and K. Li, "The parsec benchmark suite: Characterization and architectural implications," in 17th Inter. Conf. on Parallel Architectures and Compilation Techniques, ser. PACT '08. ACM, 2008, pp. 72--81. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. M. Aldinucci and M. Danelutto, "Stream parallel skeleton optimization," in Proc. of PDCS: Intl. Conf. on Parallel and Distributed Computing and Systems, IASTED. ACTA press, Nov. 1999, pp. 955--962.Google ScholarGoogle Scholar
  17. A. Sodani, R. Gramunt, J. Corbal, H. S. Kim, K. Vinod, S. Chinthamani, S. Hutsell, R. Agarwal, and Y. C. Liu, "Knights landing: Second-generation intel xeon phi product," IEEE Micro, vol. 36, no. 2, pp. 34--46, Mar 2016. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. P3ARSEC: towards parallel patterns benchmarking

          Recommendations

          Comments

          Login options

          Check if you have access through your login credentials or your institution to get full access on this article.

          Sign in
          • Published in

            cover image ACM Conferences
            SAC '17: Proceedings of the Symposium on Applied Computing
            April 2017
            2004 pages
            ISBN:9781450344869
            DOI:10.1145/3019612

            Copyright © 2017 ACM

            Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

            Publisher

            Association for Computing Machinery

            New York, NY, United States

            Publication History

            • Published: 3 April 2017

            Permissions

            Request permissions about this article.

            Request Permissions

            Check for updates

            Qualifiers

            • research-article

            Acceptance Rates

            Overall Acceptance Rate1,650of6,669submissions,25%

          PDF Format

          View or Download as a PDF file.

          PDF

          eReader

          View online with eReader.

          eReader