Introduction à l analyse numérique : exemple du cloud computing Tony FEVRIER Aujourd hui!
Table des matières 1 Equations aux dérivées partielles et modélisation Equation différentielle et modélisation Des EDO aux EDP 2 L analyse numérique pour résoudre ces EDP Peut-on toujours en avoir les solutions? L analyse numérique à la rescousse 3 Application au cloud computing
Equations aux dérivées partielles et modélisation Table des matières 1 Equations aux dérivées partielles et modélisation Equation différentielle et modélisation Des EDO aux EDP 2 L analyse numérique pour résoudre ces EDP 3 Application au cloud computing
Equations aux dérivées partielles et modélisation Equation différentielle et modélisation Le ressort k raideur du ressort, m masse du poids. d 2 x dt 2 (t) + k m x(t) = g
Equations aux dérivées partielles et modélisation Equation différentielle et modélisation Système proies-prédateurs d x dt (t) = a x(t) b x(t)y(t), d y dt (t) = c x(t)y(t) d y(t). avec a, b, c, d > 0.
Introduction à l analyse numérique : exemple du cloud computing Equations aux dérivées partielles et modélisation Des EDO aux EDP Une équation différentielle à plusieurs variables Certaines grandeurs varient en temps et en espace comme par-exemple : la température dans une barre chauffée en un point. T 2T (x, t) K (x, t) = 0 (équation de la chaleur 1D). t x 2 la densité et la vitesse d un fluide incompressible (liquide). ρ + div(q) = 0, t u + u. u = p ν 2 u, t div(u) = 0. (équations de Navier-Stokes).
Equations aux dérivées partielles et modélisation Des EDO aux EDP Qu est-ce que le cloud computing Définition Wikipedia Le cloud computing est l accès via le réseau, à la demande et en libre-service, à des ressources informatiques virtualisées et mutualisées. "Accéder à des ressources dont on n a pas à gérer l infrastructure sous-jacente". Exemples : De petites utilisations à de grosses demandes (plusieurs échelles) Accès à une interface logicielle : téléchargement de musique. Accès à un espace mémoire : stockage de mails. Accès à un gros espace de calcul pour des entreprises sur des machines du cloud.
Equations aux dérivées partielles et modélisation Des EDO aux EDP Qu est-ce que le cloud computing Concrètement : Tout service se traduit en un nombre de requêtes par seconde. Exemple : Un calcul lancé sur une machine équivaut à n requêtes par seconde. Les clients louent des applications. On évalue leur besoin (en requêtes/s) et on leur accorde un nombre initial de machines. A certains temps, on éteint ou allume des machines suivant le besoin instantané. Problème : On aimerait le faire automatiquement et dynamiquement sous critères.
Equations aux dérivées partielles et modélisation Des EDO aux EDP Définitions et notations φ o : Capacité du système. x ]0, 1[ : Taux de complétion d une tâche. ρ(x, t) : Densité de requêtes complétées au niveau x au temps t. m(t) = 1 0 de travail. ρ(x, t)dx : Charge φ i (t) : Taux de requêtes entrantes. client 3 client 1 Cloud resources client 2 (φ (2) 0 ) client 4 (φ (4) 0 )
Equations aux dérivées partielles et modélisation Des EDO aux EDP Conservation de la masse Les équations t ρ + v(t) x ρ = 0, x ]0, 1[, t > 0, v(t) = φ o max(1, m(t)).
Equations aux dérivées partielles et modélisation Des EDO aux EDP Conservation de la masse Les équations t ρ + v(t) x ρ = 0, x ]0, 1[, t > 0, t m = φ i (t) ρ(1, t)v(t). v(t) = φ o max(1, m(t)).
Equations aux dérivées partielles et modélisation Des EDO aux EDP Conservation de la masse Les équations t ρ + v(t) x ρ = 0, x ]0, 1[, t > 0, t m = φ i (t) ρ(1, t)v(t). v(t) = φ o max(1, m(t)). ρ(x, 0) = ρ 0 (x) m(0) = 1 0 ρ 0 (x)dx 0 ρ(0, t)v(t) = φ i (t).
Equations aux dérivées partielles et modélisation Des EDO aux EDP Loi du temps de réponse d(x, t 0, x 0 ) : Temps que met une requête pour passer du niveau de complétion x 0 à x à l instant t 0. Le temps de complétion d une requête au temps t est : D(t) = d(1, t, 0). Donnée cruciale pour évaluer combien de temps le client va attendre. Service time equation t d + v(t) x d = 1, x ]0, 1[, t > 0 d(0, t, 0) = 0
Equations aux dérivées partielles et modélisation Des EDO aux EDP Loi du temps de réponse d(x, t 0, x 0 ) : Temps que met une requête pour passer du niveau de complétion x 0 à x à l instant t 0. Le temps de complétion d une requête au temps t est : D(t) = d(1, t, 0). Donnée cruciale pour évaluer combien de temps le client va attendre. u = t d Service time equation t u + v(t) x u = 0, x ]0, 1[, t > 0 u(0, t) = t D(t) = t u(1, t)
L analyse numérique pour résoudre ces EDP Table des matières 1 Equations aux dérivées partielles et modélisation 2 L analyse numérique pour résoudre ces EDP Peut-on toujours en avoir les solutions? L analyse numérique à la rescousse 3 Application au cloud computing
L analyse numérique pour résoudre ces EDP Peut-on toujours en avoir les solutions? Ces équations résolues explicitement Explicite = Dont on on connait l expression. Avoir l expression pour avoir des représentations graphiques. x (t) + f (t)x(t) = g(t). ax (t) + bx (t) + cx(t) = 0. t ρ + v(t) x ρ = 0, x ]0, 1[, t > 0
L analyse numérique pour résoudre ces EDP Peut-on toujours en avoir les solutions? Des cas qui restent rares Theorem (de Cauchy) Soit f : I Ω R R n R de classe C 1 (I Ω) et localement lipschitzienne en espace par rapport à la seconde variable, alors pour toute donnée initiale (t 0, x 0 ), il existe une unique solution maximale au problème de Cauchy : { x (t) = f (t, x(t)),. x(t 0 ) = x 0.
L analyse numérique pour résoudre ces EDP Peut-on toujours en avoir les solutions? Des cas qui restent rares. Pour la plupart des EDP, on recherche des théorèmes d existence et unicité sans espoir d avoir une solution explicite. Existence et unicité n est pas garantie non plus : Pas de démonstration d existence de solutions régulières pour Navier-Stokes (pb à 1 million de dollar). Comment représenter les solutions graphiquement si on n a pas leurs expressions?
L analyse numérique pour résoudre ces EDP L analyse numérique à la rescousse Discrétiser en temps et espace Idée générale Faute d avoir la solution, on en calcule une approximation et on la représente. Se ramener à un ensemble fini de points où évaluer la solution. Transformer les équations en un système fini qui se résout "à la main". Plus le nombre de points est grand plus on est précis.
L analyse numérique pour résoudre ces EDP L analyse numérique à la rescousse Discrétiser en temps et espace Idée générale Faute d avoir la solution, on en calcule une approximation et on la représente. (t, x) R + [0, 1] (t n = n t, x j = j x), n, j N. ρ(t, x) ρ(t n, x j ) = ρ n j L( t, x )(ρ) = 0 ρ n+1 = f (ρ 0, ρ 1,..., ρ n ) ρ non explicite ρ n+1 calculé.
L analyse numérique pour résoudre ces EDP L analyse numérique à la rescousse Rappel des équations Le modèle sans les conditions aux bords t ρ + v(t) x ρ = 0, x ]0, 1[, t > 0 t m = φ i (t) ρ(1, t)v(t) v(t) = φ o max(1, m(t)) t u + v(t) x u = 0, x ]0, 1[, t > 0 D(t) = t u(1, t)
L analyse numérique pour résoudre ces EDP L analyse numérique à la rescousse Exemple du schéma pour le cloud Implicit finite volume scheme from Jaisson [?] v n = ρ n+1 j φ o max(1, m n ) = ρ n j t x (ρn+1 j ρ n+1 j 1 )v n m n+1 = m n + t(φ n+1 i ρ n+1 N v n ) u n+1 j = uj n t x (un+1 j u n+1 j 1 )v n D n+1 = t n+1 u n+1 N
L analyse numérique pour résoudre ces EDP L analyse numérique à la rescousse Les conditions initiales et bords Les conditions ρ(x, 0) = ρ 0 (x) m(0) = 1 0 ρ 0 (x)dx 0 ρ(0, t)v(t) = φ i (t). u(0, t) = t Sur le schéma ρ 0 j = ρ 0 (x j ) m 0 ρ n+1 0 v n = φ n+1 i. u n+1 0 = t n+1
L analyse numérique pour résoudre ces EDP L analyse numérique à la rescousse D autres méthodes de discrétisation Différences finies. Volumes finis. Eléments finis. Méthode de Boltzmann sur réseau....
L analyse numérique pour résoudre ces EDP L analyse numérique à la rescousse Critères de légitimité d un schéma Comment juger si l approximation est bonne? Consistance : Condition pour que la solution exacte vérifie le schéma de la manière la plus précise qui soit. Stabilité : La solution n explose pas, reste controlée ( ρ n+1 ρ n ). Ces critères permettent de dire des choses sur la convergence de l approximation vers la solution exacte.
Application au cloud computing Table des matières 1 Equations aux dérivées partielles et modélisation 2 L analyse numérique pour résoudre ces EDP 3 Application au cloud computing
Application au cloud computing Premiers résultats du schéma φi (t) (requests/mn) Requests input rates 250 200 150 100 50 0 0 3 6 9 12 15 18 21 24 t (hours) unsaturated saturated 150 saturated 200 D(t) (mn) 10 1 0.1 0.01 Response times 0 3 6 9 12 15 18 21 24 t (hours) unsaturated saturated 150 saturated 200 Figure: Basic model validation.
Application au cloud computing Le problème posé et traduction mathématique On a : des clients avec chacun un ensemble de ressources disponibles (fonction de leur achat). On veut pour chaque client : satisfaire un temps maximal de réponse. satisfaire un temps minimal pour économiser des machines non nécessaires. permettre l utilisation d un surplus de machines si nécessaire.
Application au cloud computing Le problème posé et traduction mathématique On a : des clients avec chacun un système de capacité φ o. On veut pour chaque client : T min < D(t) < T max EN TOUT TEMPS. Capacité pour chaque client réhaussée à φ o (1 + φ ɛ0 ), φ ɛ0 ]0, 1[. client 3 client 1 Cloud resources client 2 (φ (2) 0 ) client 4 (φ (4) 0 )
Application au cloud computing Outil : l optimisation PHASE D ETEINTE ET ALLUMAGE DES MACHINES Problème d optimisation Trouver la capacité φ n o au temps t n qui réalise : J n (φ o) = (n+1) t n t Min φ o ]0;φo]J n(φ o) (D(t, φ o) T min ) 2 + (D(t, φ o) T max ) 2 dt
Application au cloud computing Résultat sur un client φi (t) (requests/mn) Requests input rate 140 120 100 80 60 40 20 0 0 3 6 9 12 15 18 21 24 t (hours) input D(t) (mn) Response times 0.1 0.08 0.06 0.04 0.02 0 0 3 6 9 12 15 18 21 24 t (hours) fixed elastic Tmin Tmax Figure: Capacity optimization influence.
Application au cloud computing Que faire pour plusieurs clients Cloud resources Cloud resources client 1 extra Free VM client 2 extra Free VM client 2 client 2 extra client 1 extra client 1 client 2 client 1
Application au cloud computing Résultats sur plusieurs clients φi (t) (requests/mn) Requests input rate 140 120 100 80 60 40 20 0 0 3 6 9 12 15 18 21 24 t (hours) client 0 client 1 φo(t) (requests/mn) Capacity evolution 140 120 100 80 60 40 20 0 0 3 6 9 12 15 18 21 24 t (hours) client 0 client 1 D(t) (mn) Response times 1 0.1 0.01 client 0 client 1 Tmin Tmax 0 3 6 9 12 15 18 21 24 t (hours)
Application au cloud computing Arrêter des requêtes trop longues 1 But : Laisser tomber les requêtes trop longues. 2 Notations : τ = τ(t) le ratio de requêtes abandonnées. τ = 0 quand D(t) T th et est une constante positive sinon. T th le seuil. Modified PDE model t ρ + v(t) x ρ = τ(t)ρ, x ]0, 1[, t > 0 v(t) = φ o max(1, m(t))
Application au cloud computing Arrêter des requêtes trop longues Modified PDE model t ρ + v(t) x ρ = τ(t)ρ, x ]0, 1[, t > 0 t m = φ i (t) ρ(1, t)v(t) τ(t)m(t) v(t) = φ o max(1, m(t))
Application au cloud computing Arrêter des requêtes trop longues Modified PDE model t ρ + v(t) x ρ = τ(t)ρ, x ]0, 1[, t > 0 t m = φ i (t) ρ(1, t)v(t) τ(t)m(t) v(t) = φ o max(1, m(t)) ρ(x, 0) = ρ 0 (x) m(0) = 1 0 ρ 0 (x)dx 0 ρ(0, t)v(t) = φ i (t)
Application au cloud computing Influence de la suppression de requêtes φi (t) (requests/mn) φo(t) (requests/mn) Requests input rate 140 120 100 80 60 40 20 0 0 3 6 9 12 15 18 21 24 t (hours) Capacity evolution 140 120 100 80 60 40 20 0 0 3 6 9 12 15 18 21 24 t (hours) Response times input τ = 0 τ = 1 τ = 10 τ = 100 τ = 1000 D(t) (mn) 0.1 0.01 0 3 6 9 12 15 18 21 24 t (hours) Tmin Tmax Tth
Application au cloud computing Response times D(t) (mn) 0.1 τ = 0 τ = 1 τ = 10 τ = 100 τ = 1000 Tmin Tmax Tth 0.01 6 8 10 12 14 16 18 20 Figure: Influence of requests cessation, T th = 3T max, detail
Application au cloud computing Dimensionnement du client Comment attribuer un nombre initial de machines au client? Achat = Prévision d input. Lancer le code sur cette prévision. Retenir la capacité maximale utilisée.
Conclusion A retenir EDP : Outil pour modéliser une infinité de problèmes physiques. En général, impossible d en expliciter la solution. Outil de simulation, approximation de ces solutions : analyse numérique. Etapes : modélisation, approximation numérique, représentation graphique. MERCI DE VOTRE ATTENTION!