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] Cou rs 6, 19

Coopération de modèles de temps

  • Upload
    leigh

  • View
    31

  • Download
    4

Embed Size (px)

DESCRIPTION

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. Rappel : les trois modèles fondamentaux. Synchrone - PowerPoint PPT Presentation

Citation preview

Page 1: Coopération de modèles de temps

Coopération de modèles de temps

Gérard Berry

Collège de FranceChaire Algorithmes, machines et langages

http://www.college-de-france.fr/site/[email protected]

Cours 6, 19 mars 2014

Page 2: Coopération de modèles de temps

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

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: Coopération de modèles de temps

G. Berry, Collège de France

• 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 3

Dans la vie courante

Page 4: Coopération de modèles de temps

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

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: Coopération de modèles de temps

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

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: Coopération de modèles de temps

G. Berry, Collège de France

• 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 6

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: Coopération de modèles de temps

G. Berry, Collège de France

• Mécanique puis électrique– Chappe (1794, ParisLille)– Wheatstone (1838, LondresBirmingham)– Morse (1843, BaltimoreWashington)– doublement vibratoire : télégraphe + pneumatique !

19/03/2014 7

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

Changement technique et mental extraordinairedé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: Coopération de modèles de temps

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

... 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: Coopération de modèles de temps

G. Berry, Collège de France

• 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 9

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: Coopération de modèles de temps

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

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: Coopération de modèles de temps

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

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: Coopération de modèles de temps

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

• 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: Coopération de modèles de temps

G. Berry, Collège de France

• 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 13

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: Coopération de modèles de temps

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

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: Coopération de modèles de temps

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

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: Coopération de modèles de temps

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

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

traités dans le livre

Page 17: Coopération de modèles de temps

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

Style d’un modèle Ptolemy IIdéfinit le modèle de calcul global, ici Discrete Events

générateurd’entrées

afficheur

acteurshiérarchiques

(modèlesde calculdifférents)

Page 18: Coopération de modèles de temps

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

Synchronous Dataflow (SDF)m n

lit m entrées, en produit n

2 3A BA A A B B : 6 mémoiresA 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: Coopération de modèles de temps

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

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: Coopération de modèles de temps

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

Application sonore SDF

Page 21: Coopération de modèles de temps

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

DFF, avec mémoire finie ou infinie

switch et testdans le même sens

switch et testinversés

Page 22: Coopération de modèles de temps

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

Automates finis hiérarchiques (FSM)

Une vieille connaissance:ABRO

A / B /

R /

/ O

loop abort { await A || await B }; emit O ; halt when Rend loop

Page 23: Coopération de modèles de temps

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

Automates finis hiérarchiques (FSM)

Une vieille connaissance:ABRO en Ptolemy II

Transitions synchronessur événements

Fortement inspiré des SyncCharts de C. André

Page 24: Coopération de modèles de temps

G. Berry, Collège de France

• 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 24

SR : Synchronous-Reactive Models

Page 25: Coopération de modèles de temps

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

SR : de Simone Round-Robin Scheduler

Cf. cours 1, 2014Ptolemy II implémente

la sémantique constructive(en mode interprétation)

NB: erreur dans le livre :Esterel possède aussi le modeinterprétation, pas seulement

le mode compilation

Page 26: Coopération de modèles de temps

G. Berry, Collège de France

• 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 26

DE : Discrete Events Models

temps constructif

o6

i7i5i1 i2 i6i4i3

o7o5o4o3o1 o2

temps superdense

cf. cours 1, 2013

Page 27: Coopération de modèles de temps

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

Temps superdense : le pendule de Newton

Conservation de la quantité de mouvement dans les chocsla quantité de mouvement saute de bille en bille en temps 0Ptolemy : de microstep en microstep

Alternative : le temps non-standard,cf. séminaire de M. Pouzet, 26 mars 2014

Page 28: Coopération de modèles de temps

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

DE démo : un serveur avec FIFO

Page 29: Coopération de modèles de temps

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

DE démo : le même sans fil

Liaison par nom

Page 30: Coopération de modèles de temps

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

Un serveur plus complexe

Page 31: Coopération de modèles de temps

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

Modèle mixte continu / discret + Zénon

Page 32: Coopération de modèles de temps

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

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

Page 33: Coopération de modèles de temps

G. Berry, Collège de France

• 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 33

Conclusion

Page 34: Coopération de modèles de temps

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

Quelques références

The Victorian InternetTom Standage, Berkley Books, New York (1998)

Real Time Programming: PSpecial urpose or General Purpose LanguagesG. Berry. Information Processing 89, G.X. Ritter (Ed.), Elsevier Science PublishersB.V., North-Holland (1989) 11-18.

System Design, Modeling, and Simulation using Ptolemy IIClaudius 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 SystemsE. 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, Berkeleyhttp://www.eecs.berkeley.edu/Pubs/TechRpts/2008/EECS-2008-72.html

Page 35: Coopération de modèles de temps

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

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: Coopération de modèles de temps

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

synchro d’horloge bornée (PTP)

la synchronisationdonne un sens global

aux timestamps

messages traités dans l’ordre

des timestamps

Synchronisation d’horloges

Page 37: Coopération de modèles de temps

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

Synchronisation d’horloges

timestamp temps limite

timestamp = date de mesure

capteurs acteurs

actuateurs acteurs

Page 38: Coopération de modèles de temps

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

Interprétation temps-réel des timestamps

timestamp temps limite

timestamp = date de mesure

capteurs acteurs

actuateurs acteurs

Page 39: Coopération de modèles de temps

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

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: Coopération de modèles de temps

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

Conséquence : déterminisme !

délai du réseauborné d

un événement de timestamp t peut être sorti au tempst + 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.