Cortex-A7 下neon vld指令受memory/cache影响的探讨

[复制链接]
315|0
 楼主| 冰糖炖雪梨 发表于 2018-9-8 17:24 | 显示全部楼层 |阅读模式
在使用汇编优化neon时,发现一个问题:
假设函数的输入两个参数x[2048],y[2048],那么x,y的首地址是不连续的
当在汇编中只读x的数据时所用时间明显比即读取x,也读取y的数据要长很多,我猜想是由于cache没有高效利用的原因,即造成了hit miss的现象,有什么方法可以尽可能的利用cache呢?
汇编代码如下:
只读取x
vld1.32    {d0-d1}, [r0]!\n\nvld1.32    {d2-d3}, [r0]!\n读取x,y
vld1.32    {d0-d1}, [r0]!\n\nvld1.32    {d0-d1}, [r1]!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

430

主题

436

帖子

0

粉丝
快速回复 在线客服 返回列表 返回顶部