在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
NeonTest介绍通过NDK(JNI)测试android 平台中neon性能对比 测试代码测试代码仓库地址 https://gitee.com/chenjimcom/NeonTest 主要修改说明:
ndk { abiFilters "armeabi-v7a" }
…… ENABLE_LANGUAGE(ASM) …… convert_asm.s ……
……//模拟1920x1080的YUV数据#define N (1920*1080*3)……/** * C 版本测试函数 */void reference_convert(uint8_t *__restrict dest, uint8_t *__restrict src, int n)……/** * 修改部分为ARM指令后的测试函数 */void neon_convert(uint8_t *__restrict dest, uint8_t *__restrict src, int n) ……//纯ARM指令(汇编)版本函数extern "C" void convert_asm_neon(uint8_t *dest, uint8_t *src, int n) __asm__("convert_asm_neon"); 测试结果 D/TEST_NEON: C version Time:22.684000ms D/TEST_NEON: Neon version Time:13.888000ms D/TEST_NEON: ASM version Time:0.986000ms D/TEST_NEON: C version Time:21.759001ms D/TEST_NEON: Neon version Time:13.948000ms D/TEST_NEON: ASM version Time:0.641000ms D/TEST_NEON: C version Time:21.688000ms D/TEST_NEON: Neon version Time:13.920000ms D/TEST_NEON: ASM version Time:0.656000ms D/TEST_NEON: C version Time:21.735001ms D/TEST_NEON: Neon version Time:13.958000ms D/TEST_NEON: ASM version Time:0.945000ms 测试结论Neon相比C快1倍左右,ASM相比C快差不多20倍 参考https://github.com/Lakers2005/test-neon 相关连接 |
请发表评论