TE
TechEcho
AccueilTop 24hRécentsMeilleursQuestionsPrésentationsEmplois
GitHubTwitter
Accueil

TechEcho

Une plateforme d'actualités technologiques construite avec Next.js, fournissant des nouvelles et discussions technologiques mondiales.

GitHubTwitter

Accueil

AccueilRécentsMeilleursQuestionsPrésentationsEmplois

Ressources

HackerNews APIHackerNews OriginalNext.js

© 2025 TechEcho. Tous droits réservés.

Improving performance of rav1d video decoder

299 pointspar todsacerdotiil y a 3 jours

17 comments

mmastracil y a 3 jours
The associated issue for comparing two u16s is interesting.<p><a href="https:&#x2F;&#x2F;github.com&#x2F;rust-lang&#x2F;rust&#x2F;issues&#x2F;140167">https:&#x2F;&#x2F;github.com&#x2F;rust-lang&#x2F;rust&#x2F;issues&#x2F;140167</a>
评论 #44066028 未加载
评论 #44061906 未加载
评论 #44065911 未加载
renewiltordil y a 3 jours
Oh this stuff is what’s prompting the ffmpeg Twitter account to make a stand against Rust <a href="https:&#x2F;&#x2F;x.com&#x2F;ffmpeg&#x2F;status&#x2F;1924137645988356437?s=46" rel="nofollow">https:&#x2F;&#x2F;x.com&#x2F;ffmpeg&#x2F;status&#x2F;1924137645988356437?s=46</a>
评论 #44071382 未加载
评论 #44062997 未加载
评论 #44063150 未加载
nemothekidil y a 3 jours
Intersting to see this article on the perfromance advantage of not having to zero buffers after this article 2 days ago: <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=44032680">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=44032680</a>
brookstil y a 3 jours
Title undersells post; it’s actually 2.3% faster with two good optimizations.
评论 #44061586 未加载
robertknightil y a 3 jours
Good post! The inefficient code for comparing pairs of 16-bit integers was an interesting find.
评论 #44061353 未加载
tialaramexil y a 3 jours
All being equal codecs ought to be in WUFFS† rather than Rust, but I can well imagine that it&#x27;s a much bigger lift to take something as complicated as dav1d and write the analogous WUFFS than to clean up the c2rust translation, if you said a thousand times harder I&#x27;d have no trouble believing that. I just think it&#x27;s worth it for us as a civilisation.<p>† Or an equivalent special purpose language, but WUFFS is right there
评论 #44061961 未加载
mbeavittil y a 3 jours
Haha I was just thinking to myself &quot;I wonder if anyone made any progress on that rav1d bounty yet?&quot;
infogulchil y a 3 jours
You know it&#x27;s a good post when it starts with a funny meme. Seems related to the recent discussion: <i>$20K Bounty Offered for Optimizing Rust Code in Rav1d AV1 Decoder</i> (memorysafety.org) | 108 comments | <a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=43982238">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=43982238</a>
评论 #44067232 未加载
评论 #44065083 未加载
lubesGordiil y a 3 jours
Honestly its a little surprising the first optimization he found was something fairly obvious just by using perf. I thought they had discussed the zeroing buffers issue in the first post? The second optimization was definitely more involved&#x2F;interesting but was still pointed at by perf. Don&#x27;t underestimate that tool!
评论 #44067686 未加载
评论 #44062673 未加载
smallpipeil y a 3 jours
This is really fun. Is there anything stopping rustc from performing the transmute trick ?<p>Edit: If I had read the next paragraph, I&#x27;d have learn about [1] before commenting<p>[1] <a href="https:&#x2F;&#x2F;github.com&#x2F;rust-lang&#x2F;rust&#x2F;issues&#x2F;140167">https:&#x2F;&#x2F;github.com&#x2F;rust-lang&#x2F;rust&#x2F;issues&#x2F;140167</a>
Mr_Eri_Atlovil y a 3 jours
AV1 continues to be the most fascinating development in media encoding.<p>AVG-SVT-PSY is particularly interesting to read up on as well.
jebarkeril y a 3 jours
Beautiful work and nice write-up. Profiling and optimization is absolutely my favorite part of software development.
anon-3988il y a 3 jours
Is skipping initialization of buffers a hard problem for compilers?
评论 #44063622 未加载
评论 #44062735 未加载
评论 #44062623 未加载
评论 #44068910 未加载
saagarjhail y a 2 jours
I am very curious what you did to embed the profiler results into your blog post. Literally copy the HTML nodes?
评论 #44083081 未加载
sylwareil y a 2 jours
I don&#x27;t understand this project. dav1d is 99% assembly (x86_64&#x2F;risc-v 64bits&#x2F;etc) with very little simple and plain C as coordinating code.
评论 #44077496 未加载
mdfil y a 3 jours
There&#x27;s something about real optimization stories that I find fascinating – particularly the detailed ones including step-by-step improvements and profiling to show how numbers got better. In some way, they are <i>satisfying</i> to read.<p>Nicholas Nethercote&#x27;s &quot;How to speed up the Rust compiler&quot; writings[1] fall into this same category for me.<p>Any others?<p>[1] <a href="https:&#x2F;&#x2F;nnethercote.github.io&#x2F;" rel="nofollow">https:&#x2F;&#x2F;nnethercote.github.io&#x2F;</a>
评论 #44062243 未加载
评论 #44064811 未加载
评论 #44064519 未加载
评论 #44064856 未加载
评论 #44065073 未加载
IgorPartolail y a 3 jours
AV1 is an amazing codec. I really hope it replaces proprietary codecs like h264 and h265. It has a similar, if not better, performance to h265 while being completely free. Currently on an Intel-based Macbook it is only supported in some browsers, however it seems that newer video cards from AMD, Nvidia, and Intel do include hardware decoders.
评论 #44063108 未加载
评论 #44062089 未加载
评论 #44062484 未加载
评论 #44063170 未加载
评论 #44065078 未加载