Are there any plans to support BLIS in Julia?

Given the flexibility of the BLIS API and the ability to fuse kernels, I was just wondering if there are any plans of incorporating this functionality in Julia.

1 Like

I don’t know about plans, but looks related.

Is there particular functionality from BLIS which you would like and which you think is not covered by julia already?

1 Like

There’s an early package to support BLIS and the BLIS API:

I’ve used BinaryBuilder to compile BLIS binary libraries using BinaryBuilder. My main purpose was compiling a drop-in BLAS replacement for WebAssembly:

The key trick for native support would be compiling support for multiple CPU’s.

Also related is interesting work on supporting BLAS functionality directly in Julia:


Tye BLIS folks recently published benchmarks at It looks better than OpenBLAS, except for small matrices. It also supports mixed-precision. appears to be gone?


I believe did some work on this. I don’t know his discourse handle to ping him.

By the way it should be entirely possible to create BinaryBuilder project for Blis and provide julia wrappers.

As noted above, there’s already a start of a BinaryBuilder for Blis:

As I recall, building was pretty easy. I didn’t test it or try out builds that include different kernels. I don’t have near-term plans to take this any farther, though, so someone else might want to have a go at it.


Tagging on to this, I’ve just started wrapping the TBLIS library for tensor contractions. Not anything to write home about yet, but I thought I’d stick this here.


Anyone still tuned-in?

Quite experimental but I’m trying to make a full-functional Julia wrapper for BLIS at BLIS.jl. It’s currently overwriting like LinearAlgebra.BLAS.gemm_wrapper! to “redirect” mul! backends.

Binary artifact for BLIS at Yggdrasil was updated as well. It now has Linux (x86_64/ARMv7/Aarch64), Windows and macOS.

For people interested in TBLIS, its binary artifact is also updated for all x86_64 platforms (Linux/Linux:MUSL/Windows/macOS/FreeBSD). Please allow me to further advertise BliContractor.jl which is a wrapper around TBLIS and exports methods compatible with TensorOperations.jl.