Skip to main content
Kent Academic Repository

Parallel and Distributed Computing in Education (Invited Talk)

Welch, Peter H. (1998) Parallel and Distributed Computing in Education (Invited Talk). In: Palma, J.M.L.M. and Dongarra, Jack J. and Hernandez, V., eds. Vector and Parallel Processing – VECPAR’98 Third International Conference. Lecture Notes in Computer Science . Springer-Verlag, Berlin, Germany, pp. 301-330. ISBN 978-3-540-66228-0. E-ISBN 978-3-540-48516-2. (doi:10.1007/10703040_24) (KAR id:21644)

Abstract

The natural world is certainly not organised through a central thread of control. Things happen as the result of the actions and interactions of unimaginably large numbers of independent agents, operating at all levels of scale from nuclear to astronomic. Computer systems aiming to be of real use in this real world need to model, at the appropriate level of abstraction, that part of it for which it is to be of service. If that modelling can reflect the natural concurrency in the system, it ought to be much simpler Yet, traditionally, concurrent programming is considered to be an advanced and difficult topic - certainly much harder than serial computing which, therefore, needs to be mastered first. But this tradition is wrong. This talk presents an intuitive, sound and practical model of parallel computing that can be mastered by undergraduate students in the first year of a computing (major) degree. It is based upon Hoare's mathematical theory of Communicating Sequential Processes (CSP), but does not require mathematical maturity from the students - that maturity is pre-engineered in the model. Fluency can be quickly developed in both message-passing and shared-memory concurrency, whilst learning to cope with key issues such as race hazards, deadlock, livelock, process starvation and the efficient use of resources. Practical work can be hosted on commodity PCs or UNIX workstations using either Java or the Occam multiprocessing language. Armed with this maturity, students are well-prepared for coping with real problems on real parallel architectures that have, possibly, less robust mathematical foundations.

Item Type: Book section
DOI/Identification number: 10.1007/10703040_24
Uncontrolled keywords: CSP, Java, occam, JCSP, Threads, Deadlock, Plug-and-play, Education
Subjects: Q Science > QA Mathematics (inc Computing science) > QA 76 Software, computer programming,
Divisions: Divisions > Division of Computing, Engineering and Mathematical Sciences > School of Computing
Depositing User: Mark Wheadon
Date Deposited: 22 Aug 2009 15:30 UTC
Last Modified: 16 Nov 2021 10:00 UTC
Resource URI: https://kar.kent.ac.uk/id/eprint/21644 (The current URI for this page, for reference purposes)

University of Kent Author Information

Welch, Peter H..

Creator's ORCID:
CReDIT Contributor Roles:
  • Depositors only (login required):

Total unique views for this document in KAR since July 2020. For more details click on the image.