单指令多数据流(SIMD)是CPU基本运算以外为了提升并行处理多条数据效率的技术,经常使用于多媒体处理如视频,3D模拟的计算。实现方式不一样品牌的CPU各有本身的指令集,如SSE MMX 3DNOW等。数组
C#开发.net core软件的过程当中也能够让编译器自动采用这些SIMD指令集进行代码优化,测试了一下在个人AMD 锐龙7 2700X上对于整数加法处理能够提升10倍的效率。app
下面是我本身写的例子:dom
运行结果:测试
只要用Vector<T>支持的重载运算符来代替数组或者列表之类进行计算,便可得到编译器SIMD自动优化指令的效果。不过目前文档里说只支持x86系列的CPU ARM的CPU相关支持还在研发中优化