# JET reports tons of "runtime dispatch detected:" when using \`Statistics.cov\`

**URL:** <https://discourse.julialang.org/t/jet-reports-tons-of-runtime-dispatch-detected-when-using-statistics-cov/105600>\
**Category:** General Usage\
**Created:** [October 30, 2023, 11:06pm UTC](https://discourse.julialang.org/t/jet-reports-tons-of-runtime-dispatch-detected-when-using-statistics-cov/105600 "2023-10-30T23:06:43Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![joa-quim](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/joa-quim/32/227_2.png) [@joa-quim](https://discourse.julialang.org/u/joa-quim)\
**Post date:** [October 30, 2023, 11:06pm UTC](https://discourse.julialang.org/t/jet-reports-tons-of-runtime-dispatch-detected-when-using-statistics-cov/105600/1 "2023-10-30T23:06:43Z")

</div>

And it’s much worse in 1.10

A type stability issue?

```julia
using JET
using Statistics

@report_opt cov(rand(10,3))
═════ 32 possible errors found ═════
┌ cov(X::Matrix{Float64}) @ Statistics C:\workdir\usr\share\julia\stdlib\v1.9\Statistics\src\Statistics.jl:584
│┌ cov(X::Matrix{Float64}; dims::Int64, corrected::Bool) @ Statistics C:\workdir\usr\share\julia\stdlib\v1.9\Statistics\src\Statistics.jl:584
││┌ kwcall(::NamedTuple{(:corrected,), Tuple{Bool}}, ::typeof(Statistics.covm), x::Matrix{Float64}, xmean::Matrix{Float64}, vardim::Int64) @ Statistics C:\workdir\usr\share\julia\stdlib\v1.9\Statistics\src\Statistics.jl:561
│││┌ covm(x::Matrix{Float64}, xmean::Matrix{Float64}, vardim::Int64; corrected::Bool) @ Statistics C:\workdir\usr\share\julia\stdlib\v1.9\Statistics\src\Statistics.jl:561
...

```

With 1.10b3

```julia
@report_opt cov(rand(10,3))
═════ 190 possible errors found ═════
┌ cov(X::Matrix{Float64}) @ Statistics C:\programs\Julia-1.10\share\julia\stdlib\v1.10\Statistics\src\Statistics.jl:594
│┌ cov(X::Matrix{Float64}; dims::Int64, corrected::Bool) @ Statistics C:\programs\Julia-1.10\share\julia\stdlib\v1.10\Statistics\src\Statistics.jl:594
││┌ kwcall(::@NamedTuple{corrected::Bool}, ::typeof(Statistics.covm), x::Matrix{Float64}, xmean::Matrix{Float64}, vardim::Int64) @ Statistics C:\programs\Julia-1.10\share\julia\stdlib\v1.10\Statistics\src\Statistics.jl:571
│││┌ covm(x::Matrix{Float64}, xmean::Matrix{Float64}, vardim::Int64; corrected::Bool) @ Statistics C:\programs\Julia-1.10\share\julia\stdlib\v1.10\Statistics\src\Statistics.jl:571
...

```

A probable side effect of this is that a precompiled cache that uses it in a function is 4 MB bigger if I include it in the PrecompileTools @setup\_workload
