移动端算法优化是个很庞大的话题。从计算机体系到指令,涉及到非常广而深的东西。本文尝试以常见的算法为例,阐述算法在单线程场景下的加速与优化,多线程是最后的收尾,没啥可说的。而至于具体的场景,如金字塔、滤波、降噪等,优化的思路都是相同的:减少 IO,一次 IO 完成尽可能多的计算。
本文会使用 Neon, OpenCL
来优化算法,如果有可能也会引入 DSP
。本文持续更新,整理算法优化相关的经验。额外的,确保打开了 O3
编译选项,打开 release
模式等,否则会影响算法的执行时间。