Convert a Current Installation of Julia to Use `BlasInt = `Int32`

Looking at my Julia installation (Using JuliaWin version Juliawin v1.6.2-0 on 2021-07-22) I can see that LinearAlgebra.BlasInt = Int64.

This means that any index to array takes 64 Bit.
I was wondering, can I make it Int32 on my system?
Moreover, I’d like it will affect OpenBLAS, MKL, MKLSparse (Namely use LP64 API and not ILP64), SparseSuite and the construction of Sparse Arrays (Namely sparse() and all the rest will generate SparseMatrixCSC{T, Int32} by default).
The idea is to have everything coherent so nothing will be converted on calls to OpenBLAS / MKL / MKLSparse, etc…

I don’t intend to deal with matrices which have more then 2 ^ 31 rows or columns hence I’d rather the throughput advantage of using 32 Bit for indexing.

Is there a way to do so?
Will it be easier to do so in Julia 1.7.x and farther?

1 Like