Efficient computation with structured matrices and arithmetic expressions

Designing efficient code in practice for a given computation is a hard task. In this thesis, we tackle this issue in two different situations. The first part of the thesis introduces some algorithmic improvements in structured linear algebra. We first show how to extend an algorithm by Cardinal for...

Full description

Bibliographic Details
Main Author: Mouilleron, Christophe
Language:ENG
Published: Ecole normale supérieure de lyon - ENS LYON 2011
Subjects:
Online Access:http://tel.archives-ouvertes.fr/tel-00688388
http://tel.archives-ouvertes.fr/docs/00/68/83/88/PDF/MOUILLERON_Christophe_2011_These.pdf
id ndltd-CCSD-oai-tel.archives-ouvertes.fr-tel-00688388
record_format oai_dc
spelling ndltd-CCSD-oai-tel.archives-ouvertes.fr-tel-006883882013-11-06T03:20:49Z http://tel.archives-ouvertes.fr/tel-00688388 2011ENSL0652 http://tel.archives-ouvertes.fr/docs/00/68/83/88/PDF/MOUILLERON_Christophe_2011_These.pdf Efficient computation with structured matrices and arithmetic expressions Mouilleron, Christophe [INFO:INFO_OH] Computer Science/Other Structured linear algebra Matrix product Matrix inversion Arithmetic expressions Code generation Combinatorics and optimization of evaluation schemes Designing efficient code in practice for a given computation is a hard task. In this thesis, we tackle this issue in two different situations. The first part of the thesis introduces some algorithmic improvements in structured linear algebra. We first show how to extend an algorithm by Cardinal for inverting Cauchy-like matrices to the other common structures. This approach, which mainly relies on products of the type "structured matrix × matrix", leads to a theoretical speed-up of a factor up to 7 that we also observe in practice. Then, we extend some works on Toeplitz-like matrices and prove that, for any of the common structures, the product of an n×n structured matrix of displacement rank α by an n×α matrix can be computed in Õ(α^(ω-1)n). This leads to direct inversion algorithms in Õ(α^(ω-1)n) , that do not rely on a reduction to the Toeplitz-like case. The second part of the thesis deals with the implementation of arithmetic expressions. This topic raises several issues like finding the minimum number of operations, and maximizing the speed or the accuracy when using some finite-precision arithmetic. Making use of the inductive nature of arithmetic expressions enables the design of algorithms that help to answer such questions. We thus present a set of algorithms for generating evaluation schemes, counting them, and optimizing them according to one or several criteria. These algorithms are part of a library that we have developed and used, among other things, in order to decrease the running time of a code generator for a mathematical library, and to study optimality issues about the evaluation of a small degree polynomial with scalar coefficients at a matrix point. 2011-11-04 ENG PhD thesis Ecole normale supérieure de lyon - ENS LYON
collection NDLTD
language ENG
sources NDLTD
topic [INFO:INFO_OH] Computer Science/Other
Structured linear algebra
Matrix product
Matrix inversion
Arithmetic expressions
Code generation
Combinatorics and optimization of evaluation schemes
spellingShingle [INFO:INFO_OH] Computer Science/Other
Structured linear algebra
Matrix product
Matrix inversion
Arithmetic expressions
Code generation
Combinatorics and optimization of evaluation schemes
Mouilleron, Christophe
Efficient computation with structured matrices and arithmetic expressions
description Designing efficient code in practice for a given computation is a hard task. In this thesis, we tackle this issue in two different situations. The first part of the thesis introduces some algorithmic improvements in structured linear algebra. We first show how to extend an algorithm by Cardinal for inverting Cauchy-like matrices to the other common structures. This approach, which mainly relies on products of the type "structured matrix × matrix", leads to a theoretical speed-up of a factor up to 7 that we also observe in practice. Then, we extend some works on Toeplitz-like matrices and prove that, for any of the common structures, the product of an n×n structured matrix of displacement rank α by an n×α matrix can be computed in Õ(α^(ω-1)n). This leads to direct inversion algorithms in Õ(α^(ω-1)n) , that do not rely on a reduction to the Toeplitz-like case. The second part of the thesis deals with the implementation of arithmetic expressions. This topic raises several issues like finding the minimum number of operations, and maximizing the speed or the accuracy when using some finite-precision arithmetic. Making use of the inductive nature of arithmetic expressions enables the design of algorithms that help to answer such questions. We thus present a set of algorithms for generating evaluation schemes, counting them, and optimizing them according to one or several criteria. These algorithms are part of a library that we have developed and used, among other things, in order to decrease the running time of a code generator for a mathematical library, and to study optimality issues about the evaluation of a small degree polynomial with scalar coefficients at a matrix point.
author Mouilleron, Christophe
author_facet Mouilleron, Christophe
author_sort Mouilleron, Christophe
title Efficient computation with structured matrices and arithmetic expressions
title_short Efficient computation with structured matrices and arithmetic expressions
title_full Efficient computation with structured matrices and arithmetic expressions
title_fullStr Efficient computation with structured matrices and arithmetic expressions
title_full_unstemmed Efficient computation with structured matrices and arithmetic expressions
title_sort efficient computation with structured matrices and arithmetic expressions
publisher Ecole normale supérieure de lyon - ENS LYON
publishDate 2011
url http://tel.archives-ouvertes.fr/tel-00688388
http://tel.archives-ouvertes.fr/docs/00/68/83/88/PDF/MOUILLERON_Christophe_2011_These.pdf
work_keys_str_mv AT mouilleronchristophe efficientcomputationwithstructuredmatricesandarithmeticexpressions
_version_ 1716612704492322816