Elements of Design for Containers and Solutions in the LinBox Library - Archive ouverte HAL
Communication Dans Un Congrès Année : 2014

Elements of Design for Containers and Solutions in the LinBox Library

Résumé

We describe in this paper new design techniques used in the C++ exact linear algebra library LinBox, intended to make the library safer and easier to use, while keeping it generic and efficient. First, we review the new simplified structure for containers, based on our founding scope allocation model. We explain design choices and their impact on coding: unification of our matrix classes, clearer model for matrices and submatrices, etc. Then we present a variation of the strategy design pattern that is comprised of a controller--plugin system: the controller (solution) chooses among plug-ins (algorithms) that always call back the controllers for subtasks. We give examples using the solution mul. Finally we present a benchmark architecture that serves two purposes: Providing the user with easier ways to produce graphs; Creating a framework for automatically tuning the library and supporting regression testing.
Fichier principal
Vignette du fichier
axiv.pdf (158.77 Ko) Télécharger le fichier
Origine Fichiers produits par l'(les) auteur(s)
Loading...

Dates et versions

hal-01015138 , version 1 (25-06-2014)

Identifiants

Citer

Brice Boyer, Jean-Guillaume Dumas, Pascal Giorgi, Clément Pernet, B. David Saunders. Elements of Design for Containers and Solutions in the LinBox Library. ICMS: International Congress on Mathematical Software, Aug 2014, Seoul, South Korea. pp.654-662, ⟨10.1007/978-3-662-44199-2_98⟩. ⟨hal-01015138⟩
892 Consultations
275 Téléchargements

Altmetric

Partager

More