2025 AI基础设施风向标,不看必后悔!#AI基础设施峰会 了解详情
写点什么

使用 Brahma 在 GPU 上执行 LINQ

  • 2010-05-18
  • 本文字数:690 字

    阅读完需:约 2 分钟

Brahma 是一个用于并行计算的开源库,它由 C#编写并支持在多种处理器上运行。目前,Brahma 仅包含一个图形处理器(GPU)模块,但是它的模块化结构可以支持更多种类的处理器。使用 Brahma,同一个 C#方法中的语句可以同时运行在 CPU 和 GPU 上,而不需要额外的代码。

Brahma 通过将 LINQ 语句转换成目标处理器代码来执行并行计算,所生成的代码会跟据目标处理器的不同而不同。例如针对 DirectX 会生成 High Level Shading Language ,而针对 OpenGL 则会生成 OpenGL Shading Language 。为了提高性能,LINQ 查询仅被编译一次,然后根据需要多次运行

下面的代码会并行地将一个数组的元素都乘以 2:

复制代码
// 创建计算对象
var computationProvider = new ComputationProvider();
// 创建并行数组,并填充数据
var data = new DataParallelArray<float>(computationProvider, <br></br> new[] { 0f, 1f, 2f, 3f, 4f, 5f, 6f });<p>// 编译 LINQ 查询 </p><br></br>CompiledQuery query = computationProvider.Compile<dataparallelarray><float>><br></br>(<br></br> d => from value in d<br></br> select value * 2f<br></br>);<p>// 在数据上执行查询 </p><br></br>IQueryable result = computationProvider.Run(query, data);<p>// 打印结果 </p><br></br>foreach (float value in result)<br></br> Console.WriteLine(result[i]);<p>// 释放资源 </p><br></br>computationProvider.Dispose();<br></br>data.Dispose();<br></br>result.Dispose();</float></dataparallelarray></float>

Brahma 的源代码二进制文件遵循 Eclipse Public License 1.0

查看英文原文: LINQ on GPU with Brahma

2010-05-18 00:392528
用户头像

发布了 63 篇内容, 共 25.5 次阅读, 收获喜欢 1 次。

关注

评论

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

2024 京东零售技术年度总结

京东零售技术

代码质量保证的利器:Git 预提交钩子

俞凡

最佳实践

解析与构建:基于语法树的代码规则定义

测试人

软件测试

学习Java的路线、资料整理

追随哆咪

如何在自己电脑上一键部署 AI 大模型

JustYan

人工智能 大模型 生成式AI

SpringBoot的两种启动方式原理

不在线第一只蜗牛

Java Spring Boot 后端

复盘2024,大模型的商业化主线是什么?

脑极体

AI

AI Agent:一场智能革命的开始

TechubNews

AI Agent

解锁微店商品数据:深度探索item_get API接口及其应用

代码忍者

微店商品详情API接口

百度HelixFold 3重磅升级 打造生命科学领域“超强引擎”

极客天地

唯品会API接口详解:商品详情与关键词搜索功能

代码忍者

唯品会商品API接口

谷歌地图 | 利用 Google 地图平台重新定义叫车体验

Cloud Ace 云一

实时洞察、智能运营——新技术重塑企业绩效管理应用(下)

用友智能财务

绩效 企业 会计

分析代码变更与新增代码覆盖率的最佳实践

测试人

软件测试

百度HelixFold 3重磅升级 打造生命科学领域“超强引擎”

新消费日报

阿里巴巴1688 API接口深度解析:高效获取商品详情与关键词搜索商品实战指南

代码忍者

1688API接口

MIAOYUN信创云原生项目亮相“科创天府·智汇蓉城”西部“中试”生态对接活动

MIAOYUN

云计算 云原生 创新 信创 信创产业

Oracle 可观测最佳实践

观测云

oracle

使用Brahma在GPU上执行LINQ_.NET_Abel Avram_InfoQ精选文章