gpt4 book ai didi

c - 在 Xeon-Phi 上运行 Haskell

转载 作者:太空狗 更新时间:2023-10-29 16:30:00 24 4
gpt4 key购买 nike

有没有办法编译 Haskell 以在 Xeon Phi 协处理器上运行?

英特尔的一些研究人员最近报告了 Haskell Research Compiler(这不是公开的,这使得他们的结果基本上无法重现)并测量了 Haskell Gap(表明在某些情况下 Haskell 的性能超过了 C)。他们通过称为 Pillar(类似于 C--)的中间语言描述了编译路径,并将其编译为 C,这样他们就可以使用 icc 创建可在 Phi 上执行的目标代码。

GHC 支持编译为 LLVM 或直接生成 native 代码 (NCG)。据我所知,既没有针对 Phi 的 NCG 可用,也没有用于 Phi 的 LLVM 后端。可以访问 icc,通过 C 的路由似乎是可能的,但是我不确定目前它有多现实(我认为不再支持 GHC 中的 C 代码生成器,对于 LLVM IR-to-C 后端也是如此,如果我错了请纠正我)。

所以我想到了三个路线:

  1. 未注册模式下编译GHC并用-fvia-c编译然后使用 icc

  2. 使用旧版本的 GHC 生成 C 代码,然后使用 icc

  3. 使用旧的 LLVM 版本通过 GHC LLVM 然后生成 CLLVM 然后使用 icc

哪条路线最可行(为什么/为什么不可行)?是否还有其他可能性(我放弃了 Pillar 路线,因为诸如 pillar2c 之类的工具尚未(还?)公开可用)。

一个相关的问题是关于 Phi 的 x86 兼容性——似乎不支持 SSE/AVX 指令,如果使用例如编译,一些目标代码将无法运行。 gccclang

更新:

在 LLVM session 上与一些英特尔人员交谈后,他们似乎不太可能发布他们的 Phi LLVM 后端。不过,下一代 Xeon Phi 将支持 AVX512。

最佳答案

如果你通过 C 编译你的 Haskell,结果不是限制为不比 C 快,因为你可以直接编写 C 代码吗?你的问题表明你试图重现的项目是通过不同的语言编译的。

所以我不确定可用的工具是否足够先进来做你想做的事,抱歉。

关于c - 在 Xeon-Phi 上运行 Haskell,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22253311/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com