Avancement de TLSE ReDploiement avec TUNE Description smantique

  • Slides: 22
Download presentation
Avancement de TLSE (Re)Déploiement avec TUNE Description sémantique des services F. Camillo, M. Daydé

Avancement de TLSE (Re)Déploiement avec TUNE Description sémantique des services F. Camillo, M. Daydé & D. Hagimont IRIT – INPT / ENSEEIHT

(Re)déploiement avec TUNE (ex JADE) : expérimentations autour de DIET D. Hagimont

(Re)déploiement avec TUNE (ex JADE) : expérimentations autour de DIET D. Hagimont

Tune Définition des wrappers n n n Langage de définition des wrappers Wrapper =

Tune Définition des wrappers n n n Langage de définition des wrappers Wrapper = composants Fractal permettant le contrôle d'un logiciel Permet d'exporter des interfaces de contrôle 3

Tune Définition des wrappers 4

Tune Définition des wrappers 4

Tune Description d'une architecture n n Diagramme de classe dans un profil UML •

Tune Description d'une architecture n n Diagramme de classe dans un profil UML • Plus intuitif Description par intension vs extension • Décrit un patron d'architecture • Donne le nombre de serveurs lancés 5

Tune Description d'une architecture 6

Tune Description d'une architecture 6

Tune Description des reconfigurations n n Diagramme d'état dans un profil UML (automate) •

Tune Description des reconfigurations n n Diagramme d'état dans un profil UML (automate) • Respecte le patron (cohérence de l'architecture) Décrit un workflow d'opérations sur les élements du diagramme de classes • Utilise les interfaces de contrôle des wrappers n Exemples simples • Workflow de démarrage de l'architecture • Réparation sur panne d'un serveur n Travail sur la sémantique de ces diagrammes (de classe et d'état) 7

Tune Workflow de démarrage 8

Tune Workflow de démarrage 8

Tune Workflow de réparation 9

Tune Workflow de réparation 9

Avancement de la plate-forme TLSE n n Ouverture partielle sur http: //tlse. enseeiht. fr

Avancement de la plate-forme TLSE n n Ouverture partielle sur http: //tlse. enseeiht. fr Gestion des matrices : • Upload / download • Service de calcul : validation des matrices n Bibliographie • Upload / download • Affichage (détaillé, bibtex) • Gestion des bibtex (formatage des clés, vérif, merge, recherche par critère, …)

Semantic-based Service trading: Application to Linear Algebra H. Astsatryan, E. Caron, M. Daydé, A.

Semantic-based Service trading: Application to Linear Algebra H. Astsatryan, E. Caron, M. Daydé, A. Hurault, M. Pantel

Problématique n Problem: • Find the best service or composition of services available on

Problématique n Problem: • Find the best service or composition of services available on the grid to answer a user request. n Context: • Mathematical software libraries: performance(minimise the number of elementary operations, the execution time, the memory needed, . . . ). • Complex services combining all the possible and pertinent elementary services:

Approches possibles n Solutions: • Write wrappers for elementary services and all their combinations:

Approches possibles n Solutions: • Write wrappers for elementary services and all their combinations: high development and maintenance costs; • Use the whole service and rely on mathematical properties to find the appropriate values for the parameters. n Constraints: • The user of the framework does not have to know anything about the underlying technologies used in the trading algorithm; • The domain will be defined with an algebraic data type. It must not be too complex to achieve reasonable trading time (inductive definition should be avoided).

Description of services n Existing solutions: • Signature based (e. g. IDL, WSDL): cannot

Description of services n Existing solutions: • Signature based (e. g. IDL, WSDL): cannot distinguish add from mult • Keyword based (e. g. Corba, UDDI) but meaning of keywords • Ontology based (e. g. OWL, …): control of proof engine n Algebraic specification based approach. • Example : Math. ML, Open. Math, algebraic data types (order sorted). • Advantage : Formal (complete and unambiguous) description of the mathematical structures and operators properties.

Example of description: Linear Algebra n n n Sortes: Int, Nz. Int < Int,

Example of description: Linear Algebra n n n Sortes: Int, Nz. Int < Int, Real, Nz. Real < Real, Char, Matrix, Inv. Matrix < Matrix, Symetric. Matrix < Matrix, Triangular. Matrix < Matrix, . . . Operators: • • n +: Matrix ×Matrix !Matrix, Symetric. Matrix ×Symetric. Matrix !Symetric. Matrix, . . . *: Matrix ×Matrix !Matrix, Real ×Matrix !Matrix, Symetric. Matrix ×Symetric. Matrix !Symetric. Matrix, Real. Nz. Int ×Inv. Matrix !Inv. Matrix, . . . − 1, T , factorisation, . . . Constants: 1 : Nz. Int, 0 : Int, 1. 0 : Nz. Real, 0. 0 : Real, I : Inv. Matrix, O : Matrix, . . . Properties: • • • +: commutative and associative *: associative a : Matrix I a = a a, b, c : Matrix a (b+c) = a b+a c a : Matrix a a− 1 = I. . .

The trading algorithm n Based on equational unification. • Unification: u = f (a,

The trading algorithm n Based on equational unification. • Unification: u = f (a, x), v = f (y, b) : s = {x !a, y !b} unifier of u and v (s(u) = s(v)). • E-unification: u = f (a, x), v = g(y, b), E = {f (a, b) = g(a, b)} : s = {x !a, y !b} E-unifier of u and v (s(u) =E s(v)). • Undecidable, infinite set of solutions, infinite solutions. n n Proven to be sound. Breath first search controlled by cost parameters: • depth of combination; • number of equations allowed to be applied. n Can be run stage by stage, providing more energy at each stage.

Examples: Linear Algebra Services: n BLAS • SGEMM performs one of the matrix-matrix operations:

Examples: Linear Algebra Services: n BLAS • SGEMM performs one of the matrix-matrix operations: C=aop(A)op(B)+b. Cwhere a and b are scalars, op(A) and op(B) are rectangular matrices of dimensions m×k and k×n, respectively, C is a m × n matrix, and op(A) is A or AT. • STRSM solves one of the matrix equations: AX=a. B, AT X=a. B, XA=a. B, or XAT =a. B where a is a scalar, X and B are m × n matrices and A is a unit, or non-unit, upper or lower triangular matrix. B is overwritten by X. n LAPACK • • SLASWP, row interchanges SPOTRF, Cholesky factorisation SGETRF, LU factorisation. . .

Example 1 n n n Request: A : Matrix, B : Matrix, C :

Example 1 n n n Request: A : Matrix, B : Matrix, C : Matrix C=A*B*C One combination of services computed by the trader is: Matrix p 2=Any x 1; SGEMM(’n’, m? , n? , k? , 1. , B, lda? , C, ldb? , 0. , p 2, ldc ? ); Matrix p 1=Any x 1; SGEMM(’n’, m? , n? , k? , 1. , A, lda? , p 2, ldb? , 0. , p 1, ld c? ); p 1; where Any x 1 can be any matrix.

Example 2 n n Request: The user wants to solve the linear system with

Example 2 n n Request: The user wants to solve the linear system with multiple right-hand side members Ax = B (where no property is known about A). One answer computed by the trader is: Inv. Matrix p 2=A; Vector p 6=ipiv? ; SGETRF(m? , n? , p 2, lda? , p 6, info? ); Matrix p 5=B; SLASWP(n? , p 5, lda? , k 1? , k 2? , p 6, incx? ); Matrix p 3=p 5; STRSM(’l’, ’n’, u? , m? , n? , 1. , p 2, lda? , p 3, ldb? ); Matrix p 1=p 3; STRSM(’l’, ’u’, ’n’, u? , m? , n? , 1. , p 2, lda? , p 1, ldb? ); p 1;

Example 3 n n Request: Same request as previously but now A is a

Example 3 n n Request: Same request as previously but now A is a symmetric positive definite matrix. The trader computes the following compositions of services: Sym. Def. Pos. Matrix p 2=A: Sym. Def. Pos. Matrix ; Vector p 6=ipiv? ; SGETRF(m? , n? , p 2, lda? , p 6, info? ); Matrix p 5=B; SLASWP(n? , p 5, lda? , k 1? , k 2? , p 6, incx? ); Matrix p 3=p 5; STRSM(’l’, ’n’, diag? , m? , n? , 1. , p 2, lda? , p 3, ldb? ); Matrix p 1=p 3; STRSM(’l’, ’u’, ’n’, diag? , m? , n? , 1. , p 2, lda? , p 1, ldb? ); p 1;

Issues to explore n n n Discarding solutions without interest Heuristics for identifying most

Issues to explore n n n Discarding solutions without interest Heuristics for identifying most relevant solutions Interactions with middleware • Available services and up-to-date information • Evaluation of solutions found by the midleware

Conclusion and Perspectives n Conclusion: • A prototype which implements the trading algorithm is

Conclusion and Perspectives n Conclusion: • A prototype which implements the trading algorithm is operational, but requires performances improvements. n Perspectives: • Cooperation with National Academy of Sciences of Armenia • Integration in DIET. • Experiments with a web interface providing an environment for scientific computing • Later: SCILAB / DIET n Extension other areas: optimisation, images processing, process engineering, . .