Libtask.jl icon indicating copy to clipboard operation
Libtask.jl copied to clipboard

Tape based task copying in Turing

Results 15 Libtask.jl issues
Sort by recently updated
recently updated
newest added

Hello, I am not too familiar with the code base, but I updated the subtaping functionality to work for my own project. Maybe you find these fixes useful. - Added...

I had a branch locally with some initial work on kwarg-support, and now, thanks to #164, it works! ``` julia julia> f(x; y=2) = (produce(2x + y); return 2x) f...

As seen discussed extensively in https://github.com/TuringLang/Turing.jl/pull/2001, in particular https://github.com/TuringLang/Turing.jl/pull/2001#issuecomment-1585694587, Libtask.jl makes one crucial assumption: **every `Instruction` contains _at most_ 1 `produce` statement.** This is because https://github.com/TuringLang/Libtask.jl/blob/95e32aa525be3649d0671ce3e47efb6e38382421/src/tapedfunction.jl#L73-L74 where https://github.com/TuringLang/Libtask.jl/blob/95e32aa525be3649d0671ce3e47efb6e38382421/src/tapedfunction.jl#L44-L48 which is...

Per #177 this is an attempt to significantly refactor the internals for robustness. Todo: - [x] understand what the desired semantics are regarding copying, per the discussion in #178 -...

# TODO Edit this issue with more details about what needs to be done. Known issues - Examples of a segfault with current Libtask: [here](https://github.com/TuringLang/Turing.jl/actions/runs/12397554649/job/34608225522#step:8:1048) and https://github.com/TuringLang/Turing.jl/issues/2379#issue-2616058378 - Performance degrades...

There are several tests that surprised me, and I would like to know why the semantics chosen are the correct ones. Firstly, https://github.com/TuringLang/Libtask.jl/blob/6264afd33f9441697d2f5ed4a75bbcc37f15feba/test/tape_copy.jl#L47 . This test stipulates that `Dict`s ought...

question

Needs investigation, but here's the MWE: ```julia julia> module MWE using Turing @model function linear_regression(x) β ~ Normal() # Likelihood μ = β .* x y ~ MvNormal(μ, I) end...

https://github.com/TuringLang/Libtask.jl/blob/f154425829d19eefa0dfbfff528a1c6c61da49e1/src/copyable_task.jl#L74-L88 If Libtask attempts to construct IR for an ambiguous method, line 86 here will error with something like this. It's at least not impossible to guess where is going...