Basic Linear Algebra Subprograms (BLAS) est un ensemble de fonctions standardisées (interface de programmation) réalisant des opérations de base de l'algèbre linéaire telles que des additions de vecteurs, des produits scalaires ou des multiplications de matrices. Ces fonctions ont d'abord été publiées en 1979 et sont utilisées dans des bibliothèques plus développées comme LAPACK. Largement utilisées pour le calcul haute performance, ces fonctions ont été développées de manière très optimisée par des constructeurs de calculateurs comme Intel et AMD, ou encore par d'autres auteurs ( BLAS et - une version portable de BLAS - en sont des exemples). Les tests de performance LINPACK utilisent massivement la fonction multiplication de matrices générales (DGEMM) de BLAS.
Jusqu'au début des années 1970, les codes de calcul rapide utilisaient des routines optimisées codées directement en langage machine pour l'évaluation de certaines fonctions. Entre 1972 et 1978, on identifia les fonctions les plus couramment appelées dans ces programmes. Ainsi, en 1964, alors qu'il travaillait sur le projet de l'IBM 7030, Sweeney rassembla des statistiques sur les calculs en virgule flottante les plus fréquemment exécutés sur les IBM 704, et s'aperçut que les sommations simples représentaient 11 % de l'ensemble. De ces programmes, on fit des routines à nom générique, afin de pouvoir les utiliser en « boîte noire » : ainsi, les programmes devenaient plus faciles à lire et à déboguer, tandis qu'on continuait à accélérer ces routines.
Certains ordinateurs permettaient d'accélérer les calculs d'opérations (sommes ou produits de nombres en virgule flottante) dès qu'on enchaînait plus d'une dizaine de ces opérations à la suite (architecture pipeline) ; d'autres, tels le RS/6000, disposaient d'une architecture leur permettant de calculer à la même vitesse (avec le même nombre de cycles d'horloge) un produit suivi d'une addition (xy +z), et un produit simple (xy) ou une addition (x + y) ; d'autres spécificités machines (présence de coprocesseurs, etc.
Cette page est générée automatiquement et peut contenir des informations qui ne sont pas correctes, complètes, à jour ou pertinentes par rapport à votre recherche. Il en va de même pour toutes les autres pages de ce site. Veillez à vérifier les informations auprès des sources officielles de l'EPFL.
Machine learning and data analysis are becoming increasingly central in many sciences and applications. In this course, fundamental principles and methods of machine learning will be introduced, analy
This course complements the Analysis and Linear Algebra courses by providing further mathematical background and practice required for 3rd year physics courses, in particular electrodynamics and quant
Numerical linear algebra, sometimes called applied linear algebra, is the study of how matrix operations can be used to create computer algorithms which efficiently and accurately provide approximate answers to questions in continuous mathematics. It is a subfield of numerical analysis, and a type of linear algebra. Computers use floating-point arithmetic and cannot exactly represent irrational data, so when a computer algorithm is applied to a matrix of data, it can sometimes increase the difference between a number stored in the computer and the true number that it is an approximation of.
vignette|Algorithme de Strassen où sont représentés les matrices Ci,j ainsi que les 7 nouvelles matrices Mi En mathématiques, plus précisément en algèbre linéaire, l’algorithme de Strassen est un algorithme calculant le produit de deux matrices carrées de taille n, proposé par Volker Strassen en 1969. La complexité de l'algorithme est en , avec pour la première fois un exposant inférieur à celui de la multiplication naïve qui est en . Par contre, il a l'inconvénient de ne pas être stable numériquement.
Explore les bases de l'algèbre linéaire, en mettant l'accent sur les représentations matricielles des transformations et l'importance de choisir les bases appropriées.
In this thesis we will present and analyze randomized algorithms for numerical linear algebra problems. An important theme in this thesis is randomized low-rank approximation. In particular, we will study randomized low-rank approximation of matrix functio ...
EPFL2024
,
Kernel methods are fundamental tools in machine learning that allow detection of non-linear dependencies between data without explicitly constructing feature vectors in high dimensional spaces. A major disadvantage of kernel methods is their poor scalabili ...
We present TimeEvolver, a program for computing time evolution in a generic quantum system. It relies on well-known Krylov subspace techniques to tackle the problem of multiplying the exponential of a large sparse matrix iH, where His the Hamiltonian, with ...