当前位置:首页 > 嵌入式 > 嵌入式动态
[导读]我最近在Linux上测试了笔记本电脑的Nvidia显卡,我在Mint、Manjaro和Deepin上进行了测试。 发现并不理想,本文只是一个记录,其中一些命令具有参考值,大家 可以尝试一下。

我最近在Linux上测试了笔记本电脑的Nvidia显卡,我在Mint、Manjaro和Deepin上进行了测试。 发现并不理想,本文只是一个记录,其中一些命令具有参考值,大家 可以尝试一下。

我的笔记本之前在win下都是用NVIDIA Optimus,NVIDIA Optimus是NVIDIA公司最新开发的双显卡,基于双显卡的智能切换技术,能够根据系统的负载自动切换独立显卡和集成显卡的运行。Optimus技术可完全自动地发挥作用,无需手动更改设置值。采用Optimus技术的笔记本,当系统仅运行一些简单程序、或是仅对处理器有较高要求的大型程序时,Optimus路由会仅让集成显卡工作,而将独立显卡完全关闭。只有在需要用到显卡的大型游戏或程序才切换到独立显卡进行运算。

而在Linux下,双显卡切换技术是Bumblebee ,Bumblebee 致力于使 NVIDIA Optimus 在 GNU/Linux 系统上可用,实现两块不同的供电配置的显卡同时插入使用,共享同一个 framebuffer。

1、LinuxMint

linuxsight@linuxsight-Satellite-L40-A:~$ ubuntu-drivers devices== /sys/devices/pci0000:00/0000:00:1c.4/0000:04:00.0 ==modalias : pci:v000010DEd00001292sv00001179sd0000FA05bc03sc02i00vendor : NVIDIA Corporationmodel : GK208M [GeForce GT 740M]driver : nvidia-340 - distro non-freedriver : nvidia-driver-390 - distro non-free recommendeddriver : xserver-xorg-video-nouveau - distro free builtin

这将为你提供可以安装的卡供应商、型号和推荐的驱动程序。从上面输出的信息中,我们可以看到推荐的驱动程序是nvidia-driver-390

linuxsight@linuxsight-Satellite-L40-A:~$ sudo ubuntu-drivers autoinstall[sudo] password for linuxsight:正在读取软件包列表... 完成正在分析软件包的依赖关系树正在读取状态信息... 完成下列软件包是自动安装的并且现在不需要了:lib32gcc1 libc6-i386使用'sudo apt autoremove'来卸载它(它们)。将会同时安装下列软件:libnvidia-cfg1-390 libnvidia-common-390 libnvidia-compute-390libnvidia-decode-390 libnvidia-encode-390 libnvidia-fbc1-390libnvidia-gl-390 libnvidia-ifr1-390 nvidia-compute-utils-390 nvidia-dkms-390nvidia-kernel-common-390 nvidia-kernel-source-390 nvidia-utils-390xserver-xorg-video-nvidia-390推荐安装:nvidia-prime libnvidia-compute-390:i386 libnvidia-decode-390:i386libnvidia-encode-390:i386 libnvidia-ifr1-390:i386 libnvidia-fbc1-390:i386libnvidia-gl-390:i386下列软件包将被【卸载】:libcuda1-340 nvidia-340 nvidia-opencl-icd-340下列【新】软件包将被安装:libnvidia-cfg1-390 libnvidia-common-390 libnvidia-compute-390libnvidia-decode-390 libnvidia-encode-390 libnvidia-fbc1-390libnvidia-gl-390 libnvidia-ifr1-390 nvidia-compute-utils-390 nvidia-dkms-390nvidia-driver-390 nvidia-kernel-common-390 nvidia-kernel-source-390nvidia-utils-390 xserver-xorg-video-nvidia-390升级了 0 个软件包,新安装了 15 个软件包,要卸载 3 个软件包,有 261 个软件包未被升级。需要下载 10.8 MB/47.1 MB 的归档。解压缩后将会空出 130 MB 的空间。linuxsight@linuxsight-Satellite-L40-A:~$ ubuntu-drivers listnvidia-340nvidia-driver-390linuxsight@linuxsight-Satellite-L40-A:~$ lspci -vnn | grep VGA00:02.0 VGA compatible controller [0300]: Intel Corporation Haswell-ULT Integrated Graphics Controller [8086:0a16] (rev 09) (prog-if 00 [VGA controller

linuxsight@linuxsight-Satellite-L40-A:~$ dkms statusnvidia, 390.116, 5.0.0-32-generic, x86_64: installed

安装nvidia-settings软件包,该软件包提供用于配置Nvidia卡设置的图形工具:

sudo apt-get install nvidia-settings

在网上发现大家都在使用双显卡Bumblebee,

bumblebee : 依赖: xserver-xorg-core (>= 2:1.18)

linuxsight@linuxsight-Satellite-L40-A:~$ sudo apt install xserver-xorg-core

linuxsight@linuxsight-Satellite-L40-A:~$ sudo apt install bumblebee

发现optirun glxgears不行,重启之后发现鼠标键盘都不能动了,这咋回事,宣告失败了。2、manjaro在manjaro setting里,我们看到硬件里面提供安装显卡的选项,可惜图忘了保存了。

在网上看了别人的做法:

安装依赖sudo pacman -S virtualgl lib32-virtualgl lib32-primus primus安装nvidia闭源驱动与intel驱动混合版bumblebeesudo mhwd -f -i pci video-hybrid-intel-nvidia-bumblebee开启自动启动bumblebeed服务sudo systemctl enable bumblebeed将用户添加到bumblee组sudo gpasswd -a $USER bumblebee

但发现第二句无法执行,然后我是在manjaro setting里安装的显卡驱动。

glxgears 测试集显的FPS

optirun glxgears 测试独显的FPS

独显也一直出现错误。

[ 428.549910] [ERROR]You've no permission to communicate with the Bumblebee daemon. Try adding yourself to the 'bumblebee' group[ 428.549934] [ERROR]Could not connect to bumblebee daemon - is it running?

3、deepin

安装驱动

sudo apt-get install bumblebee-nvidia nvidia-driver nvidia-settings

检查驱动是否安装成功

sudo apt-get install mesa-utils注解:安装mesa-utils这个包,用来显示系统的glx相关信息。

optirun glxinfo|grep NVIDIA注解:用optirun调用独显输出系统的glxinfo来查看驱动是否安装成功。如果打开nvidia-settings时提示“You do not appear to be using the NVIDIA X driver”,在terminal中运行如下命令optirun -b none nvidia-settings -c :8

测试 Bumblebee 是否支持你的 Optimus 系统:

optirun glxgears -info

但也是一直出错

linuxsight@linuxsight-PC:~$ optirun glxgearsprimus: fatal: failed to load any of the libraries: /usr/lib/x86_64-linux-gnu/nvidia/libGL.so.1:/usr/lib/i386-linux-gnu/nvidia/libGL.so.1:/usr/lib/nvidia/libGL.so.1/usr/lib/x86_64-linux-gnu/nvidia/libGL.so.1: cannot open shared object file: No such file or directory/usr/lib/i386-linux-gnu/nvidia/libGL.so.1: cannot open shared object file: No such file or directory/usr/lib/nvidia/libGL.so.1: cannot open shared object file: No such file or directory

引用网上的一段话:目前linux下有三种optimus的实现:l nouveau-only: PRIME GPU offloading using nouveaul nvidia-only: nvidia's more recent implementation, also packaged as nvidia-prime in Ubuntul nouveau or nvidia: bumblebeeubuntu采用的是第二种,debian只打包了第三种bumblebee。ubuntu的nvidia-prime如果要切换显卡,必须要重启X session,因为在X启动的时候nvidia的驱动模块就已经加载了,也就是说独显是一直在工作的。而debian采用bumblebee,开机加载的是intel的驱动,程序默认也都是用intel的集显,如果需要用独显要用optirun运行程序,这样能做到最大程度的提高电池续航能力。目前debian的nvidia-driver,nvidia-legacy-driver都是默认bumblebee解决双显卡,X启动时,驱动是intel,glx是mesa的glx,但是有些硬件可能会出现驱动是intel,glx却是nvidia的情况,这就会导致opengl的程序跑不起来,需要手动执行sudo update-alternatives --config glx来选择。

两种实现其实各有利弊,debian当前也没有打包prime的打算打包方式不同,debian这边没有打包适配prime的驱动,加prime支持要改东西太多,所以就只用大黄蜂了。

写得有点乱,记录一些命令,提供参考。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: 驱动电源

在工业自动化蓬勃发展的当下,工业电机作为核心动力设备,其驱动电源的性能直接关系到整个系统的稳定性和可靠性。其中,反电动势抑制与过流保护是驱动电源设计中至关重要的两个环节,集成化方案的设计成为提升电机驱动性能的关键。

关键字: 工业电机 驱动电源

LED 驱动电源作为 LED 照明系统的 “心脏”,其稳定性直接决定了整个照明设备的使用寿命。然而,在实际应用中,LED 驱动电源易损坏的问题却十分常见,不仅增加了维护成本,还影响了用户体验。要解决这一问题,需从设计、生...

关键字: 驱动电源 照明系统 散热

根据LED驱动电源的公式,电感内电流波动大小和电感值成反比,输出纹波和输出电容值成反比。所以加大电感值和输出电容值可以减小纹波。

关键字: LED 设计 驱动电源

电动汽车(EV)作为新能源汽车的重要代表,正逐渐成为全球汽车产业的重要发展方向。电动汽车的核心技术之一是电机驱动控制系统,而绝缘栅双极型晶体管(IGBT)作为电机驱动系统中的关键元件,其性能直接影响到电动汽车的动力性能和...

关键字: 电动汽车 新能源 驱动电源

在现代城市建设中,街道及停车场照明作为基础设施的重要组成部分,其质量和效率直接关系到城市的公共安全、居民生活质量和能源利用效率。随着科技的进步,高亮度白光发光二极管(LED)因其独特的优势逐渐取代传统光源,成为大功率区域...

关键字: 发光二极管 驱动电源 LED

LED通用照明设计工程师会遇到许多挑战,如功率密度、功率因数校正(PFC)、空间受限和可靠性等。

关键字: LED 驱动电源 功率因数校正

在LED照明技术日益普及的今天,LED驱动电源的电磁干扰(EMI)问题成为了一个不可忽视的挑战。电磁干扰不仅会影响LED灯具的正常工作,还可能对周围电子设备造成不利影响,甚至引发系统故障。因此,采取有效的硬件措施来解决L...

关键字: LED照明技术 电磁干扰 驱动电源

开关电源具有效率高的特性,而且开关电源的变压器体积比串联稳压型电源的要小得多,电源电路比较整洁,整机重量也有所下降,所以,现在的LED驱动电源

关键字: LED 驱动电源 开关电源

LED驱动电源是把电源供应转换为特定的电压电流以驱动LED发光的电压转换器,通常情况下:LED驱动电源的输入包括高压工频交流(即市电)、低压直流、高压直流、低压高频交流(如电子变压器的输出)等。

关键字: LED 隧道灯 驱动电源
关闭