Subject: Re: [bug#49096] [PATCH] gnu: petsc: Link against OpenBLAS rather than LAPACK.

From: Efraim Flashner <[email-masked]>
Date: Mon, 21 Jun 2021 16:00:43 +0300

On Fri, Jun 18, 2021 at 06:12:04PM +0200, Ludovic Courtès wrote:
> From: Ludovic Courtès <[email-masked]>
> 
> OpenBLAS performs better than LAPACK, the reference implementation.
> This is also consistent with the choice of BLAS/LAPACK implementations
> made in most other packages.
> 
> * gnu/packages/maths.scm (petsc)[inputs]: Replace LAPACK by OPENBLAS.
> [arguments]: Pass "--with-openmp=1".
> ---
>  gnu/packages/maths.scm | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> Hi!
> 
> Usually there’s no reason to depend on the reference (“Netlib”) BLAS/LAPACK
> implementations because they perform poorly.  This change is one way to
> bring consistency here.
> 
> Thoughts?
> 
> Ludo’.

It sounds reasonable to me.

As long as you're open to thoughts, perhaps we want to have a discussion
(in a new thread) about renaming the input labels for lapack/openblas so
it's easier to do 'guix build foo
--with-inputs=blas=openblas-tuned-for-my-machine'

> 
> diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
> index a79d546abd..8d47f91310 100644
> --- a/gnu/packages/maths.scm
> +++ b/gnu/packages/maths.scm
> @@ -2417,7 +2417,7 @@ September 2004}")
>       `(("python" ,python-2)))
>      (inputs
>       `(("gfortran" ,gfortran)
> -       ("lapack" ,lapack)
> +       ("openblas" ,openblas)
>         ("superlu" ,superlu)
>         ;; leaving out hdf5 and fftw, as petsc expects them to be built with mpi
>         ;; leaving out opengl, as configuration seems to only be for mac
> @@ -2428,6 +2428,7 @@ September 2004}")
>         #:configure-flags
>         `("--with-mpi=0"
>           "--with-openmp=1"
> +         "--with-openblas=1"
>           "--with-superlu=1")
>         #:make-flags
>         ;; Honor (parallel-job-count) for build.  Do not use --with-make-np,
> -- 
> 2.32.0
> 
> 
> 
> 

-- 
Efraim Flashner   <[email-masked]>   אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted