sto scrivendo del codice in questo momento e ho un segnaposto con matmul
che sembra funzionare abbastanza bene, ma mi piacerebbe usare un implementazione LAPACK
dgemm
. Sto solo usando gfortran
in questo momento e ottenendo ottime velocità con matmul
, ma mi chiedo se posso migliorare.Il 'matmul' di fortran usa MKL se includo la libreria?
La chiamata attuale è:
C = transpose(matmul(transpose(A), B))
dove A
, B
e C
sono non-square, double precision
matrici. Posso facilmente scrivere un wrapper per con l'attuale implementazione gfortran
di LAPACK
, ma mi piace il fatto che posso farlo tutto come una funzione (piuttosto che preoccuparmi di call
per una surbroutine e di dover gestire lo transpose
).
mi chiedo se compilo con ifort
e includere i MKL
, sarà presente matmul
cambiare magicamente a una funzione MKL
dgemm
per me senza wrapper?