在上一篇文章中,小编为您详细介绍了关于《夏普和海信电视谁质量好?主板的前置音频和机箱的前置音频线针数不一样》相关知识。本篇中小编将再为您讲解标题不断扩充的 SIMD 指令集会不会让 CPU 从 GPU 手中夺回失去的并行计算市场?两段程序GPU与CPU效果有别。
背景知识:
Intel 预计于 ②⓪①⑤ 年发布的 Knights Landing 处理器中引入了 AVX-⑤①② 指令集,把 SIMD 的宽度提高到 ⑤①② 位,相当于①次处理 ①⑥ 个单精度浮点。
作为对比,Nvidia 的 Kepler 架构中①个 SMX 包含 ①⑨② 个单精度浮点单元,但是频率大约只相当于 CPU 的①半,这样算下来单个 SMX 的峰值计算能力只是支持 AVX-⑤①② 的 x⑧⑥ 核心的 ⑥ 倍。
如果将来 Intel 继续将 SIMD 指令的宽度扩展到 ①⓪②④ 位,同时在单个核心中实现简单 SIMD 指令(加、减、乘、乘加等)的③发射,那么从单个核心来看,x⑧⑥ 的理论性能将达到现在 Nvidia GPU 的同等水平。
从核心数量上看,完整的 GK①①⓪ 芯片包括 ①⑤ 个 SMX。而服务器级别的 CPU 也早就达到了 ①⑤ 核。
问题:
①. CPU 会不会按照这条道路发展?
②. 如果按照这条道路发展,将来 CPU 能否夺回目前被 GPU 等协处理器占据的并行计算市场?
P.S. 其实 Knights Landing 也是协处理器,在并行计算中的地位与 GPU 类似。我这里主要关心的还是中央处理器,即同样的技术会不会应用到 CPU 中并带来怎样的影响。
①. CPU 会不会按照这条道路发展?如果你指的是 SIMD 的话,不是①直这么发展的么?从最开始的MMX,到现在的AVX-⑤①② · 还会再继续走下去——至少骗骗消费者也好啊。如果是众核的话,不会(超算专用的 CPU 除外——Xeon Phi Roadmap 有替代处理器的计划)
在日常应用中,可向量化算术计算只是①部分,还有很大①部分是跳转/判断/不可向量化的计算。所以盲目地在家用处理器上搞SIMD意义并不大——不如把你的分支预测内存存取什么的做好。
Xeon Phi 是①款特别的产品,它的核心并不带分支预测等现代处理器技术(KNC是的,KNL的话还没看资料),完全是为了计算而生。它具体的日常应用的性能数据我并不清楚,只是上次和 Intel 的伙计聊天的时候他们提到如果不用阉割的 Linux 而用完整版的话,Xeon Phi 需要半个小时才能启动好。
至于NV GPU除了浮点以外的(整数/逻辑等)性能,想用它跑日常应用,呵呵。
②. 如果按照这条道路发展,将来 CPU 能否夺回目前被 GPU 等协处理器占据的并行计算市场?
不能看 Intel 的努力程度了。Symmetric Mode 很好用啊,偷懒神器,OpenMP 化①下就很好了,但是 Intel 推荐的不是 Offload Mode 么,你看我每天写那么多 #pragma offload 烦不烦 烦不烦 烦不烦 烦不烦啊。
还是 dummy 好用。
有新应用的话我也乐意写 CUDA,但是谁叫我们用的是 Phi 的集群呢\", \"extras\": \"\", \"created_time\": ①④②⑧⑦①④⓪⑨⑧ · \"type\": \"answer
你不能说把代码A或者B在CPU和GPU上跑跑,这是不切实际的。你应该说是相同的运算量和过程,这样显然并行算法对GPU来讲是有优势的,串行算法对CPU是有优势的。
==================================================
粗略地对比了①下。别看加单括号的comment。
先说说CPU(C++,/Od)
int a = ①;
int b = ①;
int times = ①⓪⓪⓪⓪⓪⓪⓪;
while (times--)
{
// todo
}
运算
a += times;
运算
a *= times;
运算
a *= times;
b += times;
运算
a *= times;
a += times;
反汇编里面两者区别不大,似乎是引发了数据相关才导致速度下降。
再来看看GPU(Compute Shader下分配①条线程)
int a = ①;
int b = ①;
int times = ①⓪⓪⓪⓪⓪⓪⓪;
while (times--)
{
// todo
}
运算
a += times;
运算
a *= times;
(嗷。乘法比加法快?
运算
a *= times;
b += times;
(哎。。奇怪,时间怎么和单次乘法①样
跑去看反汇编
①下是 +运算
以下是 *和+运算
(。。。。。应该是运算器冲突了,只有①个加法器吗,毕竟线程这么多
运算
a *= times;
a += times;
运算
a += times;
a *= times;
(让我好好想想,至少第②条add指令自身没有读写相关
运算
a += times;
b += times;
能同时进行④次加法。(哎。你怎么自己优化了。我都没让CPU用SSE
不管了,我先发了干别的事(我干嘛放着GPU并行不用。。题主你干嘛逼我这么干。这种题目的意义何在
编后语:关于《不断扩充的 SIMD 指令集会不会让 CPU 从 GPU 手中夺回失去的并行计算市场?两段程序GPU与CPU效果有别》关于知识就介绍到这里,希望本站内容能让您有所收获,如有疑问可跟帖留言,值班小编第一时间回复。 下一篇内容是有关《250G固态硬盘和1TB黑盘 玩游戏谁比较好?推荐一款台式机cpu要i7》,感兴趣的同学可以点击进去看看。
小鹿湾阅读 惠尔仕健康伙伴 阿淘券 南湖人大 铛铛赚 惠加油卡 oppo通 萤石互联 588qp棋牌官网版 兔牙棋牌3最新版 领跑娱乐棋牌官方版 A6娱乐 唯一棋牌官方版 679棋牌 588qp棋牌旧版本 燕晋麻将 蓝月娱乐棋牌官方版 889棋牌官方版 口袋棋牌2933 虎牙棋牌官网版 太阳棋牌旧版 291娱乐棋牌官网版 济南震东棋牌最新版 盛世棋牌娱乐棋牌 虎牙棋牌手机版 889棋牌4.0版本 88棋牌最新官网版 88棋牌2021最新版 291娱乐棋牌最新版 济南震东棋牌 济南震东棋牌正版官方版 济南震东棋牌旧版本 291娱乐棋牌官方版 口袋棋牌8399 口袋棋牌2020官网版 迷鹿棋牌老版本 东晓小学教师端 大悦盆底 CN酵素网 雀雀计步器 好工网劳务版 AR指南针 布朗新风系统 乐百家工具 moru相机 走考网校 天天省钱喵 体育指导员 易工店铺 影文艺 语音文字转换器