# An incorrect result warning for OpenBLAS Archlinux users

**URL:** <https://discourse.julialang.org/t/an-incorrect-result-warning-for-openblas-archlinux-users/29436>\
**Category:** General Usage\
**Created:** [October 3, 2019, 8:33am UTC](https://discourse.julialang.org/t/an-incorrect-result-warning-for-openblas-archlinux-users/29436 "2019-10-03T08:33:43Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![mratsim](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/mratsim/32/10557_2.png) [@mratsim](https://discourse.julialang.org/u/mratsim)\
**Post date:** [October 3, 2019, 8:33am UTC](https://discourse.julialang.org/t/an-incorrect-result-warning-for-openblas-archlinux-users/29436/1 "2019-10-03T08:33:43Z")

</div>

The default OpenBLAS packaged in Archlinux can produce wrong results for float64.

This is due to the fact that in Archlinux, the `blas` package (from netlib reference implementation) has been separated into `blas` for Fortran + `cblas` for C interface. And Openblas only replaces `blas` but uses the netlib `cblas` which seems to be incompatible.

Looking into the standard library, it [uses `cblas`](https://github.com/JuliaLang/julia/blob/v1.3.0-rc2/stdlib/LinearAlgebra/src/blas.jl) and so will be affected by this bug.

Upstream: [FS#63054 : Openblas built from community gives wrong matrix multiplication results (DGEMM)](https://bugs.archlinux.org/task/63054)  
Workaround: use one of the openblas-lapack package from the AUR that provides Fortran blas, C cblas and Lapack interfaces.

---

<div class="post-metadata">

**Author:** ![giordano](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/giordano/32/2166_2.png) [@giordano](https://discourse.julialang.org/u/giordano)\
**Post date:** [October 3, 2019, 10:11am UTC](https://discourse.julialang.org/t/an-incorrect-result-warning-for-openblas-archlinux-users/29436/2 "2019-10-03T10:11:56Z")

</div>

Official build of Julia (or if you build Julia from source using BinaryBuilder-powered binaries) ships its own version of OpenBLAS, though. On ArchLinux I use the `julia-bin` package in AUR for the stable version of Julia.

Could you please check if you can reproduce when using the library in [https://github.com/JuliaBinaryWrappers/OpenBLAS\_jll.jl/releases/tag/OpenBLAS-v0.3.7%2B0](https://github.com/JuliaBinaryWrappers/OpenBLAS_jll.jl/releases/tag/OpenBLAS-v0.3.7%2B0)? Just find the tarball for your system (operating system + fortran library) and (temporarily) replace your system `libopenblas` with the one in tarball (need to rename it, as it has a trailing underscore).

---

<div class="post-metadata">

**Author:** ![jvlatzko](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/jvlatzko/32/18662_2.png) [@jvlatzko](https://discourse.julialang.org/u/jvlatzko)\
**Post date:** [June 11, 2020, 9:03pm UTC](https://discourse.julialang.org/t/an-incorrect-result-warning-for-openblas-archlinux-users/29436/3 "2020-06-11T21:03:18Z")

</div>

Thanks! I wanted to highlight that in fact it works to use the supplied OpenBLAS for future searches…  
Note that installing the OpenBLAS\_jll package did nothing for me - linking the lib however did.
