ForMatmul: A Fortran library that overloads the matmul
function to enable efficient matrix multiplication with/without coarray.
use formatmul
c = matmul(a,b, option='m1', transA=.true., transB=.true., coarray=.true.)
If you want to use ForMatmul
as a dependency in your own fpm project,
you can easily include it by adding the following line to your fpm.toml
file:
[dependencies]
formatmul = {git="https://github.com/gha3mi/formatmul.git"}
Clone the repository:
You can clone the ForMatmul
repository from GitHub using the following command:
git clone https://github.com/gha3mi/formatmul.git
cd formatmul
Tested with Intel compiler: ifort (IFORT) 2021.10.0 20230609
fpm @ifort-test
fpm @ifort-test-coarray
Tested with Intel compiler: ifx (IFX) 2023.2.0 20230622
fpm @ifx-test
fpm @ifx-test-coarray
Tested with NVIDIA compiler: nvfortran 23.11-0 64-bit target on x86-64 Linux
fpm @nvfortran-test
You can find benchmark results on ForBenchmark.
The most up-to-date API documentation for the master branch is available
here.
To generate the API documentation for ForMatmul
using
ford run the following
command:
ford ford.yml
Contributions to ForMatmul
are welcome!
If you find any issues or would like to suggest improvements, please open an issue.