多核新观念-象使用内存一样使用CPU?

开发 前端
多核时代,很重要的一点就是要将多个CPU核同时运转起来,提高CPU的利用率,说得专业一点就是要提高多核CPU的加速比系数。

多核时代,很重要的一点就是要将多个CPU核同时运转起来,提高CPU的利用率,说得专业一点就是要提高多核CPU的加速比系数。

但 是并不是任何时候都可以同时将多个核运转起来,比如一些不能并行化执行的代码,特别是使用了锁的代码,它的执行是串行化的,无法同时利用多个核,还有负载 平衡问题,多个任务无法划分得很均匀,导致实际情况中有些任务先运行完,有些任务后运行完,先运行完的CPU核就处于空闲状态。

是 不是任何时候都需要将多个核利用到***呢?答案是否定的,比如一个服务器软件,如果只有一个客户端连接过来,那么只要用一个核来处理这个请求已经绰绰有余 了,何必非要同时将多个核同时运行起来呢? 再比如在客户端软件中,客户做了一个操作后,机器只是进行一个时间非常短的运算就结果返回给用户,然后机器处 于空闲状态直到用户的下一次操作为止,在这种情况下,由于机器运算量很小,一个核进行运算完全能够满足用户所需的性能需求,就没有必要同时利用多个核进行 运算,因为很小的计算量情况下,多个核同时运行效率可能还不如一个核。

既 然有那么多情况下不需要多个核同时进行运算,那么买多核的机器干什么? 这不由得将CPU和内存比较起来,比如装了一个2G内存的机器,其实很多情况下是不可能将2G的内存都用完的,但是当运行一些大的应用,或者玩一些大型游 戏的情况下,内存就基本上都利用上了,其实以后用多核CPU可能就象用内存一样,并不是任何时候都需要将所有的CPU核都用上的,只有计算量很大的情况下 才需要完全利用多个CPU核来进行计算,也就是说全部的CPU核主要是为计算达到一定规模时才全部使用的,当然这个计算规模随CPU核数的不同而不同。

当 然使用CPU和使用内存并不是完全相同的,因为现在软件规模越来越大,大多数计算的规模是可以达到为多核而使用的,因为软件规模会随着CPU核数的增加而 同步增长,大部分情况下多个CPU核都是可以充分利用上的,而内存则不一样,不论是客户端机还是服务器,可能大部分时候内存利用率并不是很高,只有少数高 峰时候才能将内存全部用上。

原文链接:http://blog.csdn.net/drzhouweiming/article/details/1698721

 

责任编辑:陈四芳 来源: blog.csdn.net
相关推荐

2023-04-05 14:19:07

FlinkRedisNoSQL

2022-05-05 21:47:32

Linuxls 命令

2021-08-27 06:41:34

Docker ContainerdRun&Exec

2021-12-28 11:23:36

SQLServerExcel数据分析

2017-04-26 14:02:18

大数据数据分析Excel

2013-07-05 14:59:50

程序员GPU

2012-03-07 17:24:10

戴尔咨询

2011-02-28 10:38:13

Windows 8

2012-12-20 10:17:32

IT运维

2016-01-14 10:36:54

统一通信华为

2022-01-10 21:00:12

LinuxGNOME截图工具

2009-06-12 15:26:02

2015-08-25 09:52:36

云计算云计算产业云计算政策

2016-10-09 09:35:56

华云网际存储

2022-09-15 08:38:39

WebCPU数量

2013-01-11 18:10:56

软件

2021-10-17 22:02:27

显卡内存装机

2012-06-19 13:08:36

2014-06-05 11:25:10

点赞
收藏

51CTO技术栈公众号