Conception, réalisation et évaluation d'un processeur symbolique
Institution:
Toulouse 3Disciplines:
Directors:
Abstract EN:
Pas de résumé disponible.
Abstract FR:
Le langage prolog permet la realisation rapide et fiable d'applications en intelligence artificielle, en bases de donnees et en traitements non numeriques complexes souvent non deterministes. L'implantation de prolog sur des machines conventionnelles souffre d'un manque de performances essentiellement du au traitement d'informations symboliques et au controle d'execution inherent au langage. Prolog, plus que tout autre langage, offre de multiples opportunites pour developper une structure materielle optimisant son execution. Cette these se propose de montrer ces opportunites, des choix de conception possibles et des implantations, qui seront evalues et compares. On commence par l'expose d'une machine de base, icm3, qui introduit des concepts essentiels a l'execution optimale de prolog: controle et chemins de donnees prenant en compte des operations primitives telles que l'unification, le backtracking, etc. , et les donnees taggees. Des resultats de simulations realisees pour evaluer cette architecture sont presentes. De cette experience, une seconde architecture, plus operationnelle et plus performante, a ete definie et realisee dans le cadre du projet kcm (knowledge crunching machine). Trois prototypes, puis 50 machines de preserie ont ete realises, sous la forme d'un systeme back-end connecte a une station de travail. Une evaluation de kcm montre, en la comparant a d'autres machines specialisees ou a des implantations purement logicielles, sa superiorite en performance: kcm permet, pour la premiere fois, a une station de travail de franchir la barriere du million d'inferences logiques par seconde (mlips). Puis une etude quantifie le gain en performance de chacun des choix architecturaux et explique d'ou kcm tire sa puissance. Cela permet de valider les choix presentes auparavant et donne des idees d'ameliorations possibles. On constate en particulier la sensibilite de la machine a son systeme memoire. Une etude du comportement memoire specifique a prolog est donc faite et des solutions adaptees sont presentees