如何提高Android应用的CPU占用率?
没错,我想提高CPU占用率……
我有一个模块需要进行复杂的计算,已经经过了算法优化和硬件加速,但是依然需要很多CPU算力,提高CPU的利用率可以降低计算时间。
在Android的Linux层上测试这个计算任务,CPU占用率稳定为80%~90%;而同样的测试(通过JNI)运行在Android应用层上时,CPU占用率仅为50%~70%,使用top指令查看的总CPU使用率甚至不足70%。
看到top中显示的进程PRI为0,应该是最高优先级了吧……?试过指令renice -20 -p XXX,结果CPU占用率甚至更低了……
再具体一点的话,CPU是4核的,计算任务本身已经做了并行处理,运行期间可能出现的并行线程数为2~8。
假设不考虑用户体验的问题,怎么样才能尽可能地利用CPU?