找回密码
 欢迎注册
楼主: gxqcn

[原创] 追求极致的速度必须了解CPU指令集发展趋势

[复制链接]
发表于 2009-10-15 11:58:45 | 显示全部楼层
另外,增加了AES加密算法的硬件支持 算上CRC32 两个算法支持了
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2009-10-15 12:12:18 | 显示全部楼层
看了英文文档 仅仅存在128位的操作 乘法也最多是32 * 32 256位不过能增加一次处理数据的次数吧 寄存器是影射的XMM 即低位128和XMM重合 高位128硬件附加的 无心人 发表于 2009-10-15 11:57
乘法若能到达到64*64就好了, 否则还得用最原始的 mul 指令。
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2009-10-15 13:39:44 | 显示全部楼层
64位的乘法足够了 可惜不能并行处理
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2009-10-15 14:13:03 | 显示全部楼层
最关键的就是要有可替代 mul 进行并行处理的指令, 这将直接影响大数算法的设计。
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2009-10-15 15:55:54 | 显示全部楼层
那SSE2已经有了并行乘法了
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2009-10-15 16:13:04 | 显示全部楼层
我说的是64位OS下。 因为用 mul 指令最大的缺陷是必须占用 RAX、RDX 两个寄存器(imul 指令自由点,但有时不符合要求)。
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
发表于 2009-10-15 17:36:56 | 显示全部楼层
那没有了 我看了,没有64位乘法 要不你再查查
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2011-5-9 10:19:44 | 显示全部楼层
现在 SNB 已大规模上市,我原本寄希望于新指令集 AVX 会有些新的整数指令,但查阅了些资料后略有些失望,因为新指令绝大多数是浮点运算服务的。 今天搜索资料,突然发现一个很好玩可能很有用的指令——CLMUL instruction set, 其中有:
Instruction
Description
PCLMULQDQPerforms a carry-less multiplication of two 64-bit integers
  1. PCLMULLQLQDQ xmmreg,xmmrm [rm: 66 0f 3a 44 /r 00]
  2. PCLMULHQLQDQ xmmreg,xmmrm [rm: 66 0f 3a 44 /r 01]
  3. PCLMULLQHQDQ xmmreg,xmmrm [rm: 66 0f 3a 44 /r 02]
  4. PCLMULHQHQDQ xmmreg,xmmrm [rm: 66 0f 3a 44 /r 03]
  5. PCLMULQDQ xmmreg,xmmrm,imm [rmi: 66 0f 3a 44 /r ib]
复制代码
也就是说该系列指令已具备两个64位的乘法,得到的结果是128位吗? 如果是,那就太好了!终于可以在SIMD4中实现并行的64位无符号整数乘法了! 是这样的吗?大家来讨论下吧。。。
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2011-5-9 10:50:38 | 显示全部楼层
经查阅Intel的技术文档,好像是结果为127bit,其中最高位一直置“0”,难道这就是指“Carry-less Multiplication (CLMUL) ”? 值得研究研究。
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
 楼主| 发表于 2011-5-9 11:26:22 | 显示全部楼层
很遗憾,这个“Carry-less Multiplication (CLMUL) ”不适用于通常的整数乘法
毋因群疑而阻独见  毋任己意而废人言
毋私小惠而伤大体  毋借公论以快私情
您需要登录后才可以回帖 登录 | 欢迎注册

本版积分规则

小黑屋|手机版|数学研发网 ( 苏ICP备07505100号 )

GMT+8, 2024-12-27 20:31 , Processed in 0.032949 second(s), 14 queries .

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表