Research note
A protocol to reduce global communication in distributed Ada tasking

https://doi.org/10.1016/0743-7315(90)90017-JGet rights and content

Abstract

The tasking in Ada provides mechanisms suitable for programming multiprocessors and distributed computer systems. However, the semantics of Ada tasking have been shown to generate excessive run-time overhead due to interprocessor “control communication.” In a shared data structure implementation of Ada on a multiprocessor the rules for allocation of internal data structures needed for tasking are such that much of the updating has to be done by interprocessor communication from other tasks. The approach taken here is to keep most of the data structure manipulation local to the processing unit on which it resides. This is accomplished by a set of messages defining a tasking protocol for Ada. An experimental multiprocessor system with distributed shared memory was used and the performance of the tasking protocol was compared to that of a shared data structure implementation. Measurements on three Ada programs showed that a significant increase in speed-up can be reached for systems with long communication delays, and interprocessor communication due to tasking was shown to be reduced by 95%.

References (10)

  • Ada
  • A.V. Aho et al.

    Data Structures and Algorithms

    (1983)
  • G.E. Anderson

    An Ada multitask solution for the sieve of Erathosthenes

    ACM Ada Lett.

    (Sept./Oct. 1988)
  • A. Ardb

    Experimental implementation of an Ada tasking run time system on the multiprocessor computer Cm

  • M. Gardner

    Mathematical games. Sci. Amer.

    (Oct. 1970)
There are more references available in the full text version of this article.

Cited by (2)

View full text