linux驱动优化重构提高效率的心得

1.定义的结构体,元素的size比较小的放前面,size比价大的放后面,编译器会优化整个结构体占用的内存


2.数组的大小最好按照4/8的倍速来定义


3.程序中用移位代替除法,提高程序运行的小笼包


4.需要循环,或者多次调度的函数,一定要注意,不要留下冗余,记住2/8法则,20%的代码决定了整个程序的效率


5.优化程序运行效率可以从设计框架层面,算法方面,code方面来提高。


6.最近内存越来越贵,相比运算速度,内存比较能限制量产的利润


7.switch的case的查询顺序编译器优化过一轮,不是依次从第一个开始查的,最高概率的case应该放在switch的中间


8.函数的参数不要多于4个,小于4个,是通过寄存器的传递,>=4个,要通过栈来传递的


9.定义一个变量,int这种32位的直接赋值,但是char,short int这8、16位赋值的要通过移位的步骤,不过测试后效率是一样的,arm指令集已经做好了


10.五级流水线、七级流水线,最高程序跑的越猛,提前把下一条指令执行,但是循环里面会受到限制,可以通过拆解循环,循环里面多做点事=事情,从而减少循环的次数,来优化一把。


11.代码设计思想,策略和机制相分离,策略层做控制,机制做逻辑实现,层次明朗的代码更容易维护


12.针对不同的arm体系结构,和编译器的编译选项,细致优化,比较耗时间。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值