Error-free transformations of matrix multiplication by using fast routines of matrix multiplication and its applications

Katsuhisa Ozaki, Takeshi Ogita, Shinichi Oishi, Siegfried M. Rump

    Research output: Contribution to journalArticle

    10 Citations (Scopus)

    Abstract

    This paper is concerned with accurate matrix multiplication in floating-point arithmetic. Recently, an accurate summation algorithm was developed by Rump et al. (SIAM J Sci Comput 31(1):189-224, 2008). The key technique of their method is a fast error-free splitting of floating-point numbers. Using this technique, we first develop an error-free transformation of a product of two floating-point matrices into a sum of floating-point matrices. Next, we partially apply this error-free transformation and develop an algorithm which aims to output an accurate approximation of the matrix product. In addition, an a priori error estimate is given. It is a characteristic of the proposed method that in terms of computation as well as in terms of memory consumption, the dominant part of our algorithm is constituted by ordinary floating-point matrix multiplications. The routine for matrix multiplication is highly optimized using BLAS, so that our algorithms show a good computational performance. Although our algorithms require a significant amount of working memory, they are significantly faster than 'gemmx' in XBLAS when all sizes of matrices are large enough to realize nearly peak performance of 'gemm'. Numerical examples illustrate the efficiency of the proposed method.

    Original languageEnglish
    Pages (from-to)95-118
    Number of pages24
    JournalNumerical Algorithms
    Volume59
    Issue number1
    DOIs
    Publication statusPublished - 2012 Jan

    Fingerprint

    Matrix multiplication
    Floating point
    Working Memory
    Floating-point Arithmetic
    A Priori Error Estimates
    Matrix Product
    Digital arithmetic
    Summation
    Data storage equipment
    Numerical Examples
    Output
    Approximation

    Keywords

    • Accurate computations
    • Error-free transformation
    • Floating-point arithmetic
    • Matrix multiplication

    ASJC Scopus subject areas

    • Applied Mathematics

    Cite this

    Error-free transformations of matrix multiplication by using fast routines of matrix multiplication and its applications. / Ozaki, Katsuhisa; Ogita, Takeshi; Oishi, Shinichi; Rump, Siegfried M.

    In: Numerical Algorithms, Vol. 59, No. 1, 01.2012, p. 95-118.

    Research output: Contribution to journalArticle

    @article{3c71ad248f5d441da59f8021565a443b,
    title = "Error-free transformations of matrix multiplication by using fast routines of matrix multiplication and its applications",
    abstract = "This paper is concerned with accurate matrix multiplication in floating-point arithmetic. Recently, an accurate summation algorithm was developed by Rump et al. (SIAM J Sci Comput 31(1):189-224, 2008). The key technique of their method is a fast error-free splitting of floating-point numbers. Using this technique, we first develop an error-free transformation of a product of two floating-point matrices into a sum of floating-point matrices. Next, we partially apply this error-free transformation and develop an algorithm which aims to output an accurate approximation of the matrix product. In addition, an a priori error estimate is given. It is a characteristic of the proposed method that in terms of computation as well as in terms of memory consumption, the dominant part of our algorithm is constituted by ordinary floating-point matrix multiplications. The routine for matrix multiplication is highly optimized using BLAS, so that our algorithms show a good computational performance. Although our algorithms require a significant amount of working memory, they are significantly faster than 'gemmx' in XBLAS when all sizes of matrices are large enough to realize nearly peak performance of 'gemm'. Numerical examples illustrate the efficiency of the proposed method.",
    keywords = "Accurate computations, Error-free transformation, Floating-point arithmetic, Matrix multiplication",
    author = "Katsuhisa Ozaki and Takeshi Ogita and Shinichi Oishi and Rump, {Siegfried M.}",
    year = "2012",
    month = "1",
    doi = "10.1007/s11075-011-9478-1",
    language = "English",
    volume = "59",
    pages = "95--118",
    journal = "Numerical Algorithms",
    issn = "1017-1398",
    publisher = "Springer Netherlands",
    number = "1",

    }

    TY - JOUR

    T1 - Error-free transformations of matrix multiplication by using fast routines of matrix multiplication and its applications

    AU - Ozaki, Katsuhisa

    AU - Ogita, Takeshi

    AU - Oishi, Shinichi

    AU - Rump, Siegfried M.

    PY - 2012/1

    Y1 - 2012/1

    N2 - This paper is concerned with accurate matrix multiplication in floating-point arithmetic. Recently, an accurate summation algorithm was developed by Rump et al. (SIAM J Sci Comput 31(1):189-224, 2008). The key technique of their method is a fast error-free splitting of floating-point numbers. Using this technique, we first develop an error-free transformation of a product of two floating-point matrices into a sum of floating-point matrices. Next, we partially apply this error-free transformation and develop an algorithm which aims to output an accurate approximation of the matrix product. In addition, an a priori error estimate is given. It is a characteristic of the proposed method that in terms of computation as well as in terms of memory consumption, the dominant part of our algorithm is constituted by ordinary floating-point matrix multiplications. The routine for matrix multiplication is highly optimized using BLAS, so that our algorithms show a good computational performance. Although our algorithms require a significant amount of working memory, they are significantly faster than 'gemmx' in XBLAS when all sizes of matrices are large enough to realize nearly peak performance of 'gemm'. Numerical examples illustrate the efficiency of the proposed method.

    AB - This paper is concerned with accurate matrix multiplication in floating-point arithmetic. Recently, an accurate summation algorithm was developed by Rump et al. (SIAM J Sci Comput 31(1):189-224, 2008). The key technique of their method is a fast error-free splitting of floating-point numbers. Using this technique, we first develop an error-free transformation of a product of two floating-point matrices into a sum of floating-point matrices. Next, we partially apply this error-free transformation and develop an algorithm which aims to output an accurate approximation of the matrix product. In addition, an a priori error estimate is given. It is a characteristic of the proposed method that in terms of computation as well as in terms of memory consumption, the dominant part of our algorithm is constituted by ordinary floating-point matrix multiplications. The routine for matrix multiplication is highly optimized using BLAS, so that our algorithms show a good computational performance. Although our algorithms require a significant amount of working memory, they are significantly faster than 'gemmx' in XBLAS when all sizes of matrices are large enough to realize nearly peak performance of 'gemm'. Numerical examples illustrate the efficiency of the proposed method.

    KW - Accurate computations

    KW - Error-free transformation

    KW - Floating-point arithmetic

    KW - Matrix multiplication

    UR - http://www.scopus.com/inward/record.url?scp=82255175133&partnerID=8YFLogxK

    UR - http://www.scopus.com/inward/citedby.url?scp=82255175133&partnerID=8YFLogxK

    U2 - 10.1007/s11075-011-9478-1

    DO - 10.1007/s11075-011-9478-1

    M3 - Article

    VL - 59

    SP - 95

    EP - 118

    JO - Numerical Algorithms

    JF - Numerical Algorithms

    SN - 1017-1398

    IS - 1

    ER -