应用程序可以通过哪些方面提高对CPU的利用率?

应用程序可以通过哪些方面提高对CPU的利用率

参与9

3同行回答

byethenbyethen系统工程师CMBC
nitkey已经说得很完整了,我随便补充下。要提高CPU利用率,本质上还是减少IO wait, 调用异步IO是很好的实现方式,但会增加应用程序设计的难度。然后就是计算资源云化,虚拟化/容器本身也是一种应用,通过将资源集中,统一调配,合理分配计算资源,能够提高CPU的使用效率。...显示全部

nitkey已经说得很完整了,我随便补充下。

要提高CPU利用率,本质上还是减少IO wait, 调用异步IO是很好的实现方式,但会增加应用程序设计的难度。

然后就是计算资源云化,虚拟化/容器本身也是一种应用,通过将资源集中,统一调配,合理分配计算资源,能够提高CPU的使用效率。

收起
银行 · 2016-12-29
浏览1974
nitkeynitkey系统架构师ECT
1.选择合适的I/O size,包括初始化缓冲区,系统调用,上下文切换灯,从效率上说,每次I/O传输的数据越多,效率越高2.善于利用缓存,但是缓存需要考虑缓存的一致性3.并发和并行,通过多进程或者多线程的编程方式4.非阻塞I/O,异步发起I/O,不阻塞当前的线程,线程可以执行其他工作5.CPU绑定,线程...显示全部

1.选择合适的I/O size,包括初始化缓冲区,系统调用,上下文切换灯,从效率上说,每次I/O传输的数据越多,效率越高

2.善于利用缓存,但是缓存需要考虑缓存的一致性

3.并发和并行,通过多进程或者多线程的编程方式

4.非阻塞I/O,异步发起I/O,不阻塞当前的线程,线程可以执行其他工作

5.CPU绑定,线程执行I/O后,能像执行I/O之前那样运行在同一CPU上,提高应用程序的内存本地性,减少内存I/O

6.垃圾回收,GC会消耗CPU资源,JAVA类应用程序也需要特别关注GC

收起
互联网服务 · 2016-12-29
浏览2036
sunwei3sunwei3数据库管理员EBSCN
oracle的话一般会开启异步IO。多个dbwr进程。通过增加IO速度,提高CPU利用率显示全部

oracle的话一般会开启异步IO。多个dbwr进程。

通过增加IO速度,提高CPU利用率

收起
证券 · 2016-12-29
浏览1935

提问者

li
系统工程师CUFS
擅长领域: 云计算PowerVCiaas

问题来自

相关问题

相关资料

相关文章

问题状态

  • 发布时间:2016-12-23
  • 关注会员:4 人
  • 问题浏览:5401
  • 最近回答:2016-12-29
  • X社区推广