在visual studio 2013 update 2中我需要使用SIMD?

时间:2014-05-25 23:55:45

标签: c# visual-studio-2013 simd

所有我在网上发现的是关于如何在更新2出来之前使用它的过多帖子,我当时不想破坏我的机器所以我只是觉得我会等到它得到它释放。

现在它出来了,我安装了VS 2013 Professional更新2,我看到一个新的框架(4.5.2)存在,但我仍然只有4.5.1

我需要什么才能使用simd矢量?我需要安装4.5.2吗?我是否需要下载测试版中使用的blc软件包,或者是否应该集成到框架中?

1 个答案:

答案 0 :(得分:8)

这些东西正在快速变化,但一个相当明确的来源是.NET CodeGen blog。首先,SIMD支持需要下一代JIT编译器RyuJIT,它在CTP中,因此它有一些限制。要获得使用.NET 4.5.1的SIMD支持,您必须

  1. 使用Windows 8.1或Server 2012 R2。
  2. 安装RyuJIT CTP。它们目前位于CTP 4
  3. Enable RyuJIT。注6:

      

    Microsoft.Numerics.Vectors.Vector<T>的引用添加到将在使用新Vector类型的方法之前调用的类构造函数。

  4.   
  5. 以64位运行程序(即不针对x86或任何CPU更喜欢32位)。
  6.   
  7. 使用Microsoft.Bcl.Simd Nuget包中的Vector类型。这些是JIT 内在函数,即JIT知道在使用它们时会发出特殊的机器代码。
  8.   
  9. 拥有支持SIMD的硬件。 RyuJIT CTP仅支持SSE2。 AVX SIMD(如果可用)仅计划用于完整版本,因为它需要对.NET运行时进行其他更改。
  10.      如果你有4.5.2 AND RyuJIT CTP4,你也可以在Vista,Windows 7和8(以及类似的服务器OS&)上使用RyuJIT(以及SIMD)。