Closed
Bug 722164
Opened 12 years ago
Closed 12 years ago
Investigate Azure Quartz Interpolation Quality
Categories
(Core :: Graphics, defect)
Tracking
()
RESOLVED
FIXED
mozilla12
People
(Reporter: BenWa, Assigned: BenWa)
Details
Attachments
(2 files, 1 obsolete file)
1.92 KB,
patch
|
Details | Diff | Splinter Review | |
1.96 KB,
patch
|
jrmuizel
:
review+
|
Details | Diff | Splinter Review |
No description provided.
Assignee | ||
Comment 1•12 years ago
|
||
Turning off interpolation gives me massive improvements in canvas performance. I was able to run 100 Fishes at 40 FPS. I did a similar experiment with cairo and also saw significant performance improvements. I noticed this because interpolation was showing up in profiles
Comment 2•12 years ago
|
||
This isn't surprising, but I'm not sure it's desirable though. Maybe we could go to linear from the I believe Lanczos Quartz is currently doing?
Comment 3•12 years ago
|
||
We should be able to use kCGInterpolationMedium on systems that support it.
Comment 4•12 years ago
|
||
I'd be great with using Low (or Medium maybe) interpolation on canvas only. Depending on the quality, it's possible we could switch to Medium for all web content.
Assignee | ||
Comment 5•12 years ago
|
||
Assignee | ||
Updated•12 years ago
|
Attachment #592508 -
Attachment is obsolete: true
Assignee | ||
Comment 6•12 years ago
|
||
Testcase: http://ie.microsoft.com/testdrive/performance/fishietank/ 100 Fishes Note: High is 3, Medium is 4. The FPS is very rough since the scaling of the fishes has a big impact on the FPS. Values: http://developer.apple.com/library/ios/#documentation/GraphicsImaging/Reference/CGContext/Reference/reference.html#//apple_ref/c/tdef/CGInterpolationQuality gfx.canvas.azure.quartz.interpolation = kCGInterpolationDefault = 0 8-9 FPS Profile: http://varium.fantasytalesonline.com/cleopatra/?report=AMIfv97lt1xGt6kPtsEvINA4-KrFyQl-mwSvcrm5dAJ3S4gaBRnqvfxMuhSOZaGSAMYU7gb1jSwPkgy78d44X6WtWNDU9ldg05zQqmlel0z1cxKc7fSyIP8VJZBjuc_ePBXS9YXhxq5OKu17BmoKOvTIuuqyMJmTmA Top Sample: (34.07%) resample_band (in CoreGraphics) + 1108 gfx.canvas.azure.quartz.interpolation = kCGInterpolationNone = 1 36-40 FPS Profile: http://varium.fantasytalesonline.com/cleopatra/?report=AMIfv97G4QE4tZ0C_QNVYIJGmUlqCFkuh2X8gSJ2uGaJSXeMs6_CNbgPZTfHraLeKA70V7x33uDPWOa4WP2lxRWUgYIgj2ypdvWceRaQg-X2Clyf3Okp7gfEq8sggBDBFpKzlSCLCLkWh_mUGd4xvQsMkV3aBcEwZA Top Sample: (7.85%) argb32_image_mark (in CoreGraphics) + 1036 gfx.canvas.azure.quartz.interpolation = kCGInterpolationLow = 2 25-38 FPS Profile: http://varium.fantasytalesonline.com/cleopatra/?report=AMIfv97ObqbQl1WgrqA4gcxAhqusEbfDSbRh5YEnrPVimMIWRRkzg9V3ZDFXELnRF0Vc5CWv19g8gdYuEg_vr5IjLmcLW3Dp0NTMmYhuBJEsBK4uJhqKuAZkI7SX_r6Uq9OGbHWbg43cTybXwQGAqaOPHQ_4QHUITQ Top Sample: (24.88%) argb32_image_mark (in CoreGraphics) + 1036 gfx.canvas.azure.quartz.interpolation = kCGInterpolationHigh = 3 9-11 FPS Profile: http://varium.fantasytalesonline.com/cleopatra/?report=AMIfv95W2sC5rvzRyXojF7fuHDMtl2oLHm-Bz3rUGOxVkEi8NLUNYHhzAA2HUXeJW4Grjzfvz_ddCSqL8hvFbEB0fV0x7s-v6mkryk_0tZOgwmczLWtYD9FCTWliGUR9EsMqqxPHCZqC3vAI1jdnTjbi7qxqn0vRjQ Top Sample: (25.62%) resample_band (in CoreGraphics) + 1108 gfx.canvas.azure.quartz.interpolation = kCGInterpolationMedium = 4 9-20 FPS Profile: http://varium.fantasytalesonline.com/cleopatra/?report=AMIfv96KLTU4eTaRkIuC4XSjxBA6ogORaVDDyK0bJvMoja2y6RaefOazW9vf6Ig3RZu2ZqaAEMMZ3NoSMH3jtWdeYyoEfT6n8rbmxeJQhu4RFOn5cwer2mdP2QTl6h-UeYmSIshBBw07xt1_LCbN0uBRcH2dtKIv-A Top Sample: (19.84%) resample_band (in CoreGraphics) + 1108
Assignee | ||
Comment 7•12 years ago
|
||
kCGInterpolationDefault is most likely high. We only hit resample_band on Medium and higher and loose FPS significantly. Presumably that's Lanczos. We should consider using either Low or None.
Assignee | ||
Comment 8•12 years ago
|
||
We should aim to land this Monday for the aurora merge since this is low risk and big performance impact.
Comment 9•12 years ago
|
||
Comment on attachment 592602 [details] [diff] [review] Switch to kCGInterpolationLow Add a comment about how we only want to do this for canvas. Add perhaps an API proposal.
Attachment #592602 -
Flags: review?(jmuizelaar) → review+
Assignee | ||
Comment 10•12 years ago
|
||
https://hg.mozilla.org/integration/mozilla-inbound/rev/bf005f6e4d5f
Comment 11•12 years ago
|
||
https://hg.mozilla.org/mozilla-central/rev/bf005f6e4d5f
Status: ASSIGNED → RESOLVED
Closed: 12 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla12
You need to log in
before you can comment on or make changes to this bug.
Description
•