Closed
Bug 489148
Opened 16 years ago
Closed 12 years ago
Implement ARM NEON optimized colorspace conversion for JPEG decoding
Categories
(Core :: Graphics: ImageLib, enhancement)
Tracking
()
RESOLVED
DUPLICATE
of bug 698519
People
(Reporter: ilpo.ruotsalainen, Assigned: ilpo.ruotsalainen)
References
(Blocks 2 open bugs)
Details
Attachments
(1 file)
5.00 KB,
patch
|
Details | Diff | Splinter Review |
User-Agent: Opera/9.63 (X11; Linux i686; U; en) Presto/2.1.1
Build Identifier:
Implementing the YCC->ARGB colorspace conversion with ARM NEON instructions can speed up decoding JPEG images a lot.
Reproducible: Always
Assignee | ||
Comment 1•16 years ago
|
||
This patch is by no means complete, the routine itself works (accuracy is slightly worse than the C code, as with the SSE2 version), but there's no NEON detection around. The assembler is optimized for the SnapDragon CPU but is very fast on Cortex-A8 also.
Benchmark results:
without patch: 93 runs, min/max/avg/stddev: 368.70/410.75/399.10/9.29
with patch: 643 runs, min/max/avg/stddev: 314.13/356.16/345.72/5.94
Would love some feedback on the detection part, is runtime detection wanted?
Updated•16 years ago
|
Status: UNCONFIRMED → NEW
Ever confirmed: true
Updated•16 years ago
|
Version: unspecified → Trunk
Updated•16 years ago
|
Assignee: nobody → ilpo.ruotsalainen
Comment 2•16 years ago
|
||
We're going to have some runtime detection code for pixman. See bug 482676. I'm not sure the best way to share it, but it seems like it would be valuable.
Comment 3•15 years ago
|
||
I'm trying to get all (or at least more of) our CPU/compiler feature detection into xpcom/glue/SSE.h (which may need a name change). Perhaps we could put whatever detection we need in there, too.
Ilpo, are you still interested in pushing this patch forward? If not, I might pick it up.
Comment 4•14 years ago
|
||
What are we doing with this bug since bug #573948 landed ?
Comment 5•14 years ago
|
||
(In reply to comment #4)
> What are we doing with this bug since bug #573948 landed ?
bug 584652 is one way forward. If we write NEON methods for libjpeg-turbo, we could integrate colorspace conversions into those methods.
Comment 6•13 years ago
|
||
(In reply to Justin Lebar [:jlebar] from comment #5)
> (In reply to comment #4)
> > What are we doing with this bug since bug #573948 landed ?
>
> bug 584652 is one way forward. If we write NEON methods for libjpeg-turbo,
> we could integrate colorspace conversions into those methods.
libjepg-turbo 1.1.90 (1.2.x or later) has several NEON optimization. Performance data is https://wiki.linaro.org/TomGall/LibJpegTurbo.
Comment 7•12 years ago
|
||
Recent libjpeg turbo has landed.
Status: NEW → RESOLVED
Closed: 12 years ago
Resolution: --- → DUPLICATE
You need to log in
before you can comment on or make changes to this bug.
Description
•