Department of Information Technology

SuperGlue

Contributed by Martin Tillenius

Short description

SuperGlue is a C++ library for task-parallelism, with data-dependent tasks.

The programmer divides the software into tasks and specifies which data each task reads and writes. SuperGlue then uses this information to deduce task dependencies, and executes the tasks in parallel while respecting these dependencies.

The source code and a tutorial is available at github: http://tillenius.github.io/superglue/

Related publications

  1. DuctTeip: A task-based parallel programming framework for distributed memory architectures. Afshin Zafari, Elisabeth Larsson, and Martin Tillenius. Technical report / Department of Information Technology, Uppsala University nr 2016-010, 2016. (External link).
  2. SuperGlue: A shared memory framework using data versioning for dependency-aware task-based parallelization. Martin Tillenius. In SIAM Journal on Scientific Computing, volume 37, pp C617-C642, 2015. (DOI, fulltext:print).
  3. A scalable RBF–FD method for atmospheric flow. Martin Tillenius, Elisabeth Larsson, Erik Lehto, and Natasha Flyer. In Journal of Computational Physics, volume 298, pp 406-422, 2015. (DOI, fulltext:postprint).
  4. Resource-aware task scheduling. Martin Tillenius, Elisabeth Larsson, Rosa M. Badia, and Xavier Martorell. In ACM Transactions on Embedded Computing Systems, volume 14, number 1, pp 5:1-25, 2015. (DOI, Fulltext).
  5. Scientific Computing on Multicore Architectures. Martin Tillenius. Ph.D. thesis, Digital Comprehensive Summaries of Uppsala Dissertations from the Faculty of Science and Technology nr 1139, Acta Universitatis Upsaliensis, Uppsala, 2014. (fulltext, preview image).
  6. A task parallel implementation of an RBF-generated finite difference method for the shallow water equations on the sphere. Martin Tillenius, Elisabeth Larsson, Erik Lehto, and Natasha Flyer. Technical report / Department of Information Technology, Uppsala University nr 2014-011, 2014. (External link).
  7. SuperGlue: A shared memory framework using data versioning for dependency-aware task-based parallelization. Martin Tillenius. Technical report / Department of Information Technology, Uppsala University nr 2014-010, 2014. (External link).
  8. A task parallel implementation of a scattered node stencil-based solver for the shallow water equations. Martin Tillenius, Elisabeth Larsson, Erik Lehto, and Natasha Flyer. In Proc. 6th Swedish Workshop on Multi-Core Computing, pp 33-36, Halmstad University, Halmstad, Sweden, 2013.
  9. Resource-aware task scheduling. Martin Tillenius, Elisabeth Larsson, Rosa M. Badia, and Xavier Martorell. In 4th Workshop on Parallel Programming and Run-Time Management Techniques for Many-core Architectures (PARMA), p 6, Tech. Univ. Berlin, Germany, 2013. (fulltext:postprint).
  10. Programming models based on data versioning for dependency-aware task-based parallelisation. Afshin Zafari, Martin Tillenius, and Elisabeth Larsson. In Proc. 15th International Conference on Computational Science and Engineering, pp 275-280, IEEE Computer Society, Los Alamitos, CA, 2012. (DOI).
  11. Leveraging multicore processors for scientific computing. Martin Tillenius. Licentiate thesis, IT licentiate theses / Uppsala University, Department of Information Technology nr 2012-006, Uppsala University, 2012. (fulltext).
  12. A simple model for tuning tasks. Marcus Holm, Martin Tillenius, and David Black-Schaffer. In Proc. 4th Swedish Workshop on Multi-Core Computing, pp 45-49, Linköping University, Linköping, Sweden, 2011.
  13. Using hardware transactional memory for high-performance computing. Karl Ljungkvist, Martin Tillenius, David Black-Schaffer, Sverker Holmgren, Martin Karlsson, and Elisabeth Larsson. In Proc. 25th International Symposium on Parallel and Distributed Processing Workshops and PhD Forum, pp 1660-1667, IEEE, Piscataway, NJ, 2011. (DOI).
  14. Early results using hardware transactional memory for high-performance computing applications. Karl Ljungkvist, Martin Tillenius, Sverker Holmgren, Martin Karlsson, and Elisabeth Larsson. In Proc. 3rd Swedish Workshop on Multi-Core Computing, pp 93-97, Chalmers University of Technology, Göteborg, Sweden, 2010. (fulltext:postprint).
  15. An efficient task-based approach for solving the <em>n</em>-body problem on multicore architectures. Martin Tillenius and Elisabeth Larsson. PARA 2010: State of the Art in Scientific and Parallel Computing, University of Iceland, Reykjavík, 2010. (fulltext:postprint).

Funding

This project was supported by the Swedish Research Council through the Linnæus centre of excellence Uppsala Programming for Multicore Architectures Research Center (UPMARC).

Updated  2015-09-16 12:20:54 by Kurt Otto.