写点什么

NVIDIA 公开 GPU 硬件接口文档,Linux 开源驱动“有救了”?

2019 年 8 月 13 日

NVIDIA公开GPU硬件接口文档,Linux开源驱动“有救了”?

NVIDIA 宣布免费公开部分 GPU 硬件接口的(MIT 许可)文档,可以为 NVIDIA Linux 开源驱动 Nouveau 的开发提供相应帮助。


近日,NVIDIA 宣布公开 GPU 硬件接口文档,但并没有将所有的接口发布出来。即使 NVIDIA 对 Linux 开源驱动的相关支持一直很“坑”,但现在其基于 MIT 许可发布的“NVIDIA 芯片/硬件接口文档”, 使 NVIDIA Linux 开源驱动 Nouveau 的开发变得更加容易。


Nouveau 是一个自由及开放源代码的显卡驱动程序,为 NVIDIA 的显卡所编写,也可用于系统芯片 NVIDIA Tegra 系列。

Nouveau 项目支持所有的 NVIDIA 微架构: Tesla、Fermi、Kepler、Maxwell、Pascal 以及 Volta。


目前公开的文档除最新的 Turing 架构外,也涵盖了 Maxwell、Pascal、Volta 和 Kepler 这几代 NVIDIA 主流显卡。文档主要内容包括 BIOS 表、设备控制块、设备初始化、围绕其 Falcon 引擎的安全性、内存时钟/调整、着色器程序头与电源状态等。



据说,任何一个敢于自称 Linux 用户的人,多少都会使用命令行;并且几乎每一个 Linux 用户,都为自己能够掌握更多的命令行而感到自豪。甚至有言道: Linux 用户会因为鄙视 Windows 用户而自豪!


但是如果想成为一名合格的 Linux 用户,显卡驱动的安装应用往往也是一个不容小觑的“坎”。


由于 NVIDIA 技术相对封闭,显卡的很多特性不能完全发挥出来,而且针对 NVIDIA 显卡的开源驱动只能靠开发者从零开始一点一点写出来,无论性能还是功能与闭源驱动相比都有一定差距。由于 NVIDIA 并没有提供任何关于显卡的文档,以至于开源驱动项目 Nouveau 的开发者只能通过使用逆向工程获得他们需要的数据。


逆向工程,又称反向工程,是一种技术过程,即对一项目标产品进行逆向分析及研究,从而推导出该产品的处理流程、组织结构、功能性能规格等设计要素,以制作出功能相近,但又不完全一样的产品。逆向工程源于商业及军事领域中的硬件分析。


目前,高性能独显市场主要以 AMD、NVIDIA 为主。据了解,英特尔会在 2020 年正式进入高性能 GPU 市场,除了 GPU 加速卡之外,游戏市场也将是英特尔的重要目标。


而且不得不提的一点是,AMD 和英特尔在开源上做的比 NVIDIA 早了许多。早在 2007 年,英特尔已经推出了开源的显卡驱动,AMD 也随之推出,但作为世界上最大显卡生产商的 NVIDIA 却没有做出类似行动。


相对于本次 NVIDIA 开发 GPU 硬件接口文档这件事本身,开发者们也许更加在意 NVIDIA 借此做出“改变”的态度,而 NVIDIA 也可能凭借此次举措,获得更大的用户市场,一方面应对来自 AMD 和英特尔的竞争压力,一方面保证自己在 GPU 市场的世界领先地位。


2019 年 8 月 13 日 09:087741
用户头像
张之栋 人工智能及AI芯片爱好者

发布了 91 篇内容, 共 33.8 次阅读, 收获喜欢 151 次。

关注

评论

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

IDEA 敏捷开发技巧——后缀完成

程序员小航

Java 后端 IDEA

Elasticsearch踩坑记之深度分页

topsion

大数据 elasticsearch 深度分页

APM(应用性能监控) 行业认知系列 - 一

东风微鸣

APM Trace 可观察性

Angular性能优化实践——巧用第三方组件和懒加载技术

Geek_Willie

angular SpreadJS

《经济学人》2021年2月20日刊精彩文章导读及资源下载

wbliu85

SpringBoot之自定义启动异常堆栈信息打印

false℃

电子产品中EMC隔离设计的方法

不脱发的程序猿

二月春节不断更 电路设计 EMC 电子产品

Java实体映射利器---MapStruct

是小毛吖

Java MapStruct

全网最新、最全面蚂蚁金服面经分享:简历模板/面试题库/Java核心技术笔记

比伯

Java 编程 程序员 面试 技术宅

Golang代码测试:一点到面用测试驱动开发

华为云开发者社区

go golang 测试 TDD 代码

读书总结2020

IT民工大叔

#读书

EMC设计中电缆屏蔽使用方法

不脱发的程序猿

二月春节不断更 电路设计 EMC 电子产品 电缆屏蔽

APM 行业认知系列 - 四

东风微鸣

APM Trace 可观察性

【LeetCode】数组的度Java题解

HQ数字卡

算法 LeetCode 28天写作 2月春节不断更

爱了!腾讯技术官吹爆的Spring Security笔记开源

Crud的程序员

spring 架构

APM 行业认知系列 - 二

东风微鸣

APM Trace 可观察性

面试官:Java性能调优你会多少?一个问题就把我问的哑口无言,哭了!

996小迁

架构 Java性能调优 Java性能调优面试

大小厂必问Java后端面试题(含答案)

yes的练级攻略

Java 面试 后端

LoadRunner测试中遇见的不可思议的问题及其解决方法

陈磊@Criss

你的面试专属!JVM G1GC的算法+实现,90张图+33段代码

Java架构追梦

Java 架构 JVM 调优 G1GC

MySQL事务浅析|由浅入深

云流

MySQL 编程 架构

架构设计篇之微服务实战笔记(一)

小诚信驿站

架构师 刘晓成 小诚信驿站 28天写作 架构师成长笔记

干货来袭!阿里大佬“亲码”Java全线笔记,差距不止一点点

程序员小毕

Java 程序员 面试 分布式 微服务

滚雪球学 Python 番外系列,自动化测试是个啥?

橡皮擦

Python 28 天写作 2月春节不断更

可能是Java 8 Optional最佳实践

张毅

28天写作

产品训练营--第四期作业

曦语

产品训练营

区块链商品溯源平台开发,区块链公共服务系统开发方案

WX13823153201

区块链商品溯源平台开发

如何 0 改造,让单体/微服务应用成为Serverless Application

阿里巴巴云原生

Docker Serverless 容器 微服务 云原生

阿里P8技术官带你玩转Spring全家桶,从Spring到Boot到MVC在到Cloud微服务实战

Java成神之路

Java 程序员 架构 面试 编程语言

【STM32】CubeMX+HAL 点亮 LED

AXYZdong

硬件 stm32 2月春节不断更

APM 行业认知系列 - 三

东风微鸣

APM Trace 可观察性

打造 VUCA 时代的 10 倍速 IT 团队

打造 VUCA 时代的 10 倍速 IT 团队

NVIDIA公开GPU硬件接口文档,Linux开源驱动“有救了”?-InfoQ