Post engagements
Back to post- I did some profiling on this last night out of curiosity and I suspect that the problem is the task system. AV1 decoding should be compute bound but the usage per core peaked at about 50% and the load graph was very ragged. Some observations: 🧵
- We created a safer AV1 decoder, rav1d, by forking the dav1d decoder and rewriting the C code in Rust. It works great except our Rust is 5% slower than the C. We're not sure why so we're offering a $20k bounty to figure it out and make the Rust code faster. www.memorysafety.org/blog/rav1d-p...
- a couple years ago i would have been semi excited about digging into this, despite having zero chance of even understanding how to troubleshoot this. now i can't even muster the energy to write simple HTTP service code at work. burnout and depression has completely changed what i am
- We created a safer AV1 decoder, rav1d, by forking the dav1d decoder and rewriting the C code in Rust. It works great except our Rust is 5% slower than the C. We're not sure why so we're offering a $20k bounty to figure it out and make the Rust code faster. www.memorysafety.org/blog/rav1d-p...