我可以在Raspberry Pi 4上使用.NET SIMD吗?

伊万·科谢列夫(Ivan Koshelev)

我正在编写代码,该代码将减去两个数组中的相应字节,并对超过给定阈值的结果字节数进行计数。AFAIU,它将真正受益于.NET SIMD,但是System.Numerics.Vector.IsHardwareAccelerated当我在Raspberry Pi 4上编译C#时返回false。

我的dotnet版本是3.1.406,我已经添加了

  <PropertyGroup>
    <Optimize>true</Optimize>
  </PropertyGroup>

到csproj并运行release配置。

有什么方法可以在Raspberry Pi 4上利用.NET中的SIMD支持吗?也许使用.NET 5?

更新我安装了.NET 5并尝试了.NET Intrinsics,但是不支持:

Console.WriteLine(System.Runtime.Intrinsics.Arm.AdvSimd.IsSupported); //false
Console.WriteLine(System.Runtime.Intrinsics.Arm.Aes.IsSupported);  //false
Console.WriteLine(System.Runtime.Intrinsics.Arm.ArmBase.IsSupported); //false
Console.WriteLine(System.Runtime.Intrinsics.Arm.Crc32.IsSupported); //false
Console.WriteLine(System.Runtime.Intrinsics.Arm.Dp.IsSupported); //false
Console.WriteLine(System.Runtime.Intrinsics.Arm.Rdm.IsSupported); //false
Console.WriteLine(System.Runtime.Intrinsics.Arm.Sha1.IsSupported); //false
Console.WriteLine(System.Runtime.Intrinsics.Arm.Sha256.IsSupported); //false

我使用的是32位Raspbian(Debian衍生产品),是否有可能需要64位版本才能正常工作?

很快

尽管完成了API甚至记录了API,但是缺少实现。看一看。8字节的SIMD向量已经成为NEON ISA数十年来必不可少的部分(于2005年引入),但是.NET运行时仅在为ARM64编译时才实现它们(于2013年发布)。

我不在Microsoft工作,也不知道它们如何精确地编译二进制文件,但是源代码告诉他们在为ARM64目标构建时它们至少对NEON有所支持。如果要在.NET中使用这些内在函数,则可以尝试使用64位OS。

有一种解决方法-用C ++实现对性能至关重要的部分,为Linux编译一个共享库,然后使用[DllImport].NET来使用这些功能。使用以下gcc标志来构建DLL,从而构建了非平凡的Linux软件(示例):-march=native -mfpu=neon-fp16 -mfp16-format=ieee -ffast-math -O3 -fPIC这样,它将适用于32位OS,并且.NET运行时不需要任何特殊功能,我已经.NET Core 2.1进行了测试。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

我可以在Raspberry Pi 4上使用.NET SIMD吗?

来自分类Dev

我可以在Raspberry Pi上使用Ubuntu One吗?

来自分类Dev

我可以在Raspberry Pi上运行mythbackend吗?

来自分类Dev

我可以使用Google Translate使我的Raspberry Pi按需使用不同的语言说吗?

来自分类Dev

我可以在Raspberry Pi上运行C#应用程序吗?

来自分类Dev

是否可以在Raspberry PI上运行.NET Core?

来自分类Dev

我可以在raspbian的raspberry pi上运行带有webmin界面的LAMP服务器吗?

来自分类Dev

Raspberry Pi可以运行Ubuntu吗?

来自分类Dev

Raspberry Pi可以运行Ubuntu吗?

来自分类Dev

Raspberry PI可以捕获HDMI输入吗

来自分类Dev

我可以在Rasperbby Pi上运行Akeneo吗?

来自分类Dev

我应该买Raspberry Pi吗?

来自分类Dev

我必须购买 Raspberry Pi 设备吗?

来自分类Dev

我可以使用 Raspberry Pi 3(B 型)中的 AUX 端口插入麦克风以获取音频信号吗?

来自分类Dev

Raspberry Pi上的SSD I / O错误和超时-但在Windows上还可以吗?

来自分类Dev

Raspberry Pi Java Pi4j gpio 对我不起作用,但可以使用 python

来自分类Dev

Raspberry Pi:我可以通过HDMI打开显示器吗?

来自分类Dev

Raspberry Pi 3 上的 Windows 10 iot 可以很好地运行 Java 程序吗?

来自分类Dev

Linux是否可以在Raspberry Pi上运行?

来自分类Dev

Linux是否可以在Raspberry Pi上运行?

来自分类Dev

我需要蓝牙4.0加密狗来检测Raspberry Pi上的iBeacon吗?

来自分类Dev

用于 Arduino 的传感器可以与 Raspberry Pi 一起使用吗?

来自分类Dev

运行 Win10 IoT 的 Raspberry Pi 可以同时使用 Wifi 和蓝牙通信吗?

来自分类Dev

在 Raspberry Pi Swarm 上运行的 ASP.NET Core

来自分类Dev

我可以在Visual Studio 2013上使用.net Core吗

来自分类Dev

在Raspberry Pi 4上使用键盘进行LED控制-Python

来自分类Dev

在Ubuntu上使用Raspberry Pi 4测试bcache

来自分类Dev

Raspberry Pi上的Tensorflow

来自分类Dev

我可以在 android 设备上运行的 raspberry 上使用 Nearby google API 吗?

Related 相关文章

  1. 1

    我可以在Raspberry Pi 4上使用.NET SIMD吗?

  2. 2

    我可以在Raspberry Pi上使用Ubuntu One吗?

  3. 3

    我可以在Raspberry Pi上运行mythbackend吗?

  4. 4

    我可以使用Google Translate使我的Raspberry Pi按需使用不同的语言说吗?

  5. 5

    我可以在Raspberry Pi上运行C#应用程序吗?

  6. 6

    是否可以在Raspberry PI上运行.NET Core?

  7. 7

    我可以在raspbian的raspberry pi上运行带有webmin界面的LAMP服务器吗?

  8. 8

    Raspberry Pi可以运行Ubuntu吗?

  9. 9

    Raspberry Pi可以运行Ubuntu吗?

  10. 10

    Raspberry PI可以捕获HDMI输入吗

  11. 11

    我可以在Rasperbby Pi上运行Akeneo吗?

  12. 12

    我应该买Raspberry Pi吗?

  13. 13

    我必须购买 Raspberry Pi 设备吗?

  14. 14

    我可以使用 Raspberry Pi 3(B 型)中的 AUX 端口插入麦克风以获取音频信号吗?

  15. 15

    Raspberry Pi上的SSD I / O错误和超时-但在Windows上还可以吗?

  16. 16

    Raspberry Pi Java Pi4j gpio 对我不起作用,但可以使用 python

  17. 17

    Raspberry Pi:我可以通过HDMI打开显示器吗?

  18. 18

    Raspberry Pi 3 上的 Windows 10 iot 可以很好地运行 Java 程序吗?

  19. 19

    Linux是否可以在Raspberry Pi上运行?

  20. 20

    Linux是否可以在Raspberry Pi上运行?

  21. 21

    我需要蓝牙4.0加密狗来检测Raspberry Pi上的iBeacon吗?

  22. 22

    用于 Arduino 的传感器可以与 Raspberry Pi 一起使用吗?

  23. 23

    运行 Win10 IoT 的 Raspberry Pi 可以同时使用 Wifi 和蓝牙通信吗?

  24. 24

    在 Raspberry Pi Swarm 上运行的 ASP.NET Core

  25. 25

    我可以在Visual Studio 2013上使用.net Core吗

  26. 26

    在Raspberry Pi 4上使用键盘进行LED控制-Python

  27. 27

    在Ubuntu上使用Raspberry Pi 4测试bcache

  28. 28

    Raspberry Pi上的Tensorflow

  29. 29

    我可以在 android 设备上运行的 raspberry 上使用 Nearby google API 吗?

热门标签

归档