When doing some profiling, I noticed that OpenBLAS threads would make a lot of calls to gettimeofday(), usually at the end of a loop. It happens on both Julia 1.7 and 1.8-rc1. In some of my programs this can add up to 10-20% of the total time spent by a thread. Any idea what’s causing this?
N = 2048
a = rand(Float32, N, N)
b = rand(Float32, N, N)
for i = 1:100
a*b
end
I’m running the ARM builds on an M1 MacBook Pro.
julia> BLAS.get_config()
LinearAlgebra.BLAS.LBTConfig
Libraries:
└ [ILP64] libopenblas64_.dylib
julia> versioninfo()
Julia Version 1.8.0-rc1
Commit 6368fdc6565 (2022-05-27 18:33 UTC)
Platform Info:
OS: macOS (arm64-apple-darwin21.3.0)
CPU: 10 × Apple M1 Pro
WORD_SIZE: 64
LIBM: libopenlibm
LLVM: libLLVM-13.0.1 (ORCJIT, apple-m1)
Threads: 1 on 8 virtual cores