neon汇编代码的乱序优化

本人使用的汇编代码乱序优化工具是:http://pulsar.webshaker.net/ccc/index.php?lng=us

乱序优化之前的代码:

vld1.8		d2,		[r1],r3
vld1.8		d3,		[r6],r3	
vld1.8		d4,		[r1],r3	
vld1.8		d5,		[r6],r3	
vld1.8		d6,		[r1],r3	
vld1.8		d7,		[r6],r3
vmovl.u8	q4,		d2
vmovl.u8	q5,		d3
vmovl.u8	q6,		d4
vmovl.u8	q7,		d5
vmovl.u8	q8,		d6
vmovl.u8	q9,		d7

运行分析结果:



	vld1.8		d2,		[r1],r3
	vld1.8		d3,		[r6],r3
	vmovl.u8	q4,		d2
	vld1.8		d4,		[r1],r3
	vmovl.u8	q5,		d3
	vld1.8		d5,		[r6],r3
	vmovl.u8	q6,		d4
	vld1.8		d6,		[r1],r3
	vmovl.u8	q7,		d5
	vld1.8		d7,		[r6],r3
	vmovl.u8	q8,		d6
	vmovl.u8	q9,		d7


从上面的分析结果可以发现使用乱序优化可以将指令pipeline。这样可以减少指令因为前后之间的等待时延,更加有效地利用处理器的cycle。


在实际使用过程中,发现编译器也可以实现汇编语言的乱序优化。经过本人的编程实践,通常编译器使用-O2优化等级的时候跟自己手动乱序优化后的 -O的效果差不多。不过乱序的思想还是值得学习和理解的~


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值