Gérard Berry Collège de France Chaire Algorithmes ...

40
Coopération de modèles de temps Gérard Berry Collège de France Chaire Algorithmes, machines et langages http://www.college-de-france.fr/site/gerard-berry [email protected] Cours 6, 19 mars 2014

Transcript of Gérard Berry Collège de France Chaire Algorithmes ...

Page 2: Gérard Berry Collège de France Chaire Algorithmes ...

19/03/2014 2G. Berry, Collège de France

Rappel : les trois modèles fondamentaux

• Synchrone– temps conceptuellement nul (négligeable)

– simple, déterministe : circuits, logiciels embarqués

• Vibratoire– temps prévisible (pas toujours rapide)

– électronique des circuits synchrones

– ordonnancement statique des logiciels synchrone

(WCET)

• Asynchrone– algorithmique distribuée générale

– Internet (TCP/IP)

Chacun de ces modèles est localement compositionnel,

mais que dire de la composition de modèles différents ?

Page 3: Gérard Berry Collège de France Chaire Algorithmes ...

• Synchrone–dans la même pièce, au téléphone

• Vibratoire– le télégraphe (il faut taper le message)

– le pneumatique, le train (Suisse)

• Asynchrone – plus ou moins prévisible : le courrier, Internet

– imprévisible : toute caisse de retraite

• Continu / discret : téléphone / lettre

19/03/2014 3G. Berry, Collège de France

Dans la vie courante

Page 4: Gérard Berry Collège de France Chaire Algorithmes ...

19/03/2014 4G. Berry, Collège de France

Principaux modes de communicationmedium type impression adressage

courrier 11 asynchrone physique

courriel 11 asynchrone logique

télégramme, pneu 11 vibratoire physique

SMS 11 vibratoire logique

téléphone 11 (n?) synchrone physique

chat / tél Internet 11 (n?) synchrone logique

tableau d’affichage 1n asynchrone physique

site web, mass-mailing 1n asynchrone logique

théâtrophone 1n synchrone physique

radio / télévision 1n synchrone logique

tweet 1n vibratoire logique

réunion (parole) nn synchrone physique

audio / vidéo conf. nn synchrone logique

forum internet nn asynchrone logique

Page 5: Gérard Berry Collège de France Chaire Algorithmes ...

19/03/2014 5G. Berry, Collège de France

Quelques outils de simulation

pour simuler par outil

courriel courrier réexpédition

tableau d’affichage courrier /

courriel

envoi en masse

tableau d’affichage téléphone répondeur

courriel téléphone répondeur avec appel à distance

téléphone radio walkie-talkie, appel VHF

site web radio CNN, France-info, BFM

forum radio CB des taxis

radio asynchrone streaming

On peut simuler l’asynchrone par le synchrone ou le vibratoire,

mais pas vraiment l’inverse sans l’informatique !

Page 6: Gérard Berry Collège de France Chaire Algorithmes ...

• Passage à l’adressage logique–dissociation du temps et de l’espace

• Accélération majeure du mode asynchrone– téléchargement >> bibliothèque

• Possibilité de simuler le vibratoire / (presque)

synchrone par l’asynchrone « best effort »–vibratoire : streaming son et vidéo

–synchrone : téléphone par Internet

–point dur : la mesure des performances du réseau

19/03/2014 6G. Berry, Collège de France

L’apport de l’informatique

Exemple d’erreur hélas fréquente : vouloir synchroniser

freins et suspension d’une voiture avec de l’asynchrone

Page 7: Gérard Berry Collège de France Chaire Algorithmes ...

• Mécanique puis électrique– Chappe (1794, ParisLille)

– Wheatstone (1838, LondresBirmingham)

– Morse (1843, BaltimoreWashington)

– doublement vibratoire : télégraphe + pneumatique !

19/03/2014 7G. Berry, Collège de France

L’apport du télégraphe (1794-1838-1843)

Changement technique et mental extraordinaire

déclaré deuxième invention fondamentale après la roue !

The Victorian Internet, Tom Standage, Berkley Books, NY

• Fantastique raccourcissement des délais– exemple Angleterre / USA, Inde ou Australie, Portugal / Macao, etc.

• Progrès technologiques rapides et massifs– manuel électrique, millions de km de lignes, pneumatique, etc.

• Explosion de nouvelles applications– information, commerce, politique, cœur, etc.

Page 8: Gérard Berry Collège de France Chaire Algorithmes ...

19/03/2014 8G. Berry, Collège de France

... Mais aussi

Retour de l’Histoire :

la France a été en avance... puis en retard,

pour le Télégraphe Chappe (1794) et le Minitel (1980-2012) !

• Discours éthérés– plus de guerres, victoire de la démocratie, etc.

• Tricheries– San Francisco : paris gagnants sur les courses de New York

Page 9: Gérard Berry Collège de France Chaire Algorithmes ...

• Systèmes asynchrones– réactions chimiques de construction des protéines dans les cellules

cf. BioCham, séminaire de F. Fages au Colloque 2008 :

http://www.college-de-france.fr/site/gerard-berry/symposium-2008-05-23-10h45.htm

19/03/2014 9G. Berry, Collège de France

En biologie

• Systèmes vibratoires– commande du cœur circulation sanguine

– propagation de l’influx nerveux

– rythmes neuronaux alpha, beta, theta, gamma, circadien

– vision et audition, contrôle du mouvement

– réplication de l’ADN (40 nucléotides / s), transcription de l’ARN

– idem pour les plantes, rythme des saisons et du jour

Coopération de systèmes continus et discrets :

potentiels d’action, battement de cœur, saccades oculaires, etc.

• Systèmes intermédiaires– système immunitaire (croissance exponentielle des lymphocytes)

– système hormonal

Page 10: Gérard Berry Collège de France Chaire Algorithmes ...

19/03/2014 10G. Berry, Collège de France

Exemple de synchronisations

• Sensations de simultanéité < 20ms (toucher, musique)

• Vision uniforme d’une image malgré les saccades oculaires

• synchronisation vision (lèvres) / audition (voix) malgré des

chemins neuronaux très différents

• impact du synchronisme temporel des potentiels d’action

sur l’émission de potentiels d’action (C. Rossant)

• coordination du mouvement (A. Berthoz)

Page 11: Gérard Berry Collège de France Chaire Algorithmes ...

19/03/2014 11G. Berry, Collège de France

Mélanger les temps en informatique :

beaucoup de travaux, souvent épars...

• Implémentation des langages et systèmes synchrones– implémentations vibratoires sur circuits ou logiciels (WCET)

– domaines synchrones de Ptolemy (E. A. Lee, Berkeley)

– systèmes distribués fortement synchronisés (PTIDES, E. A. Lee)

– distribution de programmes synchrones sur infrastructures asynchrones

• Réseaux mixtes vibratoires / asynchrones– TTP, FlexRay, Real-time Ethernet, etc.

– applications typiques: avionique, automobile, etc.

• Systèmes GALS (Globally Asynchronous Locally Synchronous)– SoCs multi-horloges

– Orchestration synchrone d’activités Web asynchrones en Hop / Hiphop

(cours séminaire du 28 mai 2013)

Page 12: Gérard Berry Collège de France Chaire Algorithmes ...

19/03/2014 12G. Berry, Collège de France

• Simulation logicielle de phénomènes physiques– relation entre temps d’exécution (wall time) et temps du système simulé

– relations entre temps continus et discrets

cf. cours du 19 mars, et exposés de K-J. Åström (19 mars 2014)

et M. Pouzet (26 mars 2014)

• Approximation asynchrone de logiques vibratoires / synchrones– transmission asynchrone « best effort » de flots synchrone

(streaming audio / vidéo, téléphone Internet)

– timestamps dans les algorithmes distribués asynchrones (L. Lamport)

– génération de sons en temps-réel avec OS asynchrone (Antescofo)

• Automatique répartie tolérante au temps– cf. séminaire d’Albert Benveniste (LTTA), 5 mars 2014

Page 13: Gérard Berry Collège de France Chaire Algorithmes ...

• Exemple typique : implémenter un langage conceptuellement parallèle

par un ordonnancement forcé pour le rendre séquentiel, donc

apparemment simple– Langage IEEE 1131 pour automates programmables

– Statecharts (25+ sémantiques proposées)

– Stateflow (Matlab, associé à Simulink), cf. cours du 2 avril 2013

– etc.

19/03/2014 13G. Berry, Collège de France

Le danger des méthodes « pragmatiques »

Implémenter quelque chose,

puis essayer de lui trouver une sémantique

=> Mauvaise compositionnalité, vérification formelle difficile, etc.

Page 14: Gérard Berry Collège de France Chaire Algorithmes ...

19/03/2014 14G. Berry, Collège de France

Une question centrale : le déterminisme

fonctionnel et temporel

• Dans quelle mesure est-il une contrainte du type d’application ?

• Si oui, le formalisme le respecte-t-il par construction ?

• Eventuellement dans certaines parties du système et pas dans

d’autres?

J’aime bien l’idée que les réactions de ma voiture

à mes commandes restent relativement déterministes

Page 15: Gérard Berry Collège de France Chaire Algorithmes ...

19/03/2014 15G. Berry, Collège de France

Une grande tentative d’unification :

Ptolemy II, E.A. Lee et. al. (UC Berkeley)

• Grand projet démarré en par Edward Lee à UC Berkeley,

EECS Electrical Engineering and Computer Science Lab,

à la suite de Ptolemy Classic (1980, avec J. Buck et. al.).

• Principe: modélisation et simulation de systèmes

informatiques embarqués complexes, avec intégration de

plusieurs modèles de calcul temporels ou non

• Attention particulière à la rigueur sémantique,

et interface homme-machine élégante

• Logiciel Open Source (licence BSD), utilisé industriellement

• Livre papier ou PDF gratuit, exemples animés

http://ptolemy.eecs.berkeley.edu/books/Systems/

Page 16: Gérard Berry Collège de France Chaire Algorithmes ...

19/03/2014 16G. Berry, Collège de France

La hiérarchie des modèles de calcul de Ptolemy

traités dans le livre

Page 17: Gérard Berry Collège de France Chaire Algorithmes ...

19/03/2014 17G. Berry, Collège de France

Style d’un modèle Ptolemy II

définit le modèle de calcul global,

ici Discrete Events

générateur

d’entrées

afficheur

acteurs

hiérarchiques

(modèles

de calcul

différents)

Page 18: Gérard Berry Collège de France Chaire Algorithmes ...

19/03/2014 18G. Berry, Collège de France

Synchronous Dataflow (SDF)

m nlit m entrées, en produit n

2 3A B

A A A B B : 6 mémoires

A A B A B : 4 mémoires

n pA B

A déclenché a fois, B b fois

équation d’équilibre : na pb

2

1A C

B1 2

1

1

ABCC

2

1A C

B1

1

1 1

Page 19: Gérard Berry Collège de France Chaire Algorithmes ...

19/03/2014 19G. Berry, Collège de France

Synchronous Dataflow (SDF)

Messerchmitt & Lee (1987) : procédure pour décider s’il y a un

ordonnancement statique garantissant des buffers bornés

et pour fournir l’ordonnancement minimal.

Taux de lecture ou production conditionnels,

ou buffer non bornés changement de modèle:

DDF Dynamic Dataflow

Note : les modèles SDF et DDF n’ont pas de temps propre,

mais ils s’intègrent dans les modèles temporels

facilement pour SDF (un cycle par « unité de temps »

plus difficilement pour DDF, car scheduling dynamique

Page 20: Gérard Berry Collège de France Chaire Algorithmes ...

19/03/2014 20G. Berry, Collège de France

Application sonore SDF

Page 21: Gérard Berry Collège de France Chaire Algorithmes ...

19/03/2014 21G. Berry, Collège de France

DFF, avec mémoire finie ou infinie

switch et test

dans le même sens

switch et test

inversés

Page 22: Gérard Berry Collège de France Chaire Algorithmes ...

19/03/2014 22G. Berry, Collège de France

Automates finis hiérarchiques (FSM)

Une vieille connaissance:

ABRO

A/ B/

R /

/ O

loop

abort

{ await A || await B };

emit O;

halt

when R

end loop

Page 23: Gérard Berry Collège de France Chaire Algorithmes ...

19/03/2014 23G. Berry, Collège de France

Automates finis hiérarchiques (FSM)

Une vieille connaissance:

ABRO en Ptolemy II

Transitions synchrones

sur événements

Fortement inspiré des

SyncCharts de C. André

Page 24: Gérard Berry Collège de France Chaire Algorithmes ...

• Similaire aux langages synchrones Lustre, Signal etc.

• Utilise la sémantique constructive d’Esterel–sous forme de point fixe dans une logique à 3 valeurs,

cf prochain cours du 26 mars 2014

• Peut accueillir des sous-modèles variés et servir

d’orchestrateur, comme les FSMs– cf. cours / séminaire HipHop vs. Hop, 28 mai 2013

19/03/2014 24G. Berry, Collège de France

SR : Synchronous-Reactive Models

Page 25: Gérard Berry Collège de France Chaire Algorithmes ...

19/03/2014 25G. Berry, Collège de France

SR : de Simone Round-Robin Scheduler

Cf. cours 1, 2014

Ptolemy II implémente

la sémantique constructive

(en mode interprétation)

NB: erreur dans le livre :

Esterel possède aussi le mode

interprétation, pas seulement

le mode compilation

Page 26: Gérard Berry Collège de France Chaire Algorithmes ...

• modèle de temps superdense

timestamp (t,n) où t est flottant double et n entier

t est une valeur dans le temps du modèle

n est un index pour les événements de temps t

(t,n) fortement synchrone avec (t’,n’) si t t’ et n n’

(t,n) faiblement synchrone avec (t’,n’) si t t’

• Scheduling ordre des timestamps ordre topologique

priorités (pour les timestamps fortement synchrones restants)

19/03/2014 26G. Berry, Collège de France

DE : Discrete Events Models

temps constructif

o6

i7i5i1 i2 i6i4i3

o7o5o4o3o1 o2

temps superdense

cf. cours 1, 2013

Page 27: Gérard Berry Collège de France Chaire Algorithmes ...

19/03/2014 27G. Berry, Collège de France

Temps superdense : le pendule de Newton

Conservation de la quantité de mouvement dans les chocs

la quantité de mouvement saute de bille en bille en temps 0

Ptolemy : de microstep en microstep

Alternative : le temps non-standard,

cf. séminaire de M. Pouzet, 26 mars 2014

Page 28: Gérard Berry Collège de France Chaire Algorithmes ...

19/03/2014 28G. Berry, Collège de France

DE démo : un serveur avec FIFO

Page 29: Gérard Berry Collège de France Chaire Algorithmes ...

19/03/2014 29G. Berry, Collège de France

DE démo : le même sans fil

Liaison par nom

Page 30: Gérard Berry Collège de France Chaire Algorithmes ...

19/03/2014 30G. Berry, Collège de France

Un serveur plus complexe

Page 31: Gérard Berry Collège de France Chaire Algorithmes ...

19/03/2014 31G. Berry, Collège de France

Modèle mixte continu / discret + Zénon

Page 32: Gérard Berry Collège de France Chaire Algorithmes ...

19/03/2014 32G. Berry, Collège de France

Continuous : attention à Zénon et au test de fin !

Page 33: Gérard Berry Collège de France Chaire Algorithmes ...

• Faire coopérer des modèles de temps n’est pas si simple et

mérite d’être étudié de près.

• On trouve des tas de solutions ad-hoc dans la vie courante

• Mais le problème n’est pas encore assez reconnu et étudié en

informatique

• Quelques travaux importants : relation synchrone / vibratoire,

coopération synchrone / asynchrone, implémentations

d’algorithmes d’automatique, simulateurs continus / discrets

• Et une grande tentative d’unification globale, Ptolemy II

19/03/2014 33G. Berry, Collège de France

Conclusion

Page 34: Gérard Berry Collège de France Chaire Algorithmes ...

19/03/2014 34G. Berry, Collège de France

Quelques références

The Victorian Internet

Tom Standage, Berkley Books, New York (1998)

Real Time Programming: PSpecial urpose or General Purpose Languages

G. Berry. Information Processing 89, G.X. Ritter (Ed.), Elsevier Science Publishers

B.V., North-Holland (1989) 11-18.

System Design, Modeling, and Simulation using Ptolemy II

Claudius Ptolemaeus, Editor (2014)

téléchargable avec toutes les démos animées:

http://ptolemy.eecs.berkeley.edu/books/Systems/

On the Schedulability of Real-Time Discrete Event Systems

E. Matsikoudis, C. Stergiou, E.A. Lee. Proc EMSOFT 2013.

PTIDES: A Programming Model for Distributed Real-Time Embedded Systems

P. Derler, T. Huining Feng, E.A. Lee, S. Matic, H.D.Patel, YangZ hao, Jia Zou

Report EECS-2008-72, EECS Department, University of California, Berkeley

http://www.eecs.berkeley.edu/Pubs/TechRpts/2008/EECS-2008-72.html

Page 35: Gérard Berry Collège de France Chaire Algorithmes ...

19/03/2014 35G. Berry, Collège de France

Ptides (E. Lee et. al) : Programming

Temporally Integrated Distributed Systems

les messages portent

des timestamps précis

Les acteurs

spécifient les calculs

Page 36: Gérard Berry Collège de France Chaire Algorithmes ...

19/03/2014 36G. Berry, Collège de France

synchro d’horloge

bornée (PTP)

la synchronisation

donne un sens global

aux timestamps

messages traités

dans l’ordre

des timestamps

Synchronisation d’horloges

Page 37: Gérard Berry Collège de France Chaire Algorithmes ...

19/03/2014 37G. Berry, Collège de France

Synchronisation d’horloges

timestamp

temps limite

timestamp = date

de mesure

capteurs

acteurs

actuateurs

acteurs

Page 38: Gérard Berry Collège de France Chaire Algorithmes ...

19/03/2014 38G. Berry, Collège de France

Interprétation temps-réel des timestamps

timestamp

temps limite

timestamp = date

de mesure

capteurs

acteurs

actuateurs

acteurs

Page 39: Gérard Berry Collège de France Chaire Algorithmes ...

19/03/2014 39G. Berry, Collège de France

Maîtrise des latences

La latence globale des capteurs aux actionneurs est calculable,

ce qui rend la correction et la performance du système analysable

maîtrise des

latences par calcul

des timestamps

actuateurs :

timestamps

date de l’actionretour au monde physique

Page 40: Gérard Berry Collège de France Chaire Algorithmes ...

19/03/2014 40G. Berry, Collège de France

Conséquence : déterminisme !

délai du réseau

borné d

un événement de

timestamp t peut

être sorti au temps

t + s + d + e – d2

hypothèse: erreur

d’horloge bornée e

hypothèse : délai

des capteurs borné s

application:

latence d2

Note :

Il faut des

bornes aux

interfaces

réseau pour

garantir

l’ordre

temporel

indépen-

damment

de l’ordre

d’exécution

des acteurs.