Missing rule for LAPACK's dgetrf_64_
- Dominant language
- Julia
- Stars
- 586
- Forks
- 108
- Avg merge
- 1d 5h
- Merged PRs (30d)
- 44
Description
MWE:
```julia
using Distributions
using Random
using Enzyme: Enzyme
using LinearAlgebra: I
d = MatrixTDist(
3.1,
randn(2, 3),
Array(I, (2, 2)),
Array(I, (3, 3)),
)
x = randn(2, 3)
f(x) = logpdf(d, x)
Enzyme.gradient(Enzyme.Forward, Enzyme.Const(f), x, Val(1))
```
Output:
```julia
fallback?
ERROR:
No forward mode derivative found for dgetrf_64_
at context: call void @dgetrf_64_(i8* noundef nonnull %6, i8* noundef nonnull %8, i64 %22, i8* noundef nonnull %10, i64 %26, i64 noundef %bitcast_coercion42) #76 [ "jl_roots"({} addrspace(10)* null, {} addrspace(10)* %19, {} addrspace(10)* null, {} addrspace(10)* %2, {} addrspace(10)* null, {} addrspace(10)* null) ], !dbg !140
Stacktrace:
[1] #getrf!#1
@ ~/.julia/juliaup/julia-1.10.5+0.aarch64.apple.darwin14/share/julia/stdlib/v1.10/LinearAlgebra/src/lapack.jl:565
Stacktrace:
[1] copyto_unaliased!
@ ./abstractarray.jl:1082
[2] gemm!
@ ~/.julia/juliaup/julia-1.10.5+0.aarch64.apple.darwin14/share/julia/stdlib/v1.10/LinearAlgebra/src/blas.jl:1524
[3] indexed_iterate (repeats 2 times)
@ ./tuple.jl:92 [inlined]
[4] log_proc1
@ ./special/log.jl:165 [inlined]
[5] _log
@ ./special/log.jl:295
[6] LazyString
@ ./strings/lazy.jl:41 [inlined]
[7] gemm!
@ ~/.julia/juliaup/julia-1.10.5+0.aarch64.apple.darwin14/share/julia/stdlib/v1.10/LinearAlgebra/src/blas.jl:1519
[8] macro expansion
@ ~/.julia/packages/Enzyme/TiboG/src/compiler.jl:7187 [inlined]
[9] enzyme_call
@ ~/.julia/packages/Enzyme/TiboG/src/compiler.jl:6794 [inlined]
[10] ForwardModeThunk
@ ~/.julia/packages/Enzyme/TiboG/src/compiler.jl:6674 [inlined]
[11] runtime_generic_fwd(activity::Type{…}, width::Val{…}, RT::Val{…}, f::typeof(logpdf), df::Nothing, primal_1::MatrixTDist{…}, shadow_1_1::Nothing, primal_2::Matrix{…}, shadow_2_1::Matrix{…})
@ Enzyme.Compiler ~/.julia/packages/Enzyme/TiboG/src/rules/jitrules.jl:223
[12] f
@ ./REPL[17]:1 [inlined]
[13] fwddiffejulia_f_2311wrap
@ ./REPL[17]:0
[14] macro expansion
@ ~/.julia/packages/Enzyme/TiboG/src/compiler.jl:7187 [inlined]
[15] enzyme_call
@ ~/.julia/packages/Enzyme/TiboG/src/compiler.jl:6794 [inlined]
[16] ForwardModeThunk
@ ~/.julia/packages/Enzyme/TiboG/src/compiler.jl:6674 [inlined]
[17] autodiff
@ ~/.julia/packages/Enzyme/TiboG/src/Enzyme.jl:437 [inlined]
[18] #112
@ ~/.julia/packages/Enzyme/TiboG/src/Enzyme.jl:1197 [inlined]
[19] ntuple
@ ./ntuple.jl:19 [inlined]
[20] gradient(::EnzymeCore.ForwardMode{…}, f::EnzymeCore.Const{…}, x::Matrix{…}, ::Val{…}; shadow::NTuple{…})
@ Enzyme ~/.julia/packages/Enzyme/TiboG/src/Enzyme.jl:1196
[21] gradient(::EnzymeCore.ForwardMode{…}, f::EnzymeCore.Const{…}, x::Matrix{…}, ::Val{…})
@ Enzyme ~/.julia/packages/Enzyme/TiboG/src/Enzyme.jl:1195
[22] top-level scope
@ REPL[18]:1
Some type information was truncated. Use `show(err)` to see complete types.
```
Contributor guide
Assessment
This issue has not been assessed yet.