1 / 22

Avancement de TLSE (Re)Déploiement avec TUNE Description sémantique des services

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. Tune Définition des wrappers. Langage de définition des wrappers

dleavitt
Télécharger la présentation

Avancement de TLSE (Re)Déploiement avec TUNE Description sémantique des services

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


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

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

  3. TuneDéfinition des wrappers • Langage de définition des wrappers • Wrapper = composants Fractal permettant le contrôle d'un logiciel • Permet d'exporter des interfaces de contrôle

  4. Tune Définition des wrappers

  5. TuneDescription d'une architecture • 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

  6. TuneDescription d'une architecture

  7. TuneDescription des reconfigurations • 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 • Exemples simples • Workflow de démarrage de l'architecture • Réparation sur panne d'un serveur • Travail sur la sémantique de ces diagrammes (de classe et d'état)

  8. TuneWorkflow de démarrage

  9. TuneWorkflow de réparation

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

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

  12. Problématique • Problem: • Find the best service or composition of services available on the grid to answer a user request. • 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:

  13. Approches possibles • 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. • 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).

  14. Description of services • 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 • Algebraic specification based approach. • Example : MathML, OpenMath, algebraic data types (order sorted). • Advantage : Formal (complete and unambiguous) description of the mathematical structures and operators properties.

  15. Example of description: Linear Algebra • Sortes: Int, NzInt < Int, Real, NzReal < Real, Char, Matrix, • InvMatrix < Matrix, SymetricMatrix < Matrix, TriangularMatrix < Matrix, . . . • Operators: • +: Matrix ×Matrix !Matrix, SymetricMatrix ×SymetricMatrix !SymetricMatrix, . . . • *: Matrix ×Matrix !Matrix, Real ×Matrix !Matrix, SymetricMatrix ×SymetricMatrix !SymetricMatrix, Real ×SymetricMatrix !SymetricMatrix,RealNzInt ×InvMatrix !InvMatrix, . . . • −1, T , factorisation, . . . • Constants: 1 : NzInt, 0 : Int, 1.0 : NzReal, 0.0 : Real, I : InvMatrix,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 • . . .

  16. The trading algorithm • 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. • Proven to be sound. • Breath first search controlled by cost parameters: • depth of combination; • number of equations allowed to be applied. • Can be run stage by stage, providing more energy at each stage.

  17. Examples: Linear Algebra Services: • BLAS • SGEMM performs one of the matrix-matrix operations: C=aop(A)op(B)+bCwhere 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=aB, AT X=aB, XA=aB, or XAT =aB 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. • LAPACK • SLASWP, row interchanges • SPOTRF, Cholesky factorisation • SGETRF, LU factorisation • . . .

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

  19. Example 2 • 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: InvMatrix p2=A; Vector p6=ipiv?; SGETRF(m?,n?,p2,lda?,p6,info?); Matrix p5=B; SLASWP(n?,p5,lda?,k1?,k2?,p6,incx?); Matrix p3=p5; STRSM(’l’,’l’,’n’,u?,m?,n?,1.,p2,lda?,p3,ldb?); Matrix p1=p3; STRSM(’l’,’u’,’n’,u?,m?,n?,1.,p2,lda?,p1,ldb?); p1;

  20. Example 3 • Request: Same request as previously but now A is a symmetric positive definite matrix. • The trader computes the following compositions of services: SymDefPosMatrix p2=A:SymDefPosMatrix ; Vector p6=ipiv?; SGETRF(m?,n?,p2,lda?,p6,info?); Matrix p5=B; SLASWP(n?,p5,lda?,k1?,k2?,p6,incx?); Matrix p3=p5; STRSM(’l’,’l’,’n’,diag?,m?,n?,1.,p2,lda?,p3,ldb?); Matrix p1=p3; STRSM(’l’,’u’,’n’,diag?,m?,n?,1.,p2,lda?,p1,ldb?); p1;

  21. Issues to explore • 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

  22. Conclusion and Perspectives • Conclusion: • A prototype which implements the trading algorithm is operational, but requires performances improvements. • 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 • Extension other areas: optimisation, images processing, process engineering,. . . .

More Related