Update dav1d to 0.2.1
Categories
(Core :: Audio/Video: Playback, enhancement, P2)
Tracking
()
People
(Reporter: TD-Linux, Assigned: achronop)
References
Details
Attachments
(2 files)
(deleted),
text/x-phabricator-request
|
Details | |
(deleted),
text/x-phabricator-request
|
pascalc
:
approval-mozilla-beta+
|
Details |
Comment 1•6 years ago
|
||
Alex, there is not much context here. Could you look at this?
Assignee | ||
Updated•6 years ago
|
Comment 2•6 years ago
|
||
At this point in development dav1d should be updated after every large performance increase. The current version used (f813285) is 7 weeks old and misses almost all SSSE3 assembly which makes dav1d so fast on older processors. See this spreadsheet for the performance difference between 0.1.0, 0.2.0 and 0.2.1.
The current version tag (ace3855a) is stable and include all major SSSE3 assembly.
Assignee | ||
Comment 3•6 years ago
|
||
Thank for the numbers, we plan to import from upstream soon. We are taking care the integration issues with automation in various platforms now. This is the next in the list.
Comment 5•6 years ago
|
||
Alex: lets try to update to 0.2.1 once 68 Nightly is going (assuming we don't have any other blocking issues).
Reporter | ||
Comment 6•6 years ago
|
||
Reporter | ||
Comment 7•6 years ago
|
||
Comment 8•6 years ago
|
||
Youtube just started encoding in AV1 up to 8K, which should be great for testing (and makes this more relevant than ever). Here's a playlist.
Looks great Thomas! It would be really amazing if it could make it in the r66 branch, since this speeds up AV1 decoding by more than a factor 2x for people with older CPU's, which makes it compelling to switch to Firefox from other browsers.
Comment 9•6 years ago
|
||
(In reply to E.M.terHoeven from comment #8)
Youtube just started encoding in AV1 up to 8K, which should be great for testing (and makes this more relevant than ever). Here's a playlist.
Thanks for the playlist.
Looks great Thomas! It would be really amazing if it could make it in the r66 branch, since this speeds up AV1 decoding by more than a factor 2x for people with older CPU's, which makes it compelling to switch to Firefox from other browsers.
As 66 is Beta with only 2 days left before releasing it on Monday there are no patches allowed to land any more. 67 will ship with dav1d turned on by default. And with Thomas patch we are planing on updating the dav1d version to 0.2.1 in 68.
Comment 10•6 years ago
|
||
(In reply to Nils Ohlmeier [:drno] from comment #9)
I would highly recommend against enabling dav1d 0.1.0 by default. While it would deliver a great experience for users with AVX2 cpu's, almost half still have a CPU without it. SSSE3 performance of dav1d 0.1.0 is still significantly worse than libaom which will provide a bad first encounter with the AV1 codec for millions of users. This could potentially harm the reputation of dav1d and even the whole AV1 codec.
So in my opinion, dav1d should only be enabled by default when it's updated to at least 0.2.1, whether that is in r67 or r68 (r67 has, of course, the preference).
Assignee | ||
Updated•6 years ago
|
Assignee | ||
Comment 11•6 years ago
|
||
Binaries from the try in comment 6 work well in OSX. Will try them on Linux and Win.
Assignee | ||
Comment 12•6 years ago
|
||
Linux and Windows binaries, from the try run in comment 6, also work.
Reporter | ||
Comment 13•6 years ago
|
||
(In reply to Ewout ter Hoeven from comment #10)
(In reply to Nils Ohlmeier [:drno] from comment #9)
I would highly recommend against enabling dav1d 0.1.0 by default.
mozilla-central is not at 0.1.0 but rather an intermediate git version. It doesn't have all of the ssse3, but enough, I think.
Comment 14•6 years ago
|
||
(In reply to Thomas Daede [:TD-Linux] from comment #13)
mozilla-central is not at 0.1.0 but rather an intermediate git version. It doesn't have all of the ssse3, but enough, I think.
The current commit used is indeed a little faster than 0.1.0 (about 15%), but the large gains were made after. dav1d 0.2.1 is still on average 287% faster than the commit used.
decoder | dav1d | dav1d | |
---|---|---|---|
Build | daef2f0d | ef5dc23f | |
Build date | 2019-01-07 | 2019-03-15 | |
ISA | SSSE3 | SSSE3 | |
Chimera 1080p | 36,2 | 88,9 | 245,5% |
Elecard 1080p | 65,3 | 128,7 | 197,2% |
Elecard 4K | 13,8 | 28,7 | 207,4% |
Summer 1080p | 36,6 | 111,8 | 305,7% |
Oliver 1080p | 125,8 | 205,0 | 162,9% |
Dua Lipa 1080p | 42,2 | 106,3 | 251,9% |
Red 1080p | 74,4 | 111,9 | 150,4% |
rav1e 1080p | 50,0 | 214,0 | 428,0% |
rav1e 1440p | 28,8 | 130,0 | 450,9% |
rav1e 2160p | 14,2 | 66,3 | 468,0% |
Assignee | ||
Comment 15•6 years ago
|
||
Assignee | ||
Comment 16•6 years ago
|
||
The try push in [1] includes a few more commits from upstream, from the last 2 days, and the updates on the comments mentioned in phabricator.
[1] https://treeherder.mozilla.org/#/jobs?repo=try&revision=1a159d568241fe8e6d9eead1b0e8dd21d9fd32aa
Comment 17•6 years ago
|
||
Comment 18•6 years ago
|
||
bugherder |
Comment 19•6 years ago
|
||
Great to see dav1d 0.2.1 in Firefox 68! Is there no way to get it in 67? As I said, for many users the performance gap between 0.1.0 and 0.2.1 will be around 3x.
Assignee | ||
Comment 20•6 years ago
|
||
Assignee | ||
Comment 21•6 years ago
|
||
Assignee | ||
Comment 22•6 years ago
|
||
Comment on attachment 9052820 [details]
Bug 1533559 - Update libdav1d to 0.2.1 on beta. r?TD-Linux
Beta/Release Uplift Approval Request
- Feature/Bug causing the regression: N/A
- User impact if declined: dav1d code includes significant improvements on version 0.2.1. It will be 3 times faster for many users on old cpu, which is very important for the intense operation of decoding. Also, some of the crashes have been solved in the latest version.
Without this uplift we might decide to disable dav1d on 67 even if AV1 is enabled, which is unfortunate. On a parallel note we have additional fixes on the pipe, for nightly, that are built on the top of that patch and we would like to uplift. Those uplifts will be much safer if they are based on the same code. In addition to that we are so early in the release cycle so, regarding dav1d, beta and nightly are identical. The nightly patch applies cleanly without any change which diminishing the likelihood of surprises. Finally many people inside the team and from the community would like to see that in 67.
- Is this code covered by automated tests?: Yes
- Has the fix been verified in Nightly?: Yes
- Needs manual test from QE?: No
- If yes, steps to reproduce:
- List of other uplifts needed: None
- Risk to taking this patch: Low
- Why is the change risky/not risky? (and alternatives if risky): This is because we have been using it in Nightly for some days. Also the code between nightly (well the parent code since nightly has it already) and beta is identical at those files so we do not expect surprises.
This is a green try of that patch on beta:
https://treeherder.mozilla.org/#/jobs?repo=try&revision=f0628e7f3035d8112240d426c7cdf9e35021a503
- String changes made/needed:
- Do you want to request approval of these patches as well?: on
Comment 23•6 years ago
|
||
Alex, I would like to see haw the crashes in bug 1537725 are evolving and make sure that they are not related to the dav1d update to 0.2.1 before evaluating an uplift to beta.
Assignee | ||
Comment 24•6 years ago
|
||
Ok thanks, I am clearing the NI for now.
Assignee | ||
Comment 25•6 years ago
|
||
Hi Pascal, I have requested uplifts for all the bugs that make the dav1d update stable. They are, in the order that they should be landed: this one, 1536538, 1535631, 1536070, 1537725, 1538474, 1538455
This is an on going run with all the fixes:
https://treeherder.mozilla.org/#/jobs?repo=try&revision=91f1007b3be2a7a11841d432a97a41f00ce624aa
Can you please check again and tell me what you think?
Comment 26•6 years ago
|
||
Comment on attachment 9052820 [details]
Bug 1533559 - Update libdav1d to 0.2.1 on beta. r?TD-Linux
Update libdav1d to 0.2.1 on beta, the few crashes we had detected on Nightly are now fixed and the performance gains are significant enough to justify an uplift to beta. Uplift accepted for 67 beta 8, thanks!
Assignee | ||
Comment 27•6 years ago
|
||
Thank you for the approvals.
For the sheriff the order of the bugs that should be uplifted is:
this one -> 1536538 -> 1535631 -> 1536070 -> 1537725 -> 1538455 -> 1538474
Comment 28•6 years ago
|
||
bugherder uplift |
Description
•