写点什么

使用 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:0018536

评论

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

大数据-139 ClickHouse MergeTree 最佳实践:Replacing 去重、Summing 求和、分区设计与物化视图替代方案

武子康

大数据 flink spark 分布式 Clickhouse

2025年GEO优化服务评测:用户口碑与数据双重验证榜

新消费日报

【浪潮海岳inDatax数据中台专栏】主数据管理在数据治理中实施的时机

inBuilder低代码平台

数据中台 数据治理 主数据管理

【新特性】 版本速递 | 华为云Versatile智能体平台 新增特性介绍(2025年10月发布)

华为云开发者联盟

人工智能 华为云 agent 华为云开发者联盟 MCP

火山引擎多模态数据湖解决方案,以新一代数据基座迎接AI Agent时代

字节跳动数据平台

从全球噪声到战略信号:全球舆情监控数据的融合、分析与决策赋能

沃观Wovision

海外舆情监测 舆情监测软件 全球舆情监测 全球舆情监控

聊点技术 | 智能可观测架构升级:构建统一、实时、高可用的数据处理平台

博睿数据

使用智能代理在亚马逊云科技无服务器架构上进行源代码分析

亚马逊云科技 (Amazon Web Services)

Java 运行时安全:输入验证、沙箱机制、安全反序列化

码界行者

Java 安全

主数据管理在数据治理中实施的时机

inBuilder低代码平台

数据挖掘 数据中台 主数据管理

AI英语学习App的开发

北京木奇移动技术有限公司

AI教育 软件外包公司 AI英语

舆情监测软件的“心脏”:高质量数据源的构成与采集原理探秘

沃观Wovision

海外舆情监测 舆情监测软件 全球舆情监测

翘楚共探AI落地 同驱产业新程:司马阅2025企业AI落地应用峰会上海站,在张江机器人谷落下帷幕

司马阅

人工智能

哈尔滨三级等保:等级定位、适用范畴与二级等保核心区别

等保测评

AI向量知识库更新策略

阿汤哥

知识库

AIO Sandbox:为 AI Agent 打造的一体化、可定制的沙箱环境

字节跳动开源

开源 AI agent

大数据-140 ClickHouse CollapsingMergeTree详解 外部数据源最小闭环HDFS/MySQL/Kafka

武子康

MySQL 大数据 kafka hdfs Clickhouse

大模型在百度电商机审应用的落地实践

百度Geek说

大模型 电商风控 内容风控 审核agent

“数据筑基” 赋能 “人工智能+”:解构“十五五”新质生产力的核心路径

袋鼠云数栈

大数据 数据治理 发布会 袋鼠云 易知微

从真实世界数据到监管级证据:临析智镜 ClinLens AI 受邀出席中国医药生物技术大会,发布真实世界研究解决方案

ModelWhale

人工智能 医学 专病库 临床科研

字节一面凉了!被问 “你们项目为啥要用消息队列”,我张口就说 “解耦异步削峰”,面试官:你怕不是没真做过项目?

Fox爱分享

程序员 面试 开发 消息队列 大厂

2025年GEO公司排名:基于公开数据的可信评价榜单

新消费日报

过程控制 软件维护经验总结(3)

万里无云万里天

工业 工厂运维 过程控制

云栖实录 | AI 搜索引擎如何驱动亿级物流:货拉拉 x 阿里云 Elasticsearch

阿里云大数据AI技术

elasticsearch 阿里云 货拉拉

小红书同款3D百万运镜平替!他们用AE肝到崩,我们用这个一键直接出丨ScreenSage

阿星AI工作室

产品 AI 自媒体 AI工具

DeepSeek-OCR 开了窗,但企业落地的大门为何是EasyLink多模态视觉模型?

EasyLink_ai

人工智能 非结构化数据 智能体 OCR 智能文档图像解析技术

哈尔滨二级等保:核心定位、适用范围与三级等保差异

等保测评

springboot使用flyway,使用介绍、个人总结及报错场景如何修改

刘大猫

环境工程 城市规划 城市设计 环境纳米设计 环境遥感应用

对 GPT 5 模型路由机制的深度解析

Baihai IDP

程序员 AI 大模型 LLM 模型路由

清理祖传 AK 不怕炸锅:基于 UModel 的云监控 2.0 身份凭证观测实践

阿里巴巴云原生

阿里云 云原生 RAM

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