38 research outputs found

    Improving the Numerical Accuracy of High Performance Computing Programs by Process Specialization

    Get PDF
    In high performance computing, nearly all the implementations and published experiments use floating-point arithmetic. However, since floating-point numbers are finite approximations of real numbers, it may result in hazards because of the accumulated errors. These round-off errors may cause damages whose gravity varies depending on the critical level of the application. To deal with this issue, we have developed a tool which improves the numerical accuracy of computations by automatically transforming programs in a source-to-source manner. Our transformation, relies on static analysis by abstract interpretation and operates on pieces of code with assignments, conditionals, loops, functions and arrays. In this article, we apply our techniques to optimize a parallel program representative of the high performance computing domain. Parallelism introduces new numerical accuracy problems due to the order of operations in this kind of systems. We are also interested in studying the compromise between execution time and numerical accuracy

    Karyological analyses in several Algerian populations of six species of the genus Vicia L. (Fabaceae)

    Get PDF
    As part of the evaluation and valorization of plant genetic resources of fodder and pastoral interest in Algeria, seventeen (17) natural populations belonging to six (06) species of the genus Vicia (Vicia sativa, Vicia disperma, Vicia monardii, Vicia ohchroleuca, Vicia onobrychioides and Vicia lutea), originated from different ecological regions in the North-Eastern of the country, were considered. The populations have been the subject of mitotic and meiotic studies. Haploid and diploid numbers and chromosome measurements were determined. Original results were observed for the first time in some species. In fact, chromosome counts have revealed some new chromosome numbers. The first number (2n=14, n=7) was observed in the endemic subspecies of Algeria, V. ochroleuca subsp. atlantica and in the species Vicia onobrychioides. The second number (n=6) was observed in the species Vicia disperma. Within Vicia monardii, the three new chromosome numbers, previously observed only in mitosis by our research team, were confirmed for the first time through the present meiosis study (n=6, 7 and 8), indicating that they are A type chromosomes. The base number x=7 is the most frequently observed number in the six Vicia species. The observed chromosome numbers would be related to some ecological factors (altitude, rainfall) of the origin environment of the populations. Chromosome measurements and established karyotypes were determined for the first time in V. monardii, V. onobrychioides and V. ochroleuca subsp. atlantica. Chromosome size and karyotype formula are variable among the studied species and subspecies. Karyotypes vary from symmetrical to asymmetrical and the intrachromosomal asymmetry is higher than interchromosomal one. The new cytogenetic data would contribute to a better understanding of the evolution mechanism of the species in the genus Vicia L

    Optoelectronic Lab-on-chip on lithium niobate

    No full text
    Les travaux de cette thèse s’inscrivent dans un projet de développement d’un Lab-On-Chip destiné à la biodétection. Les plateformes conçues sont basées sur des circuits optiques intégrés sur niobate de lithium. La particularité de ces circuits est qu’ils intègrent le phénomène d’interférence à la fonction de guidage des ondes lumineuses.La fonction d’interférométrie est assurée grâce à une cavité Fabry-Pérot intégrée à un guide d’onde rectiligne et à une structure Mach-Zehnder. Lorsque la surface des supports de ces circuits est bio-fonctionnalisée, ces microsystèmes deviennent sensibles à des molécules cibles. Cette sensibilité se traduit par une variation de l’indice effectifde l’onde en propagation par couplage évanescent modifiant ainsi les conditions de résonance du résonateur Fabry-Pérot. Le vrai challenge de ce travail réside essentiellement dans la bio-fonctionnalisation du niobate de lithium.A notre connaissance, ce matériau favori en optique guidée grâce à ses propriétés physiques exceptionnelles n’a été que rarement sujet à des modifications chimiques de surface. L’implantation réussie de groupements fonctionnels amines à la surface de ce matériau a permis de générer un lien covalent entre ce support et les groupements fonctionnels des molécules sondes. En raison de la grande affinité entre l’avidine et la biotine, ce couple a servi de modèle pour la mise au point de ces bio-capteurs. Un suivi en temps réel des interactions à la surface était rendu possible par une expérimentation sur l’un des bio-capteurs.The work of this thesis is part of a project of a Lab-On-Chip development intended for biosensing. The de-signed platforms are based on integrated optical circuits on lithium niobate. The peculiarity of these circuits isthat they incorporate the phenomenon of interference with the function of guiding light waves. The interferometricfunction is provided by a Fabry-Perot cavity embedded in a straight waveguide and a Mach-Zehnder structure.When the surface of these circuits substrates is biofunctionalized, these microsystems become sensitive to targetmolecules. This sensitivity results in a variation of the effective index of the propagation wave by evanescent cou-pling and modifying the resonance conditions of the Fabry-Perot resonator. The real challenge of this work liesin the biofunctionalization of lithium niobate. To our knowledge, this guided optics favorite material thanks toits exceptional physical properties has been hitherto rarely subject to chemical surface modifications. Successfulimplementation of amino functions on the surface of this material has generating a covalent bond between thissubstrate and the functional groups of the probe molecules. Due to the high affinity between avidin and biotin, thiscouple served as a model for the development of biosensors. A real-time monitoring of surface interactions wasmade possible by experimentation on one of biosensors

    Improving the numerical accuracy of parallel programs

    No full text
    Les nombres flottants sont utilisés à la place des nombres réels pour les calculs sur ordinateurs. L'utilisation de ces nombres introduit des erreurs d'arrondi qui sont en général acceptables dans la mesure où le résultat produit par la machine est proche de celui que l'on aurait obtenu en utilisant des nombres réels. Cependant, elles peuvent aussi être amplifiées par propagation, dénuant de sens le résultat d'un calcul, ce qui peut avoir des conséquences catastrophiques dans de nombreux domaines d'application comme par exemple l'aéronautique ou la finance. La précision des calculs en nombres flottants dépend de nombreux facteurs: types d'opérations effectuées, valeurs et types de données employés, ordinateurs utilisés. En outre, la précision des calculs dépend fortement de l'ordre dans lequel sont effectuées les opérations et le parallélisme démultiplie les ordonnancements possibles. Le sujet de thèse proposé concerne ce dernier point : améliorer la précision de codes de calcul scientifique massivement parallèles tels que ce que l'on trouve dans le domaine du HPC (High Performance Computing) Ces dernières années, des techniques automatiques ont été mises au point afin de valider et réécrire les codes de calcul scientifique afin de les rendre plus précis. Ces techniques rencontrent un vif intérêt tant scientifique qu'industriel. Cependant les techniques existantes acceptent uniquement des programmes séquentiels ce qui exclut les nombreux codes de calcul intensif développés dans le domaine du HPC. Or ces codes parallèles, utilisés pour réaliser des simulations numériques complexes dans de nombreux domaines scientifiques et techniques, sont particulièrement sujets aux erreurs introduites par les nombres flottants car le parallélisme modifie l'ordre dans lequel sont effectués les calculs, voire rend cet ordre aléatoire. Les résultats obtenus peuvent alors être altérés ou non reproductibles (plusieurs si mulations identiques donnant des résultats différents).In high performance computing, nearly all the implementations and published experiments use foating-point arithmetic. However, since foating-point numbers are finite approximations of real numbers, it may result in hazards because of the accumulated errors.These round-off errors may cause damages whose gravity varies depending on the critical level of the application. Parallelism introduces new numerical accuracy problems due to the order of operations in this kind of systems. The proposed thesis subject concerns this last point: improving the precision of massively parallel scientific computing codes such as those found in the field of HPC (High Performance Computing)

    Optimisation de la précision numérique des codes parallèles

    No full text
    In high performance computing, nearly all the implementations and published experiments use foating-point arithmetic. However, since foating-point numbers are finite approximations of real numbers, it may result in hazards because of the accumulated errors.These round-off errors may cause damages whose gravity varies depending on the critical level of the application. Parallelism introduces new numerical accuracy problems due to the order of operations in this kind of systems. The proposed thesis subject concerns this last point: improving the precision of massively parallel scientific computing codes such as those found in the field of HPC (High Performance Computing).Les nombres flottants sont utilisés à la place des nombres réels pour les calculs sur ordinateurs. L'utilisation de ces nombres introduit des erreurs d'arrondi qui sont en général acceptables dans la mesure où le résultat produit par la machine est proche de celui que l'on aurait obtenu en utilisant des nombres réels. Cependant, elles peuvent aussi être amplifiées par propagation, dénuant de sens le résultat d'un calcul, ce qui peut avoir des conséquences catastrophiques dans de nombreux domaines d'application comme par exemple l'aéronautique ou la finance. La précision des calculs en nombres flottants dépend de nombreux facteurs: types d'opérations effectuées, valeurs et types de données employés, ordinateurs utilisés. En outre, la précision des calculs dépend fortement de l'ordre dans lequel sont effectuées les opérations et le parallélisme démultiplie les ordonnancements possibles. Le sujet de thèse proposé concerne ce dernier point : améliorer la précision de codes de calcul scientifique massivement parallèles tels que ce que l'on trouve dans le domaine du HPC (High Performance Computing) Ces dernières années, des techniques automatiques ont été mises au point afin de valider et réécrire les codes de calcul scientifique afin de les rendre plus précis. Ces techniques rencontrent un vif intérêt tant scientifique qu'industriel. Cependant les techniques existantes acceptent uniquement des programmes séquentiels ce qui exclut les nombreux codes de calcul intensif développés dans le domaine du HPC. Or ces codes parallèles, utilisés pour réaliser des simulations numériques complexes dans de nombreux domaines scientifiques et techniques, sont particulièrement sujets aux erreurs introduites par les nombres flottants car le parallélisme modifie l'ordre dans lequel sont effectués les calculs, voire rend cet ordre aléatoire. Les résultats obtenus peuvent alors être altérés ou non reproductibles (plusieurs si mulations identiques donnant des résultats différents)

    Optimisation de la précision numérique des codes parallèles

    No full text
    In high performance computing, nearly all the implementations and published experiments use foating-point arithmetic. However, since foating-point numbers are finite approximations of real numbers, it may result in hazards because of the accumulated errors.These round-off errors may cause damages whose gravity varies depending on the critical level of the application. Parallelism introduces new numerical accuracy problems due to the order of operations in this kind of systems. The proposed thesis subject concerns this last point: improving the precision of massively parallel scientific computing codes such as those found in the field of HPC (High Performance Computing).Les nombres flottants sont utilisés à la place des nombres réels pour les calculs sur ordinateurs. L'utilisation de ces nombres introduit des erreurs d'arrondi qui sont en général acceptables dans la mesure où le résultat produit par la machine est proche de celui que l'on aurait obtenu en utilisant des nombres réels. Cependant, elles peuvent aussi être amplifiées par propagation, dénuant de sens le résultat d'un calcul, ce qui peut avoir des conséquences catastrophiques dans de nombreux domaines d'application comme par exemple l'aéronautique ou la finance. La précision des calculs en nombres flottants dépend de nombreux facteurs: types d'opérations effectuées, valeurs et types de données employés, ordinateurs utilisés. En outre, la précision des calculs dépend fortement de l'ordre dans lequel sont effectuées les opérations et le parallélisme démultiplie les ordonnancements possibles. Le sujet de thèse proposé concerne ce dernier point : améliorer la précision de codes de calcul scientifique massivement parallèles tels que ce que l'on trouve dans le domaine du HPC (High Performance Computing) Ces dernières années, des techniques automatiques ont été mises au point afin de valider et réécrire les codes de calcul scientifique afin de les rendre plus précis. Ces techniques rencontrent un vif intérêt tant scientifique qu'industriel. Cependant les techniques existantes acceptent uniquement des programmes séquentiels ce qui exclut les nombreux codes de calcul intensif développés dans le domaine du HPC. Or ces codes parallèles, utilisés pour réaliser des simulations numériques complexes dans de nombreux domaines scientifiques et techniques, sont particulièrement sujets aux erreurs introduites par les nombres flottants car le parallélisme modifie l'ordre dans lequel sont effectués les calculs, voire rend cet ordre aléatoire. Les résultats obtenus peuvent alors être altérés ou non reproductibles (plusieurs si mulations identiques donnant des résultats différents)

    MĂ©thodologies de conception pour multiprocesseurs sur circuits logiques programmables

    No full text
    The continuous increase of capacity integration on one side, the exponential increase of embedded application complexity on the other side led to system on chip (SoC) then to multiprocessor system on chip (MPSoC). The fundamental problem associated with the large scale system on chip is the one of design methodologies and the resulting design productivity crisis preventing efficient exploitation of these circuits. This design productivity crisis is the result of ad-hoc and manual design while the problem should be established as a multiobjective optimization problem which should be solved by automated optimization techniques. In this PhD thesis, we present a design methodology for multiprocessor systems on chip implementation on programmable circuits, whose originality is based on three main points: (1) multiobjective evolutionary algorithm based exploration of the design space in order to undertake an intelligent solution search, (2) the use of programmable logic circuits for fast performance evaluation through emulation which is far superior to simulation and finally (3) the use of MPSoC synthesis from a high level parallel programming language (Occam) and a monitoring on chip framework. Case studies on circuit's implementations prove the efficiency of such a design methodology to solve the problem of the design productivity crisis.L'augmentation continue de la capacité d'intégration d'une part, la complexité croissante des applications embarquées d'autre part, ont conduit aux systèmes sur puce (SoC) puis aux systèmes multiprocesseurs sur puce (MPSoC). Le problème fondamental associé à ces systèmes sur puces de grande taille est celui des méthodologies de conception et de la crise de productivité en résultant ne permettant pas d'exploiter de manière efficace ces circuits. Cette crise de productivité est le résultat d'approches ad-hoc et manuelle de la conception alors que le problème doit être posé comme un problème d'optimisation multi-objectif dont la résolution doit faire appel à des techniques d'optimisation automatique. Dans cette thèse, nous présentons une méthodologie de conception pour les systèmes multiprocesseurs sur circuits logiques programmables, dont l'originalité porte sur trois aspects : (1) l'exploration évolutionnaire multi objectif de l'espace de conception afin de mener une recherche intelligente, (2) l'utilisation des circuits logiques programmables de grande taille pour l'évaluation rapide par émulation largement supérieure à la simulation, et enfin (3) l'utilisation de la synthèse MPSoC depuis un langage de programmation parallèle haut niveau (Occam) et de la prise en compte du monitoring sur puce. Des cas d'études sur circuits ont démontré l'efficacité d'une telle méthodologie pour résoudre le problème de la crise de productivité de la conception

    Economic Evaluations Of Glioblastoma

    No full text

    MĂ©thodologies de conception pour multiprocesseurs sur circuits logiques programmables

    No full text
    L'augmentation continue de la capacité d'intégration d'une part, la complexité croissante des applications embarquées d'autre part, ont conduit aux systèmes sur puce (SoC) puis aux systèmes multiprocesseurs sur puce (MPSoC). Le problème fondamental associé à ces systèmes sur puces de grande taille est celui des méthodologies de conception et de la crise de productivité en résultant ne permettant pas d'exploiter de manière efficace ces circuits. Cette crise de productivité est le résultat d'approches ad-hoc et manuelle de la conception alors que le problème doit être posé comme un problème d'optimisation multi-objectif dont la résolution doit faire appel à des techniques d'optimisation automatique. Dans cette thèse, nous présentons une méthodologie de conception pour les systèmes multiprocesseurs sur circuits logiques programmables, dont l'originalité porte sur trois aspects : (1) l'exploration évolutionnaire multi objectif de l'espace de conception afin de mener une recherche intelligente, (2) l'utilisation des circuits logiques programmables de grande taille pour l'évaluation rapide par émulation largement supérieure à la simulation, et enfin (3) l'utilisation de la synthèse MPSoC depuis un langage de programmation parallèle haut niveau (Occam) et de la prise en compte du monitoring sur puce. Des cas d'études sur circuits ont démontré l'efficacité d'une telle méthodologie pour résoudre le problème de la crise de productivité de la conception.The continuous increase of capacity integration on one side, the exponential increase of embedded application complexity on the other side led to system on chip (SoC) then to multiprocessor system on chip (MPSoC). The fundamental problem associated with the large-scale system on chip is the one of design methodologies and the resulting design productivity crisis preventing efficient exploitation of these circuits. This design productivity crisis is the result of ad-hoc and manual design while the problem should be established as a multiobjective optimization problem which should be solved by automated optimization techniques. In this PhD thesis, we present a design methodology for multiprocessor systems on chip implementation on programmable circuits, whose originality is based on three main points: (1) Multiobjective evolutionary algorithm based exploration of the design space in order to undertake an intelligent solution search, (2) the use of programmable logic circuits for fast performance evaluation through emulation which is far superior to simulation and finally (3) the use of MPSoC synthesis from a high level parallel programming language (Occam) and a monitoring on chip framework. Case studies on circuit s implementations prove the efficiency of such a design methodology to solve the problem of the design productivity crisis.ORSAY-PARIS 11-BU Sciences (914712101) / SudocSudocFranceF
    corecore