The trend towards parallel computers requires a fundamental change in the way software is developed in order to maintain performance scalability. Because of that, it is required that most software developers have a solid knowledge on how to develop parallel programs. In this paper we present a methodology for learning parallel computing that gives priority to the general principles rather than technologies that use them. Parallel computing is presented as a specific case of the general coordination problem and, based on that, the fundamental issues of coordination systems are presented. Coordination is modelled as a cooperative game, in which learners (players) contribute to a common goal. Two games are presented as an example: the “orange game”, and a game based on the “dining philosophers” problem. Those games only use ordinary materials (not
computers) such as cards, drawing paper, colours and oranges, and allow to illustrate problems in coordination systems like mutual exclusion and deadlocks.
Bofill, P.; Otero, B.; Toribio, E.; Aroca, J.; Breitman, M.; Garcies, P.; Sanchó, J. Jornadas de Enseñanza Universitaria de la Informática p. 71-78 Data de presentació: 2005-07-13 Presentació treball a congrés