IVY Bridge : There's more than 22nm(IVB的新指令)

今天在百度上看到一则消息——

http://tieba.baidu.com/p/1362181987
IVY Bridge : There's more than 22nm
I named this title...this is a information that were said to be confirmed on Intel forums

"
• Two instructions to support 16-bit floating-point data type conversion to and from single-precision floating-point type. Conversion to packed 16-bit floating-point values from packed single-precision floating-point values also provides rounding control using an immediate byte. These float-16 instructions convert packed data types of different sizes following the same manner as the 256-bit vector SIMD extension, AVX.
• One instruction that generates random numbers of 16/32/64 bit wide random
integers. The random number generator instruction operates on general-purpose registers.
• Four instructions that allow software working in 64-bit environment to read and write FS base and GS base registers in all privileged levels.
"

From the point of view of marketing, this see***ike what they've done on Westmere, which they improved the register and buffer system , making it efficient for virtual machine.

Well, tecnically, this seems to be more important. B3Der once were discussing about how much will 16-bit floating-point vertex processing on Haswell speed up the graphics performance. Seems now it has advanced to IVY Bridge.

尝试翻译了一下——

1. 2条指令用于支持16位浮点和(32位)单精度浮点的转换。(后面没看明白,似乎还支持打包16位,同时还能用在AVX指令集中)
2. 1条指令用于生成 随机的 16/32/64位整数。该指令能用于通用寄存器。
3. 4条指令允许软件能在64位环境的任何访问级下读写FS、GS寄存器。

对于消息真伪,我先利用Google搜索了一番——

http://208.65.201.106/showthread.php?p=32834403
Yesterday, 12:01 PM    #118 
CPUarchitect
Member
Join Date: Jun 2011
Posts: 48  

--------------------------------------------------------------------------------

Quote: Oh really? IVY starts to support 16bit floating point?

Yes, according to the AVX software programming interface, and confirmed in the Intel forums, Ivy Bridge adds:

• Two instructions to support 16-bit floating-point data type conversion to and from single-precision floating-point type. Conversion to packed 16-bit floating-point values from packed single-precision floating-point values also provides rounding control using an immediate byte. These float-16 instructions convert packed data types of different sizes following the same manner as the 256-bit vector SIMD extension, AVX.
• One instruction that generates random numbers of 16/32/64 bit wide random
integers. The random number generator instruction operates on general-purpose registers.
• Four instructions that allow software working in 64-bit environment to read and write FS base and GS base registers in all privileged levels.

Only in case a bug is detected they might pull out support for these instructions, which is not likely to happen.


Quote: Also I'd like to ask..Isn't the AVX Shuffle in Sandy Bridge is a parallel memory operation, which is a part of "AVX 1.0"? 

No, none of the AVX1 shuffle instructions allow access to non-sequential memory locations. 

内容大同小异,有一定的可信度。

但我还是不放心,又去查intel文档,最终找到了——

原文地址:https://www.cnblogs.com/zyl910/p/ivb_new_instructions.html