skip to main content
10.1145/2600212.2600711acmconferencesArticle/Chapter ViewAbstractPublication PageshpdcConference Proceedingsconference-collections
short-paper

Bobolang: a language for parallel streaming applications

Published:23 June 2014Publication History

ABSTRACT

At present time, the programmers may choose from a number of streaming languages. They cover various aspects of the development process of streaming applications; however, specification of complex or runtime-dependent parts of the applications still remains a great challenge. We have analysed a large amount of requirements raised by the development of multiple data streaming parallel applications and proposed a novel language called Bobolang. It contains syntactic and semantic features which allow the programmer to naturally solve most of the problems, which we met in the design of streaming applications. The language is used to specify the structure of the whole application as well as the inner structure of each operator. Thanks to the properties of the language, Bobolang can create an optimized evaluation plan which is capable of making the best use of the available hardware resources. The language has been employed in several practical problems and it has proven itself to be a very powerful tool for the development of data-intensive parallel applications.

References

  1. D. Bednarek, J. Dokulil, J. Yaghob, and F. Zavoral. Bobox: Parallelization Framework for Data Processing. In Advances in Information Technology and Applied Computing, 2012.Google ScholarGoogle Scholar
  2. I. Buck. Brook: A streaming programming language, 2001.Google ScholarGoogle Scholar
  3. I. Buck, T. Foley, D. Horn, J. Sugerman, K. Fatahalian, M. Houston, and P. Hanrahan. Brook for GPUs: Stream Computing on Graphics Hardware. ACM Transcations on Graphics, 23:777--786, 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. C. Consel, H. Hamdi, L. Réveillère, L. Singaravelu, H. Yu, and C. Pu. Spidle: a DSL approach to specifying streaming applications. In Proceedings of the 2nd international conference on Generative programming and component engineering, pages 1--17, New York, NY, USA, 2003. Springer-Verlag. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. A. Das, W. J. Dally, and P. Mattson. Compiling for stream processing. In Proceedings of the 15th international conference on Parallel architectures and compilation techniques, pages 33--42, New York, NY, USA, 2006. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Z. Falt, J. Bulanek, and J. Yaghob. On Parallel Sorting of Data Streams. In ADBIS 2012 - 16th East European Conference in Advances in Databases and Information Systems, 2012.Google ScholarGoogle Scholar
  7. Z. Falt, M. Cermak, J. Dokulil, and F. Zavoral. Parallel SPARQL Query Processing Using Bobox. International Journal On Advances in Intelligent Systems, 5(3 and 4):302--314, 2012.Google ScholarGoogle Scholar
  8. Z. Falt, M. Cermak, and F. Zavoral. Highly Scalable Sort-Merge Join Algorithm for RDF Querying. In Proceedings of the 2nd International Conference on Data Management Technologies and Applications, 2013.Google ScholarGoogle Scholar
  9. M. Franklin, E. Tyson, J. Buckley, P. Crowley, and J. Maschmeyer. Auto-pipe and the X language: A pipeline design tool and description language. In 20th International Parallel and Distributed Processing Symposium. IEEE, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. U. J. Kapasi, W. J. Dally, S. Rixner, J. D. Owens, and B. Khailany. Programmable stream processors. IEEE Computer, 36:282--288, 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. W. R. Mark, R. Steven, G. Kurt, A. Mark, and J. Kilgard. Cg: A system for programming graphics hardware in a c-like language. ACM Transactions on Graphics, 22:896--907, 2003. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. W. Thies, M. Karczmarek, and S. Amarasinghe. StreamIt: A language for streaming applications. In Compiler Construction, pages 179--196. Springer, 2002. Google ScholarGoogle Scholar
  13. D. Zhang, Z.-Z. Li, H. Song, and L. Liu. A programming model for an embedded media processing architecture. In Embedded Computer Systems: Architectures, Modeling, and Simulation, pages 251--261. Springer, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Bobolang: a language for parallel streaming applications

    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
      HPDC '14: Proceedings of the 23rd international symposium on High-performance parallel and distributed computing
      June 2014
      334 pages
      ISBN:9781450327497
      DOI:10.1145/2600212

      Copyright © 2014 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: 23 June 2014

      Permissions

      Request permissions about this article.

      Request Permissions

      Check for updates

      Qualifiers

      • short-paper

      Acceptance Rates

      HPDC '14 Paper Acceptance Rate21of130submissions,16%Overall Acceptance Rate166of966submissions,17%

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader