博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用C#来面向GPU编程
阅读量:6200 次
发布时间:2019-06-21

本文共 931 字,大约阅读时间需要 3 分钟。

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

\\

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

\\

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

\\

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

\\

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

\\

查看英文原文:

\\

感谢对本文的审校。

转载地址:http://nnnca.baihongyu.com/

你可能感兴趣的文章
局部参数
查看>>
0-1 背包
查看>>
笔记本电脑液晶屏灯管的接口方式
查看>>
5102背景和多国语言的构造
查看>>
ubuntu启动无桌面图标?
查看>>
PHP $_SERVER["SERVER_NAME"]与 $_SERVER['HTTP_HOST'] 区别
查看>>
调试Cisco企业级路由器
查看>>
.NET Framework想要实现的功能
查看>>
Exception in thread "main" java.lang.NoClassDefFoundError: com/sun/mail/util/Lin
查看>>
Office365 同步失败 - 排查邮件冲突造成的错误
查看>>
第三章 jQuery中的DOM操作
查看>>
我的友情链接
查看>>
我的友情链接
查看>>
ubuntu安装oh my zsh
查看>>
PROC系列之/proc/pid/status
查看>>
python3 turtle使用报错,代码没有对齐
查看>>
我的友情链接
查看>>
windows 10常用快捷键汇总
查看>>
我的友情链接
查看>>
Linux系统安装后的基础优化-基于CentOS(5.8/6.4)
查看>>