报名参加CloudWeGo黑客松,奖金直推双丰收! 了解详情
写点什么

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

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

关注

评论

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

Go协程池开源库及示例用法

baiyutang

Go golang 编程 云原生

博睿数据登顶中国应用性能管理及可观测性APMO市场份额第一!

博睿数据

1688 API接口深度解析:商品详情、关键词搜索、店铺商品列表与拍立淘

代码忍者

API 接口 pinduoduo API

技术干货丨助力企业研发数字化转型,Altair全新仿真管理平台解决方案

Altair RapidMiner

数据分析 仿真 智能制造 altair SPDM

写一个Chrome浏览器插件

京东科技开发者

淘宝/天猫商品详情API返回值深度剖析与实战运用:聚焦taobao.item_get_desc

代码忍者

API 接口 pinduoduo API

实操案例|TinyVue树表+动态行合并

OpenTiny社区

开源 前端 组件库 OpenTiny TinyVue

精准测试如何落地

霍格沃兹测试开发学社

走进北京科技大学,通义灵码与企业高校共筑 AI 创意课堂

阿里云云效

阿里云 云原生

用通义灵码,从 0 开始打造一个完整APP,无需编程经验就可以完成

阿里巴巴云原生

阿里云 云原生

官方带队实测,阶梯式解锁飞桨框架3.0能力新特性,轻松上手!

飞桨PaddlePaddle

百度 飞桨AI

Java实现随机抽奖的方法有哪些

不在线第一只蜗牛

Java Python

华为之泉,涌入开源事业的大江大河

脑极体

AI 软件

浅谈DNS递归解析和迭代解析之间的区别

国科云

域名解析 DNS解析

淘宝商品详情数据接口(taobao.item_get)

tbapi

淘宝API接口 淘宝商品详情接口 天猫商品详情接口

从校招生到项目经理,菜鸟如何开展项目管理

京东科技开发者

Node Exporter 可观测性最佳实践

观测云

Node Exporter

如何使用Python开发1688商品详情API接口?

科普小能手

API 1688 Python开发 API 接口 1688商品详情接口

想管理好团队?一定要三“靠”三“不靠”

敏捷开发

管理 团队建设 企业管理 团队协同

Gemini 发布 iOS app,Live 语音聊天免费用;微信公众号上线 AI 音色克隆功能丨 RTE 开发者日报

声网

智能可观测护航“双十一”,电商零售高峰稳健冲刺!

博睿数据

电商开发者必备:深入解析微店商品详情API接口

代码忍者

API 接口 pinduoduo API

用通义灵码,从 0 开始打造一个完整APP,无需编程经验就可以完成

阿里云云效

阿里云 云原生

多分支组网解决方案:SD-WAN

Ogcloud

SD-WAN 企业组网 SD-WAN组网 SD-WAN服务商 SDWAN

访问海外网站的网络工具: SD-WAN海外专线

Ogcloud

SD-WAN SD-WAN组网 SD-WAN国际专线 海外网络专线 跨国网络专线

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