笔者在日前工作当中接触了NEON优化等内容,现将网络上搜集到的资料整理如下,以供参考。如有侵权,尽请告知,即刻删除。
1.官方链接
NEON指令官方文档:http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0473j/dom1361289959991.html
NEON Intrinsics官方文档:http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.dui0491h/Badcdfad.html
快速查找NEON Intrinsics:https://developer.arm.com/technologies/neon/intrinsics
包含指令Timing(Execution Latancy & Throughput)等信息:http://infocenter.arm.com/help/topic/com.arm.doc.uan0015b/Cortex_A57_Software_Optimization_Guide_external.pdf
2.开源库
Ne10:http://projectne10.github.io/Ne10/
3.中文博客
【入门】
NEON指令详解:http://blog.csdn.net/chshplp_liaoping/article/details/12752749
NEON Intrinsics命名方式参考:http://blog.throneclay.com/2015/12/30/armneon/
优化技巧概述:http://zyddora.github.io/2016/02/28/neon_1/以及http://zyddora.github.io/2016/03/16/neon_2/
【进阶】
汇编代码优化细节:http://blog.csdn.net/yang_qi168/article/details/23935141
4.Tips
4.1 关于定点除法实现的讨论,涉及到牛顿迭代法等:https://community.arm.com/tools/f/discussions/930/division-with-neon
4.2 Linux环境下确认处理器是否支持NEON:
cat /proc/cpuinfo | grep neon
看是否有如下内容
Features : swp half thumb fastmult vfp edsp neon vfpv3 tlsvfpv4 idiva idivt