PCEVA,PC绝对领域,探寻真正的电脑知识
打印 上一主题 下一主题
开启左侧

论指令集和超线程的作用与重要性

[复制链接]
61#
chungexcy  楼主| 发表于 2015-9-20 01:31 发自PCEVA移动客户端 | 只看该作者
Y6-0785 发表于 2015-9-19 13:08
AMD表现很差,并且温度不高,应该就是优化不够。
Athlon X4 760K 4.7G
all: 21.3793 sec, 59.5531 GFLOPS

有可能优化问题。不过x4和a10不是同一架构吗,怎么看上去差别这么大
62#
Y6-0785 发表于 2015-9-20 12:09 | 只看该作者
chungexcy 发表于 2015-9-20 01:31
有可能优化问题。不过x4和a10不是同一架构吗,怎么看上去差别这么大

A10-7850K是压路机,比X4 760K的打桩机新一代。
7850K 3.7G 76.2,换算到1G是20.6。
760K 4.7G 60.8,换算到1G是12.9。
这差距确实很有疑问,希望有其他打桩机、压路机用户来跑跑。
63#
chungexcy  楼主| 发表于 2015-9-20 14:36 | 只看该作者
Y6-0785 发表于 2015-9-20 12:09
A10-7850K是压路机,比X4 760K的打桩机新一代。
7850K 3.7G 76.2,换算到1G是20.6。
760K 4.7G 60.8,换 ...

A10-7850K看上去性能比较的合理。
A10每个模块(两个核心)的浮点计算单元只有一个FMA,数量刚好是Haswell的一半(Haswell每个核心有两个FMA,所以超线程能提升45%)。
也就是说A10单位频率性能也差不多是双核Haswell/Skylake的一半多点。

64#
Y6-0785 发表于 2015-9-20 17:22 | 只看该作者
本帖最后由 Y6-0785 于 2015-9-20 17:39 编辑
chungexcy 发表于 2015-9-20 14:36
A10-7850K看上去性能比较的合理。
A10每个模块(两个核心)的浮点计算单元只有一个FMA,数量刚好是Haswel ...

那就把A家双模块四核跟I家双核无HT相比。
由4590S推出Haswell双核1G无HT的成绩是23.3,由5600U推出Broadwell双核1G带HT的成绩是30.5,由6700K推出Skylake双核1G无HT的成绩是28,带HT的成绩是37.8。
A10-7850K双模块四核1G跑出20.6,比Haswell双核1G无HT差一点,确实比较合理。

补充:刚拿老妈的A8-5600K 4.0G试了一下,51.8582,换算到1G是12.96,跟我的X4 760K差不多。
65#
dongyi945 发表于 2015-9-20 18:49 | 只看该作者
板砖财 发表于 2015-9-17 23:50
有意思,我正想写一个快速查找同一张图片的程序,可以跨越压缩比/分辨率/图片格式,判断不同的图片内容是否 ...

嗯,这种软件实际已经有很多了,单纯只是需要这种软件可以下载现成的。不过你是想自己实现这种算法的话也很不错。

66#
chungexcy  楼主| 发表于 2015-9-20 19:05 | 只看该作者
本帖最后由 chungexcy 于 2015-9-20 19:10 编辑
Y6-0785 发表于 2015-9-20 17:22
那就把A家双模块四核跟I家双核无HT相比。
由4590S推出Haswell双核1G无HT的成绩是23.3,由5600U推出Broadwe ...

关于A10的FMA效率问题我是这么看的。
A10相当于两个核心同时去抢一个计算单元,所以应该要比Intel带虚拟核心(HT)的两个线程去用两个单元的相对效率高。所以A10的效率是比Skylake带ht的一半好的。
至于和Intel一个核心去使用两份计算单元的i5系列,由于存在指令集多发射和并行等技术,Intel不带HT的性能自然比A10强不少。

至于为什么x4、a8不如a10。。。我有一个猜测。你去看一下你的x4、a8,CPU-Z显示的指令集支持情况。
本来我是想贴图的,但是发现搜出来A8-5600K居然有两种版本。给我感觉老版本的cpuz只显示到avx,新版本的显示fma3/4,但这一点从道理上是说不通的。这要么是cpuz有错(我倾向于不这样认为),要么是amd其实更新过一代(我也不了解amd的cpu也不好说)。


67#
overthink 发表于 2015-9-21 10:17 | 只看该作者
tomoyo 发表于 2015-9-19 23:47
跨度太长了。。。SNB我估计真的再战3,4年。除了少数更新新指令集软件大部分情况下,普通人也不可能用得着 ...

说不定用得到,但是普通用户没感觉
68#
chungexcy  楼主| 发表于 2015-9-21 12:35 | 只看该作者
overthink 发表于 2015-9-21 10:17
说不定用得到,但是普通用户没感觉

理想很丰满,现实很骨干。FMA的适用性实际远不如AVX翻倍来的方便。
FMA能有提升其实很局限。除非像这个程序大量运行矩阵乘法: c=a*b+c,AVX做这件事则需要两步,能有可观的提升还必须瓶颈在运算单元而不在缓存和内存的。
所以如果下一代引入avx-512,并且像sandy bridge那样把L1带宽再次翻倍,那么将会有很多软件性能都再翻倍。现在sandy bridge很多时候都比前一代快近一倍的,比如photoshop、视频解码效率。

69#
Y6-0785 发表于 2015-9-22 13:56 | 只看该作者
chungexcy 发表于 2015-9-20 19:05
关于A10的FMA效率问题我是这么看的。
A10相当于两个核心同时去抢一个计算单元,所以应该要比Intel带虚拟核 ...





5600K跑的是Win7(自动更新所有补丁),760K跑的是Win10,都支持AVX、FMA3、FMA4。
我觉得AMD不会偷偷更新(Trinity到Richland只是步进升级,也敢说是新一代),显示只支持AVX不支持FMA可能是CPU-Z版本太老,或者Win7没打过补丁?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
70#
chungexcy  楼主| 发表于 2015-9-22 14:40 | 只看该作者
本帖最后由 chungexcy 于 2015-9-22 15:00 编辑
Y6-0785 发表于 2015-9-22 13:56
5600K跑的是Win7(自动更新所有补丁),760K跑的是Win10,都支持AVX、FMA3、FMA4。
我觉得AMD不会偷偷 ...

那就应该是老版本CPU-Z显示问题。既然都支持FMA3,指令集相同,那么在你和作者的A10,程序应该都是用的FMA优化。

我大概有一个新的猜测。我找了一个 A10 的截图,你看 L1 inst. 缓存。A8 是 64k,A10 是 96k,指令发射也从 2way 升级到了 3way (这里应该是指令执行效率的关键)。然后 A8 (13Gflops) 的单位性能正好是 A10 (20Gflops) 的 2/3?

这个程序我确信L1 data 缓存不是瓶颈(寄存器刚好够放运算中间结果的热数据)。而且作者程序性能的关键部分对指令集并行要求很高。我看代码,每连续两条FMA指令,用的数据是没有交叉的,也就是说理论上是可以同时独立执行的,发射越多并行效率越好。而 Intel的 L1 inst. 是 8way。

我认为 AMD L1 inst. 缓存的发射数限制了性能的发挥。你能试一试在bat文件里的那一行后面加一个 -j 2 再跑一次吗,看看性能又能发挥多少(意思是只用两个线程)?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
71#
Y6-0785 发表于 2015-9-28 03:39 | 只看该作者
chungexcy 发表于 2015-9-22 14:40
那就应该是老版本CPU-Z显示问题。既然都支持FMA3,指令集相同,那么在你和作者的A10,程序应该都是用的FMA ...

不好意思,拖了几天才跑。X4 760K 4.7G 双线程 35.1299sec,36.2427GFLOPS,换算到1G是7.7,大约是四线程12.9的60%。
72#
chungexcy  楼主| 发表于 2015-10-2 06:09 | 只看该作者
本帖最后由 chungexcy 于 2015-10-2 06:57 编辑
Y6-0785 发表于 2015-9-28 03:39
不好意思,拖了几天才跑。X4 760K 4.7G 双线程 35.1299sec,36.2427GFLOPS,换算到1G是7.7,大约是四线程 ...

好的,谢谢啦。我之前的猜想也没有得到验证,还是不确信为什么有这个差距。

two-way set associative cache代表一条指令可以被同时存放在cache的两个位置,这肯定涉及同时取指令的效率问题,没有更多的数据也不好继续分析。
不过wiki上的描述是增加way,会增大缓存查找时间,但会降低缓存miss率。

64kb 2 way 和 96kb 3 way ,这图估计的差距应该还是蛮大的,看上去小了不少。。。
我把你的数据贴到2楼补充部分了。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
73#
暴疯狂笑 发表于 2015-10-2 07:56 | 只看该作者
gtx9 发表于 2015-9-18 13:51
支持就可以了,又不是不能用

消费者花钱买性能,不是花钱买支持。

能用 和 好用:天壤之别。

这个帖子还是印证了DIY这些年最基本的一个事实,专业应用还是选择Intel:高效又省心。
74#
chungexcy  楼主| 发表于 2015-10-2 11:11 | 只看该作者
547737657 发表于 2015-9-19 00:11
楼主,能否加入一些AMD处理器的跑分?或者来个链接,对比下,明年ZEN出来再挖坟? ...

二楼贴了一些 AMD 处理器的成绩,你可以来看看。

75#
chungexcy  楼主| 发表于 2015-10-2 11:47 | 只看该作者
暴疯狂笑 发表于 2015-10-2 07:56
消费者花钱买性能,不是花钱买支持。

能用 和 好用:天壤之别。

其实我本来没打算测试AMD的,后面有坛友问,又刚好有人测了下就帖前面了。

在游戏方面,两家的差距其实是最小的。其他任何有高性能要求的,服务器、超算,cpu部分多是intel或者IBM。

做我这件同样的事情,6700k用4s,超频的760K用21s,p9700用55s。如果再考虑每w性能,差距更大。
76#
Xudan 发表于 2015-10-5 02:08 | 只看该作者
看来intel的cpu每年确实是在进步,只不过那些游戏程序员没有用到新特性。
77#
chungexcy  楼主| 发表于 2015-10-5 07:20 发自PCEVA移动客户端 | 只看该作者
Xudan 发表于 2015-10-5 02:08
看来intel的cpu每年确实是在进步,只不过那些游戏程序员没有用到新特性。

是的,在服务器领域,算上核心数的提升非常恐怖。
sandy bridge那带e7最多10核,而haswell的e7能到18核了。
本来skylake的avx单元也要翻倍的,结果被推迟了到e5/e7,而skylake的e7预测能到28核。。。
78#
chungexcy  楼主| 发表于 2015-11-10 14:32 | 只看该作者
本帖最后由 chungexcy 于 2015-11-10 15:07 编辑
royalk 发表于 2015-9-18 16:53
可以,加吧
4线程,all是223.434,filter是245.022
8线程前边截图里有了

royalk您好,之前请您用6700k跑了一个waifu2x。最近那个作者更新了一个版本,在我的5200u上有了50%的提升,效率直逼理论的74-77%。可否请您再帮忙用skylake测一下新版本的效率提升?方便的话也请再用一张大图再试试(比如这张http://bbs.pceva.com.cn/forum.php?mod=attachment&aid=MzI5MDEwfGYyYjAxZGVkfDE0NDcxMzY5OTZ8MTA1MTI5fDEyMzc5OQ%3D%3D¬humb=yes)。

新的下载地址是http://pan.baidu.com/s/1o65ZpF0
注意:run.bat最好不要重新用bat_for_cpu.exe生成(因为改了其他参数--block_size 1024,生成新的就会覆盖),直接运行就好。如果换大图,麻烦重命名一下,谢谢啦

PS,如果方便的话,bat里去掉--disable-gpu这个地方,看看你的960是不是也提升了,还是只提升了cpu性能。我估计只是cpu而已。
79#
royalk 发表于 2015-11-10 19:11 | 只看该作者
chungexcy 发表于 2015-11-10 14:32
royalk您好,之前请您用6700k跑了一个waifu2x。最近那个作者更新了一个版本,在我的5200u上有了50%的提升 ...

明天我抽空跑一下,最近平台变动比较大,一直没空跑
80#
蓝天翔燕 发表于 2015-11-10 23:29 | 只看该作者
royalk 发表于 2015-9-17 16:38
所以不要说近几代CPU没什么提升,只是新的指令集在大部分应用里你用不到。 ...

很可惜日常应用很难用到,所以大家才有二代i5超超战几年的观念
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部