Linux 下面编程提高代码执行效率的小技巧
2015-07-23 09:38
597 查看
(1) 字节对齐,减少读取内存总线的次数。
(2) 使用连续内存空间,提高cache的命中率。
(3) 使用likely和unlikely宏,避免跳转指令带来 的指令预取失效,降低指令流水的效率。
(4 ) 使用_read_mostly ,将变量对应的内存,强制放入cache中,提高cache的命中率。
(5) 合理使用互斥锁,避免优先级反转的情况发生。
(6)避免多次调用同一个函数,可以采取暂存的方法,例如,尽量不要用递归程序。递归程序不安全,容易导致堆栈溢出。
(7) 如果函数不被外部访问,可以声明为static函数,可以避免外部链接。
(8) 避免不必要的内存访问,代码尽可能的减少内存访问次数。
(9) 尽可能的减少系统调用。
(2) 使用连续内存空间,提高cache的命中率。
(3) 使用likely和unlikely宏,避免跳转指令带来 的指令预取失效,降低指令流水的效率。
(4 ) 使用_read_mostly ,将变量对应的内存,强制放入cache中,提高cache的命中率。
(5) 合理使用互斥锁,避免优先级反转的情况发生。
(6)避免多次调用同一个函数,可以采取暂存的方法,例如,尽量不要用递归程序。递归程序不安全,容易导致堆栈溢出。
(7) 如果函数不被外部访问,可以声明为static函数,可以避免外部链接。
(8) 避免不必要的内存访问,代码尽可能的减少内存访问次数。
(9) 尽可能的减少系统调用。
相关文章推荐
- Linux GCC常用命令
- 关闭selinux
- Centos7安装JDK
- 在kali liunx上编译OsmocomBB
- Python执行Linux系统命令的4种方法
- linux下新建用户
- 在android手机chroot的debian linux下无权执行ping命令的问题
- 用Linux命令对两个文件进行连接操作
- linux查看文件大小
- 本地配置yum源的方法
- Unix & Linux 命令分类表
- linux 同步IO: sync、fsync与fdatasync、sys_sync【转】
- Linux的WDT(watchdog)驱动
- linux驱动基础开发——linux 内核配置机制
- Linux内核namespace机制
- ubuntu arm-linux-gcc 的安装 64位设置兼容32位的实现
- linux下修改时间
- linux动态库默认搜索路径设置的三种方法
- linux下杀死进程(kill)的N种方法
- 在 RHEL/CentOS 上为Web服务器架设 “XR”(Crossroads) 负载均衡器