今天在京东上逛显卡,不得不感叹 tm 显卡发展这么快,我的 750 才两年就渣的不行了,然后看新显卡的参数,看到了流处理器这一项。
然后脑袋就发热了一想:显卡流处理这么多,理论上并行能力应该也很高,那么能给网站的服务器当 cpu 使吗?(这里的 cpu 不是指纯粹的 cpu ,就是把网站请求交给显卡处理得意思)那么按理说并发能力也高了
脑袋发热想的,也不懂啥浮点运算整数啥的,不要喷我哈。
1
xenme 2016-10-16 21:38:37 +08:00
CPU 大多都是处理的通用计算,基本不行。
处理一些视频转码啥的还行 |
2
binbinyouliiii OP @xenme 不能把复杂度不高的请求交给显卡干吗?显卡的一个流处理器能慢到什么程度?不太懂哈
|
3
hadoop 2016-10-16 21:51:22 +08:00
@binbinyouliiii 和显卡的数据交换也耗时间
|
4
a87150 2016-10-16 21:52:29 +08:00 1
|
5
slixurd 2016-10-16 22:00:46 +08:00
然而大部分请求并不是 CPU 密集型,服务器能有多少 CPU 消耗....
|
6
binbinyouliiii OP |
7
binbinyouliiii OP @slixurd 那么并发高的时候处理速度减慢是为什么呢?并发高的具体瓶颈是在哪个地方
|
8
JackBlack2006 2016-10-16 22:09:39 +08:00
楼上都没看新闻? AMD 和阿里合作了
“旗下的 Radeon Pro 显卡将为阿里提供云服务——简单说就是阿里云将使用 AMD 的专业卡做加速。” |
9
hadoop 2016-10-16 22:11:19 +08:00
@binbinyouliiii 还要考虑到 cpu 是通用计算, gpu 是专用计算,场景不适合 web 吧
|
10
slixurd 2016-10-16 22:20:48 +08:00 1
|
11
Zzzzzzzzz 2016-10-16 22:22:59 +08:00 1
@JackBlack2006 应该指这个吧? https://www.aliyun.com/product/hpc 但目前全是 nvidia 的产品, 而且通用计算领域, opencl 的生态也没 cuda 丰富啊.
|
12
yangff 2016-10-16 22:33:13 +08:00
不能。
几个方面来看下吧, I/O , GPU 和 CPU 没差,甚至 cache 上显卡还不如 CPU 。有这闲工夫不如上几张万兆网卡和 RAID ,插满内存来得快 业务处理, GPU 可以做,首先你的模型得十分简单,太复杂的操作就不要想了。然后你把这个自动机编译成几个不同的 stage ,然后每个 stage 包含一堆数据并行地跑得到输出,然后再按照不同的输出分配到不同的 stage …… 啥语言支持呢…… 大概你得自己搞个了。 然后你发现瓶颈是 stage 数量,毕竟 stage 一多时间全浪费在调度上了,那么,举个简单的例子,你 3 个 if 嵌套还可以放进一个 stage 里,多了就不行,和外部 IO 交互(产生副作用)的必须打断。 然后你随便打开一个 xxx.php 读一下…… 压缩、加密,这个看算法,可以丢 GPU 上,但是,______ |
13
yangff 2016-10-16 22:34:32 +08:00 1
总之,你简单的理解就是, GPU 的计算单元不支持 if ,每次对一堆数据只能进行相同的操作……
|
14
won 2016-10-16 22:39:56 +08:00 via Android
网站服务器不行,游戏服务器可以。我记得魔兽世界好像就是。
存储的发展的好慢啊,为什么光存储还得不到普及呢 |
15
think2011 2016-10-16 22:56:20 +08:00
我知道有调用显卡运算能力爆破 wifi 的...
|
16
txlty 2016-10-16 22:57:03 +08:00
农企的有人发了。补上吊打它的。
http://www.nvidia.cn/object/cudazone-cn.html |
17
yzl0208994 2016-10-16 23:53:12 +08:00
GPU 的 IO 能力不行,而服务器多数 IO 比较多
|
18
ryd994 2016-10-16 23:59:03 +08:00 via Android
服务器的并行和 GPU 的并行不是一回事啊
除非你攒到几百个一模一样的请求,然后同时进行操作 显卡指令都是处理一批数据,所以可以用来处理大批量数据 但是 Web 服务器每个请求都不一样,也不是同时到达 |
19
jhaohai 2016-10-17 01:16:42 +08:00 via iPhone
web 不是计算密集型的,没必要 gpu 加速
|
20
LazyZhu 2016-10-17 05:43:54 +08:00
网站服务器的瓶颈一般在 IO ,如磁盘读写,网络带宽等,而不是计算。
|
21
snnn 2016-10-17 08:46:27 +08:00 via Android
@JackBlack2006 搞机器学习的没有谁用 a 卡
|
22
lijsf 2016-10-17 10:21:45 +08:00
显卡适合做可并行的数值计算,如科学计算,图形计算,图像处理等,典型的大矩阵计算。业务服务器更多的是处理业务逻辑,实际上没啥数值计算需求。
|
23
kaneyuki 2016-10-17 10:54:25 +08:00
可以把显卡认为是对某些特定算法进行硬件封装。。
比如显卡有 10 条管线跑 AES 解密,这自然是并行的,而且硬件计算效率也远比 CPU 软件算效率高。 但是很显然,这并不能做服务器用。 农企那个也不是说替代 CPU ,而是对特定算法走 GPU 算,比如频繁加解密,生成随机数等 |
24
easing 2016-10-17 11:36:39 +08:00
显卡并不能做通用计算吧?
|
25
msg7086 2016-10-17 16:29:04 +08:00 via Android 1
GPU 擅长的是提前载入大量固定数据,然后每秒对这些数据做相同的运算,最后输出到屏幕上。
所以不能用显卡的原因: 1. 你没法提前导入大量数据到显存。 2. 你对一份数据做几百次相同的运算无意义。 3. 你运算的结果不会放到屏幕上。 |