Thèse de doctorat en Informatique et Automatique Appliquees
Sous la direction de Yves Martinez.
Soutenue en 1987
à Lyon, INSA , en partenariat avec LIA - Laboratoire d'Informatique Appliquée (Lyon) (laboratoire) .
La conception d'algorithmes parallèles pose des problèmes délicats, tels que la décomposition d'un système en sous-système parallèles, la synchronisation entre ces sous-systèmes, et l'exclusion mutuelle pour les données partageables, problèmes dus essentiellement à une vue de la programmation différente de celle de la programmation séquentielle. Pour se familiariser avec le parallélisme, la théorie et le matériel ne suffisent pas. Il est nécessaire de pratiquer et donc de disposer tout d'abord d'outils de familiarisation, de conception et de développement d'algorithmes parallèles, ensuite d'exécutif et éventuellement de vérificateur. En ce qui concerne l'expression du parallélisme, le langage OCCAM semble être adéquat; quant à l'exécutif nous avons exploré différentes solutions y compris celle offerte par ADA. Le système que nous avons développé autour de ces langages peut être considéré comme une aide à la spécification et au développement d'application temps réel en Ada.
= [OCCAM / ADA parallel programming system]
Designing parallel algorithms involves tricky features, as spitting systems in smaller parallel systems, synchronizing of the components, mutual exclusion on shared variables, all problems due to a view on programming as a scheduling activity rather than a sequencing one. Beyond hardware and theory, parallelism must be a know-how. So we need tools to study and practice. Occam seems a good basis, Ad a a most frequent one. So we have developed a translator from Occam to Ada, written in Ada, and the corresponding running environment. More than being a tool for study and practice parallel algorithms, first experiences suggest using tool as a practical mean of specify in Occam real-time later produced in Ada