memorysafety / rav1d

An AV1 decoder in Rust.
BSD 2-Clause "Simplified" License
321 stars 22 forks source link

Try using `new_zeroed_slice` to optimize `f.mvs` with zeroed allocations #1360

Open kkysen opened 1 week ago

kkysen commented 1 week ago

@ivanloz, could you see if this fixes/changes the performance issue you found in #1358?

ivanloz commented 1 week ago

Thanks! I'll try this out and report back.

ivanloz commented 2 days ago

I've been investigating this and unfortunately I'm still seeing roughly the same number of page-faults -- maybe a marginal drop, but hard to tell if it's just noise. It's still an order of magnitude more page faults than seen in dav1d. Similarly, the number of context switches and overall performance seem to be largely unaffected.

I'm trying to isolate where these are now occurring. I haven't had luck narrowing it down yet, but wanted to at least provide an update here.

kkysen commented 2 days ago

Thanks for the update! Let me try one more small thing first (when I have some time).