NVIDIA is now publishing Linux GPU kernel modules as open source with dual GPL/MIT license, starting with the R515 driver release. You can find the source code for these kernel modules in the NVIDIA Open GPU Kernel Modules repo on GitHub.
https://github.com/NVIDIA/open-gpu-kernel-modules
来源: https://developer.nvidia.com/blog/nvidia-releases-open-source-gpu-kernel-modules/
1
geekvcn 2022-05-12 07:31:29 +08:00 2
虽然一直很不喜欢英伟达,但是干人事还是值得表扬的。等 Linux GUI 生态全面切换到 wayland 后端 vulkan 渲染,支持 HDR 后,我就再也不会用 Windows 了。
Linux 现在最大的问题就是我闲暇时候打游戏 X.org 输入延时整整 20 多 ms ,简直折磨特别是 FPS 游戏,日常除了不支持 HDR ,色彩管理还不如 Windows 外,真的体验越来越好了。对了还有解码方面的坑,就是浏览器默认都关闭硬件解码支持,虽然能手动支持,但是对于一般用户特别是笔记本续航绝对大下降 |
2
geekvcn 2022-05-12 07:37:33 +08:00 1
其实支持好 Linux 生态,对英伟达绝对是好事,因为英伟达没有 x86 处理器,ARM 跑 Windows 先不说高通目前处于独占期,ARM 版 Windows 的生态远不如 Linux ,因为开源代码稍作调整或者不作调整就可以直接编译成多个二进制版本,但是闭源生态转换架构就一堆坑,比如 Windows 。
|
3
geekvcn 2022-05-12 07:50:30 +08:00
不对图灵架构之前的老显卡支持,感觉社区也没必要向下移植了,现在等矿潮过去直接换新显卡了
|
4
ysc3839 2022-05-12 10:35:22 +08:00 via Android
我到现在都没搞懂 Linux GUI 的硬件加速是什么模式,硬件编解码有个 v4l2 、有个 vaapi 。渲染用哪个接口性能最好? x11? xvideo? vaapi? opengl? vulkan?怎么实现 FreeSync 或者 G-SYNC ?
感觉 Linux 底层的 API(POSIX API)很简洁,但上层的则混乱不堪,比 Windows 还复杂。 |
5
secondwtq 2022-05-12 11:33:10 +08:00
这些大公司以前看上去很牛逼,实际上根本就不懂产品也不懂架构,这次算是揭了老底了,怪不得最近股价跌得这么狠,真是活该。
|
7
icyalala 2022-05-12 11:38:30 +08:00
不管怎么说,都算往前迈了一步
|
8
wlh233 2022-05-12 12:18:22 +08:00 4
Fork you, Nvidia!
|
9
jtshs256 2022-05-12 12:19:54 +08:00 1
中指还是没黑客威胁管用
|
10
leimao 2022-05-12 12:29:08 +08:00 1
:)
|
11
darksword21 2022-05-12 12:35:37 +08:00 via iPhone
@wlh233 Furk !
|
12
44670 2022-05-12 12:42:36 +08:00
原来 linux kernel module 之前可以不开源么?
|
13
feather12315 2022-05-12 12:48:22 +08:00 via Android
|
14
12101111 2022-05-12 14:33:42 +08:00
|
15
ooxxcc 2022-05-12 15:45:54 +08:00
@geekvcn 不一定适合你的情况,你可以尝试关闭 compositor ,我之前遇到的输入延迟在关闭 compositor 后得到了很大改善
|
16
jim9606 2022-05-13 03:06:51 +08:00 1
@ysc3839
video codec 方面相关的 API 有 VAAPI 和 VDPAU ,VAAPI 支持编解码,VDPAU 是 NV 提出的只能解码的 API ,Intel 只支持前者,NV 只支持后者,AMD 两个都有,V4L2 主要是管摄像头之类的 IO 设备的跟 codec 没太大关系。 剩下那些就是渲染和呈现相关的东西了,大致关系是: HW--KMD--DRM/KMS--(syscall)--libdrm(包含 UMD)--mesa3d--(OpenGL/OpenGL ES/Vulkan call)--wayland APP/Wayland/Xserver--(wayland,X,EGL)--X APP/wayland APP 。 Wayland APP 使用 OpenGL ES/VAAPI 等直接调用 UMD 离屏渲染,渲染完的 framebuffer 通过 wayland 协议交由 wayland-server 合成和呈现。X APP 通常不直接与 UMD 交互,而是通过 X 协议(包含 Xv/GLX 扩展)交由 Xserver 代为渲染。 https://en.wikipedia.org/wiki/Mesa_(computer_graphics)#/media/File:The_Linux_Graphics_Stack_and_glamor.svg |
17
ysc3839 2022-05-13 10:10:24 +08:00 via Android
@jim9606 谢谢。不过关于 v4l2 ,我是在 gstreamer 里面看到 v4l2 的 encoder 和 decoder 的。
|
18
opentrade 2022-05-13 13:01:06 +08:00
拥抱开源是好事
|
19
qbqbqbqb 2022-05-15 13:56:56 +08:00 1
@ysc3839 你提到的这几个都是功能不同的东西。
x11 是 Linux 目前最常用的 GUI 子系统,类比 Windows 的话可以理解为 Windows 里面原生 Win32GUI + GDI 的部分(就是 Windows API 里用到各种 hWnd, hDC 的这部分)。一般情况下除了底层开发以外很少直接用这套 API 做开发,都会借助一些 toolkit 。 v4l2, xvideo, vaapi 这些都是视频相关的,v4l2 主要是外部视频设备(一般都是摄像头) I/O 方面的功能,xvideo 提供视频画面渲染输出的功能,vaapi 是视频编解码硬件加速。类比 Windows 的话前两者加起来类似于 Windows 的 DirectShow ,vaapi 类似于 Windows 的 DXVA 。 最后 OpenGL, Vulkan 才是正经的(三维图形)渲染 API 。这个就不解释了,Windows 里也有。 |