写点什么

使用 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:392374
用户头像

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

关注

评论

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

分销管理系统(源码+文档+部署+讲解)

深圳亥时科技

一文彻底搞透Redis的数据类型及具体的应用场景

EquatorCoco

redis 1024程序员节

荣耀应用市场丨新锐榜单首发上线

荣耀开发者服务平台

荣耀开发者服务平台 应用市场 开发者激励计划 荣耀HONOR

在After Effects上的快速输出GIF动图格式插件:GifGun for Mac

理理

智慧党建系统(源码+文档+部署+讲解)

深圳亥时科技

智慧考务管理系统

深圳亥时科技

项目管理系统(源码+文档+部署+讲解)

深圳亥时科技

ElevenLabs Voice Design :可通过文本创建个性化语音;苹果推出首个开发者测试版丨 RTE 开发者日报

声网

生产管理系统(源码+文档+部署+讲解)

深圳亥时科技

道路养护系统(源码+文档+部署+讲解)

深圳亥时科技

国际专线网络:加速全球化贸易

Ogcloud

SD-WAN国际专线 国际专线 国际网络专线 跨国网络专线

Neural Filters for Photoshop 2021(ps2021逆天滤镜库)无需登陆Adobe Id

理理

员工信息管理系统

深圳亥时科技

“政产学”联合培养高技能人才,助推江门制造业数字化转型升级

Geek_2d6073

陶瓷制品生产管理MES系统解决方案

万界星空科技

mes 万界星空科技mes 智能制造业 陶瓷 陶瓷制品

AE高级辉光特效插件 Deep Glow for mac 安装教程

理理

开源(open source)是什么?为什么要开源?

伤感汤姆布利柏

鸿蒙团队1024程序员节致敬开发者:同心协力,共码未来

最新动态

寻找AI新势力!“天翼云息壤杯”高校AI大赛火热报名中!

天翼云开发者社区

人工智能 AI

捷途旅行者与丰田RAV4荣放的品牌策略差异

科技热闻

跨越语言边界,Greptime 与蚂蚁向量数据库合作实现向量搜索性能 5 倍新突破

Greptime 格睿科技

数据库 云原生 检索 向量数据库

捷途旅行者与丰田RAV4荣放的品牌策略差异

科技热闻

Nik Collection 6 for Mac(PS滤镜插件套装) v6.1.0中文激活版

理理

「毅硕|生信教程」 micromamba:mamba的C++实现,超越conda

INSVAST

教程分享 基因数据分析 生信服务 Sentieon

PS一键磨皮插件Delicious Retouch for mac+DR5预设教程

理理

Video Copilot Element 3D for Mac(AE三维模型插件) 破解许可证

理理

优秀的AE人像磨皮润肤美容插件 beauty box

理理

1024 | 码客聚会,云上跃迁,探秘华为云和他的开发者朋友们的故事

华为云开发者联盟

HarmonyOS 1024程序员节 鲲鹏计算 昇腾 #人工智能

1024程序员节致敬鸿蒙开发者:鸿蒙生态一日千里的幕后英雄

最新动态

融合数据的“聚宝盆”:政企业务资源树

鲸品堂

运营商 政企 企业号 2024年10月PK榜

快手小店详情API接口的获取与应用

科普小能手

API 接口 API 测试 快手API接口 快手数据采集 快手API

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