[all-commits] [llvm/llvm-project] 5e1421: [flang] Implement MATMUL in the runtime

Peter Klausler via All-commits all-commits at lists.llvm.org
Tue May 18 11:00:22 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 5e1421b22f642a6b34690d0d724e691ba3984836
      https://github.com/llvm/llvm-project/commit/5e1421b22f642a6b34690d0d724e691ba3984836
  Author: peter klausler <pklausler at nvidia.com>
  Date:   2021-05-18 (Tue, 18 May 2021)

  Changed paths:
    M flang/runtime/CMakeLists.txt
    M flang/runtime/dot-product.cpp
    A flang/runtime/matmul.cpp
    A flang/runtime/matmul.h
    M flang/runtime/reduction.h
    M flang/unittests/RuntimeGTest/CMakeLists.txt
    A flang/unittests/RuntimeGTest/Matmul.cpp

  Log Message:
  -----------
  [flang] Implement MATMUL in the runtime

Define an API for the transformational intrinsic function MATMUL,
implement it, and add some basic unit tests.  The large number of
possible argument type combinations are covered by a set of
generalized templates that are instantiated for each valid
pair of possible argument types.

Places where BLAS-2/3 routines could be called for acceleration
are marked with TODOs.  Handling for other special cases (e.g.,
known-shape 3x3 matrices and vectors) are deferred.

Some minor tweaks were made to the recent related implementation
of DOT_PRODUCT to reflect lessons learned.

Differential Revision: https://reviews.llvm.org/D102652




More information about the All-commits mailing list