OceaBase开发者大会落地上海!4月20日共同探索数据库前沿趋势!报名戳 了解详情
写点什么

使用 C#来面向 GPU 编程

  • 2018-01-01
  • 本文字数:846 字

    阅读完需:约 3 分钟

一直以来,我们都在使用 NVIDIA 的 CUDA 平台编写通用程序来发挥 NVIDIA GPU 的计算性能优势。尽管 CUDA 支持不同的编程语言,但是编写高性能的代码通常需要使用 C 或者 C++。许多开发者为了编写面向 GPU 的代码,不得不放弃使用他们更喜欢的编程语言。直到最近,C#开发者终于可以摆脱这种困境了。

Altimesh 推出的新编译工具—— Hybridizer ,通过为 C#开发者提供一种新的编译方法来解决这个问题。它将开发者的源代码编译成面向 GPU 的可以运行在 CUDA 平台上的二进制代码。Hybridizer 分为两个版本,旨在满足不同的需求和预算。Hybridizer Essentials 作为 Visual Studio 的一个扩展,对所有用户免费。它能够生成运行在 CUDA 平台上的二进制代码。Hybridizer Software Suite(HSE)是授权软件,提供面向 CUDA 以及其它平台(包括 AVX、AVX2 和 AX512)的编译功能。该软件套件可以生成二进制代码,但是也可以选择生成 CUDA 源代码,使用户能够审核正在编译的内容。

配合 NVIDIA 的 Nsight Visual Studio Edition ,任何一个 Hybridizer 版本都为开发者提供了在 Visual Studio 中编写和调试 C#代码的方法,同时生成的代码会在 NVIDIA GPU 上执行。由于 HSE 以 MSIL(Microsoft Intermediate Language)来运行,因此它能够与现有的项目集成,即使没有这些项目的源代码。这也为同平台的.NET 平台语言 F#和 VB.NET 提供了间接支持。

由于编写面向 CUDA 平台的 C/C++ 代码的目标之一是使性能达到最大化,因此值得比较下 Hybridizer 编译的 C#代码的性能。据 Altimesh 公布,由 C#编译生成的二进制代码达到了手写的面向 CUDA 的 C++ 代码 83% 的性能。根据实际代码情况,可以进一步优化 C#代码,达到与 C++ 等同的性能。

Hybridizer 软件向那些对 CUDA 和 GPU 编程好奇的 C#开发者提供了一种探索这些技术的方法,而且不需要放弃使用他们自己喜欢的技术。示例代码可以在 GitHub 上获取,Hybridizer Essentials Extension 可以在Visual Studio Marketplace 上获取

查看英文原文: Using C# to Target GPUs

感谢罗远航对本文的审校。

2018-01-01 18:0017217

评论

发布
暂无评论
发现更多内容

国产大数据系统通过验收,”核高基”基础软件再下一城

陈泽云

人工智能 大数据 知识产权 操作系统

架构师训练营 1 期第 8 周:性能优化(二)- 作业

piercebn

极客大学架构师训练营

第四周作业一

jingx

架构师训练营第四周系统架构总结

Sandman

极客大学架构师训练营

还有人不知道JVM调优参数?一次性打包发给你

田维常

JVM jvm调优

第八周学习总结

饭桶

第八周作业

orchid9

架构师训练营第八周总结

xs-geek

极客大学架构师训练营

一篇文章搞懂 @weakify 和 @strongify

疯清扬

objective-c weak weakify strongify 循环引用

架构师训练营 - 第八周作业

一个节点

极客大学架构师训练营

第八周课后练习

饭桶

典型互联网应用系统使用的技术方案和手段

jorden wang

并发压力&响应时间&系统吞吐量

Yangjing

极客大学架构师训练营

网络模型及性能优化

天天向上

极客大学架构师训练营

性能优化学习笔记

Yangjing

极客大学架构师训练营

架构师训练营第二期 Week 4 总结

bigxiang

极客大学架构师训练营

关于“区块链+”的所有关键点

CECBC

区块链 监管

第八周总结

睁眼看世界

极客大学架构师训练营

第八周作业

Geek_ce484f

极客大学架构师训练营

架构一期第八周作业

Airs

架构师训练营 - 第八周总结

一个节点

极客大学架构师训练营

第八周总结

orchid9

一个典型的大型互联网应用系统使用了哪些技术方案和手段

皮蛋

架构师训练营第八周作业

xs-geek

极客大学架构师训练营

第八周作业

Geek_ce484f

极客大学架构师训练营

架构师训练营第二期 Week 4 作业

bigxiang

极客大学架构师训练营

《JavaScript高级程序设计》.pdf

田维常

Java 电子书

第八周作业总结

Geek_ce484f

极客大学架构师训练营

架构 2 期 - 第四周作业(1)

浮生一梦

极客大学架构师训练营 第四周作业 2组

新基建为数字经济注入新动能

CECBC

区块链 大数据

RCEP是重振全球经济和反对保护主义的有力工具

CECBC

经济建设 世界经济

使用C#来面向GPU编程_.NET_Jeff Martin_InfoQ精选文章