Abstract
Parallel programming is expected to become more the norm as multi-core and many-core processors gain more widespread use. Ada has always had excellent concurrency support, but could be improved in the area of parallel programming. Specifically, divide and conquer parallelism via parallel loops and subprograms are difficult to write without some sort of library support. In this paper we describe a proposal that combines the use of task pools and parallelism managers to provide parallelism capabilities to real-time Ada applications, including Ravenscar applications. This work complements the syntax enhancements that we previously proposed, so that together they facilitate the writing of parallel applications.
- M. Frigo, P. Halpern, C. Leiserson, S. Lewin-Berlin. Reducers and Other Cilk++ Hyperobjects, ACM SPAA '09 (2009) Google Scholar
Digital Library
- Intel Threading Building Blocks, http://software.intel.com/en-us/intel-tbbGoogle Scholar
- M. Hind, E. Schonberg. Efficient Loop-Level Parallelism in Ada., Proceedings of the ACM SigAda Tri-Ada '91 Conference San Jose, CA, October 1991 Google Scholar
Digital Library
- B. Moore. Parallelism Generics for Ada 2005 and Beyond, SIGAda'10 Proceedings of the ACM SIGAda annual conference, October 2010. Google Scholar
Digital Library
- H. Ali, M. Pinho, A Parallel Programming Model for Ada, SIGAda'11 Proceedings of the ACM SIGAda '11, Nov 2011. Google Scholar
Digital Library
- ISO/IEC, Ada Reference Manual, ISO/IEC 8652:2012(E), 2012Google Scholar
- S. Michell, B. Moore, L. M. Pinho, Tasklettes - a Fine Grained Parallelism for Ada on Multicores, 18th International Conference on Reliable Software Technoloties - Ada Europe 2013, Berlin Germany, June 2013.Google Scholar
- B. Moore, Paraffin source libraries. http://sourceforge.net/projects/paraffin/?source=directoryGoogle Scholar
- S. Sivasubramanian, J. Stultz, J. F. Vogel, P. McKenney. Fairlocks - A High Performance Fair Locking Scheme. In: International Conference on Parallel and Distributed Systems, pp. 241--246 (2002)Google Scholar
- F. Chouteau, J. F. Ruiz. Design and Implementation of a Ravenscar Extension for Multiprocessors. In: Reliable Software Technologies - Ada-Europe 2011, pp 31--45 Google Scholar
Digital Library
- ARG: Pragma CPU and Ravenscar Profile. Tech. Rep., ISO/IEC/JTC1/SC22/WG9 (2010), http://www.adaauth.org/cgi-bin/cvsweb.cgi/ai05s/ai05-0171-1.txtGoogle Scholar
- ARG: Sets of CPUs when defining dispatching domains. http:// www.ada-auth.org/cgi- bin/cvsweb.cgi/ai12s/ai12-0033-1.txtrev=1.Google Scholar
- S. Michell, B. Moore, L. M. Pinho, Hard Real-Time Programming on Multi-core Processors. Under SubmissionGoogle Scholar
Recommendations
Parallelism generics for Ada 2005 and beyond
SIGAda 2010The Ada programming language is seemingly well-positioned to take advantage of emerging multi-core technologies. While it has always been possible to write parallel algorithms in Ada, there are certain classes of problems however, where the level of ...
Parallelism generics for Ada 2005 and beyond
SIGAda '10: Proceedings of the ACM SIGAda annual international conference on SIGAdaThe Ada programming language is seemingly well-positioned to take advantage of emerging multi-core technologies. While it has always been possible to write parallel algorithms in Ada, there are certain classes of problems however, where the level of ...






Comments