写点什么

AMD 宣布 GPUOpen 倡议,主推开源软件栈

  • 2015-12-21
  • 本文字数:1732 字

    阅读完需:约 6 分钟

今年九月份,AMD 公司专门成立了 Radeon 技术部门(Radeon Technologies Group,RTG),来壮大自己 GPU 研发领域的技术力量。此外,该公司还聘请了 Raja Koduri 为全球资深副总裁兼首席架构师,并提拔图形与并行计算架构师 Michael Mantor 为公司院士。近日,Raja 针对全球媒体主持召开了一次 RTG 技术峰会,介绍了 AMD 未来一年的 GPU 产品和技术战略,内容十分丰富。本文针对会议中所介绍的 GPUOpen 进行详细介绍。

GPUOpen 是 AMD 所发起的一个全新倡议。其主要目标是以开放的方式来推动 GPU 相关的开发,共包含了三个方面的内容。

开源工具链

一直以来,AMD 在游戏机市场都占据着重要的地位。PlayStation 4 和 Xbox One 都采用了 AMD 的 CPU 和 GPU。然而,AMD 在 PC 市场无法和 NVIDIA 平起平坐。其根源还在于显卡以及相关的开发工具难以与其抗衡。根据经验,游戏机中 GPU 的底层访问能够为游戏性能带来很大的提升。因而,AMD 和 RTG 一直在探索如何能够针对 PC 和游戏机进行类似的开发。之前,AMD 曾提出了一个突破性的显卡 API——Mantle,希望以此来改变游戏开发领域,提升电脑游戏的性能和速度。近期,NVIDIA 也推出了 Gameworks 工具,向 AMD 发起了挑战——该工具使得游戏开发者可以快速应用 NVIDIA 的 3D 技术,简化开发,但 AMD 系统就无法享受到这样的好处。

为了应对该挑战,AMD 的 GPUOpen 在开放底层硬件访问权限的基础上提出了开源的想法。GPUOpen 倡议包括了为游戏开发者提供底层 GPU 硬件和 GitHub 上开源的效果、工具、库以及 SDK 的访问权限。其相关代码会使用相对宽松的 MIT 许可证,而且在 GitHub 中进行公布。这样,开发人员就可以利用一个统一的工具库来面向 AMD、NVIDIA 以及 Intel 等公司的 GPU。目前,TressFX、ShadowFX、GeometryFX 以及 AOFX 库都包括在了 GPUOpen 范围内。此外,GPUOpen 还包括了 FireRender 渲染引擎、GPU 加速的光线追踪 SDK、RapidFire 云 SDK 以及 CodeXL 调试器和性能分析器。

支持高级语言开发

几周以前,AMD 已经宣布了 Boltzmann 倡议。该倡议的主要目标就是利用 C++ 等高级语言来简化并行应用程序的开发工作。其所包含的异构系统架构(Heterogeneous System Architecture,HSA)的软件套件提供了一个针对 C++ 语言的异构计算编译器(HCC)。利用该编译器,开发人员可以更加有效、便捷地使用异构系统中的 GPU 硬件资源。

此外,异构计算可移植界面 (HIP) 还允许开发人员将 CUDA 代码转换为可移植的 C++ 代码。据 AMD 透露,HIP 在很多情况下可以将 90% 的 CUDA 代码转换成 C++,而剩余的 10%则可以手动转换。预计 AMD 将在 2016 年 1 月开放 Boltzmann 的初期访问。

开源 Linux 驱动和运行时

AMD 的 GPUOpen 倡议还包括了一个针对高性能计算的 Linux 驱动模型和运行时。目前,AMD 维护了两个 Linux 驱动栈——开源的 Radeon 驱动和闭源的 Catalyst 驱动。未来,AMD 将会推出一个针对其 GPU 的统一开源基础图像驱动。在此基础上,AMD 再维护两个并行的驱动栈——全开放的栈包含的都是开源的模块;高性能栈则包含了开源的运动视频模块和闭源的 OpenGL 模块。未来,和 OpenGL 模块并行存在的 OpenCL/Vulkan 模块将会从闭源走向开源。

而 AMD 全新的无头 64 位 Linux 驱动包括了众多关键功能——低延迟计算调度、PCI-E 数据传输、支持对等 GPU、从和显存直接互连的 InfiniBand 网络中远程直接访问内存 (RDMA) 以及支持单一大内存分配。这些功能可以很好的满足高性能计算的需求。

尽管 GPUOpen 的倡议刚刚提出,其已经能够明确说明 AMD 在 GPU 方面的发展方向。在与 NVIDIA 的 PC 市场竞争中,AMD 已经处于劣势,但该倡议却能够有效利用开源社区的力量来促进 AMD GPU 以及相关工具的发展。而且,GPUOpen 能够让开发人员更好的访问底层 GPU,实现应用程序性能的提升。这样,更多的应用就会倾向于针对 Radeon 硬件进行专门的优化,扩展 AMD GPU 的应用市场,对于 AMD 而言,这实在是一步好棋。


感谢董志南对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群(已满),InfoQ 读者交流群(#2))。

2015-12-21 18:001785
用户头像

发布了 268 篇内容, 共 123.3 次阅读, 收获喜欢 24 次。

关注

评论

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

FinClip小程序+Rust(五):用内联SVG实现二维码

Speedoooo

rust 前端框架 小程序容器

学Python运维,这知识点你肯定会遇到,【必收藏之】nginx 域名跳转相关配置

梦想橡皮擦

5月月更

战“码”先锋直播预告丨如何成为一名优秀的OpenHamrony贡献者?

OpenHarmony开发者

OpenHarmony 贡献代码

Linux下玩转nginx系列(五)---nginx实现负载均衡

anyRTC开发者

nginx Linux 负载均衡 音视频

Qt软件开发_解决中文路径无法识别问题

DS小龙哥

5月月更

RocketMQ—Producer(五)路由队列选择

IT巅峰技术

架构 RocketMQ java

稳扎稳打步步为营 英特尔GPU将在消费市场和数据中心全面开花

科技新消息

AIrserver2022手机软件无线投屏电脑屏幕

茶色酒

AirServer

Kubernetes下web服务的性能测试三部曲之三:横向扩容

程序员欣宸

Java Kubernetes 5月月更

马斯克推崇的柏拉图式元宇宙,PlatoFarm早已验证出答案

股市老人

FinClip小程序+Rust(一):夹心饼架构

Speedoooo

rust 前端框架 小程序容器

Druid 连接池源码阅读 06

石小天

druid源码学习六

Nick

jdk JMX Druid

Magento 和 WordPress 的区别

海拥(haiyong.site)

WordPress 5月月更

前端常用的站点导航

刘帅强

数据库连接池 -Druid 源码学习(六)

wjchenge

Druid 数据库连接池

FFmpeg介绍

Loken

音视频 5月月更

网站开发进阶(六十八)CSS3媒体查询@media

No Silver Bullet

5月月更 媒体查询 设备自适应 hsl

一种经典的客户关系管理系统(CRM)订单模型的设计与实现

汪子熙

CRM SAP 客户关系管理系统 5月月更 订单模型

层层剖析一次 HTTP POST 请求事故

vivo互联网技术

HTTP CORS XSS 跨域 waf

CUDA优化之PReLU性能调优

OneFlow

性能优化 cuda PReLU 朴素实现

总结

Geek_36cc7c

ABBYY2022全新版PDF文字识别功能

茶色酒

FinClip小程序+Rust(四):端到端融合

Speedoooo

rust 前端框架 小程序容器

FinClip小程序里如何安全使用SVG

Speedoooo

rust SVG 前端框架 小程序容器

Dockerfile 的最佳实践 | Dockerfile 你写的都对么?

xcbeyond

最佳实践 镜像 Dockerfile

AIRIOT物联网低代码平台如何配置三菱PLC驱动?

AIRIOT

物联网 PLC 驱动配置

FinClip小程序+Rust(二):环境搭建

Speedoooo

rust 前端框架 小程序容器

FinClip小程序+Rust(三):一个加密钱包

Speedoooo

rust 前端框架 小程序容器

推荐几个机器学习的好资源

AIWeker

人工智能 深度学习 5月月更

熊磊:成功移植OpenHarmony到多套开发板,是最开心的事

OpenHarmony开发者

开发板 OpenHarmony

AMD宣布GPUOpen倡议,主推开源软件栈_语言 & 开发_张天雷_InfoQ精选文章