我对此完全陌生。我在一台新的戴尔台式机上运行 Ubuntu 14.04。Xorg 和 compiz 占用了超过 60% 的 CPU,这给我带来了问题。我认为这是因为我的显卡驱动程序无法识别,因此软件被用作加速器,而不是显卡。
我的显卡是 Intel Xeon E3-1200 v3/4th Gen Core。请查看下面的输出,并询问我是否遗漏了重要信息。如果您有任何建议,我将不胜感激。我认为最有说服力的几行是“非软件渲染:否”、“(EE) 无法加载模块“模式设置”(模块不存在,0)”和“AIGLX:屏幕 0 不支持 DRI2;AIGLX:恢复为软件渲染”是有用的行。
我已经更新了英特尔驱动程序。
uname -a
Linux xxx 3.13.0-32-generic #57-Ubuntu SMP Tue Jul 15 03:51:08 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
lshw-c 视频
*-display UNCLAIMED
description: VGA compatible controller
product: Xeon E3-1200 v3/4th Gen Core Processor Integrated Graphics Controller
vendor: Intel Corporation
physical id: 2
bus info: pci@0000:00:02.0
version: 06
width: 64 bits
clock: 33MHz
capabilities: vga_controller bus_master cap_list
configuration: latency=0
resources: memory:f7800000-f7bfffff memory:e0000000-efffffff ioport:f000(size=64)
输出:/usr/lib/nux/unity_support_test -p
OpenGL vendor string: VMware, Inc.
OpenGL renderer string: Gallium 0.4 on llvmpipe (LLVM 3.4, 256 bits)
OpenGL version string: 2.1 Mesa 10.1.3
Not software rendered: no
Not blacklisted: yes
GLX fbconfig: yes
GLX texture from pixmap: yes
GL npot or rect textures: yes
GL vertex program: yes
GL fragment program: yes
GL vertex buffer object: yes
GL framebuffer object: yes
GL version is 1.4+: yes
Unity 3D supported: no
我的 Xorg.0.log 的相关部分:
[ 10.871] Loading extension GLX
[ 10.871] (==) Matched intel as autoconfigured driver 0
[ 10.871] (==) Matched modesetting as autoconfigured driver 1
[ 10.871] (==) Matched fbdev as autoconfigured driver 2
[ 10.871] (==) Matched vesa as autoconfigured driver 3
[ 10.871] (==) Assigned the driver to the xf86ConfigLayout
[ 10.871] (II) LoadModule: "intel"
[ 10.871] (II) Loading /usr/lib/xorg/modules/drivers/intel_drv.so
[ 10.873] (II) Module intel: vendor="X.Org Foundation"
[ 10.873] compiled for 1.15.0, module version = 2.99.910
[ 10.873] Module class: X.Org Video Driver
[ 10.873] ABI class: X.Org Video Driver, version 15.0
[ 10.873] (II) LoadModule: "modesetting"
[ 10.873] (WW) Warning, couldn't open module modesetting
[ 10.873] (II) UnloadModule: "modesetting"
[ 10.873] (II) Unloading modesetting
[ 10.873] (EE) Failed to load module "modesetting" (module does not exist, 0)
[ 10.873] (II) LoadModule: "fbdev"
[ 10.873] (II) Loading /usr/lib/xorg/modules/drivers/fbdev_drv.so
[ 10.873] (II) Module fbdev: vendor="X.Org Foundation"
[ 10.873] compiled for 1.15.0, module version = 0.4.4
[ 10.873] Module class: X.Org Video Driver
[ 10.873] ABI class: X.Org Video Driver, version 15.0
[ 10.873] (II) LoadModule: "vesa"
[ 10.873] (II) Loading /usr/lib/xorg/modules/drivers/vesa_drv.so
[ 10.873] (II) Module vesa: vendor="X.Org Foundation"
[ 10.873] compiled for 1.15.0, module version = 2.3.3
[ 10.873] Module class: X.Org Video Driver
[ 10.873] ABI class: X.Org Video Driver, version 15.0
[ 10.873] (==) Matched intel as autoconfigured driver 0
[ 10.873] (==) Matched modesetting as autoconfigured driver 1
[ 10.873] (==) Matched fbdev as autoconfigured driver 2
[ 10.873] (==) Matched vesa as autoconfigured driver 3
[ 10.873] (==) Assigned the driver to the xf86ConfigLayout
[ 10.873] (II) LoadModule: "intel"
[ 10.874] (II) Loading /usr/lib/xorg/modules/drivers/intel_drv.so
[ 10.874] (II) Module intel: vendor="X.Org Foundation"
[ 10.874] compiled for 1.15.0, module version = 2.99.910
[ 10.874] Module class: X.Org Video Driver
[ 10.874] ABI class: X.Org Video Driver, version 15.0
[ 10.874] (II) UnloadModule: "intel"
[ 10.874] (II) Unloading intel
[ 10.874] (II) Failed to load module "intel" (already loaded, 32548)
[ 10.874] (II) LoadModule: "modesetting"
[ 10.874] (WW) Warning, couldn't open module modesetting
[ 10.874] (II) UnloadModule: "modesetting"
[ 10.874] (II) Unloading modesetting
[ 10.874] (EE) Failed to load module "modesetting" (module does not exist, 0)
[ 10.874] (II) LoadModule: "fbdev"
[ 10.874] (II) Loading /usr/lib/xorg/modules/drivers/fbdev_drv.so
[ 10.874] (II) Module fbdev: vendor="X.Org Foundation"
[ 10.874] compiled for 1.15.0, module version = 0.4.4
[ 10.874] Module class: X.Org Video Driver
[ 10.874] ABI class: X.Org Video Driver, version 15.0
[ 10.874] (II) UnloadModule: "fbdev"
[ 10.874] (II) Unloading fbdev
[ 10.874] (II) Failed to load module "fbdev" (already loaded, 0)
[ 10.874] (II) LoadModule: "vesa"
[ 10.874] (II) Loading /usr/lib/xorg/modules/drivers/vesa_drv.so
[ 10.874] (II) Module vesa: vendor="X.Org Foundation"
[ 10.874] compiled for 1.15.0, module version = 2.3.3
[ 10.874] Module class: X.Org Video Driver
[ 10.874] ABI class: X.Org Video Driver, version 15.0
[ 10.874] (II) UnloadModule: "vesa"
[ 10.874] (II) Unloading vesa
[ 10.874] (II) Failed to load module "vesa" (already loaded, 0)
[ 10.874] (II) intel: Driver for Intel(R) Integrated Graphics Chipsets:
i810, i810-dc100, i810e, i815, i830M, 845G, 854, 852GM/855GM, 865G,
915G, E7221 (i915), 915GM, 945G, 945GM, 945GME, Pineview GM,
Pineview G, 965G, G35, 965Q, 946GZ, 965GM, 965GME/GLE, G33, Q35, Q33,
GM45, 4 Series, G45/G43, Q45/Q43, G41, B43
[ 10.875] (II) intel: Driver for Intel(R) HD Graphics: 2000-5000
[ 10.875] (II) intel: Driver for Intel(R) Iris(TM) Graphics: 5100
[ 10.875] (II) intel: Driver for Intel(R) Iris(TM) Pro Graphics: 5200
[ 10.875] (II) FBDEV: driver for framebuffer: fbdev
[ 10.875] (II) VESA: driver for VESA chipsets: vesa
[ 10.875] (++) using VT number 7
[ 10.881] (II) Loading sub module "fbdevhw"
[ 10.881] (II) LoadModule: "fbdevhw"
[ 10.881] (II) Loading /usr/lib/xorg/modules/libfbdevhw.so
[ 10.881] (II) Module fbdevhw: vendor="X.Org Foundation"
[ 10.881] compiled for 1.15.1, module version = 0.0.2
[ 10.881] ABI class: X.Org Video Driver, version 15.0
[ 10.881] (**) FBDEV(0): claimed PCI slot 0@0:2:0
[ 10.881] (II) FBDEV(0): using default device
[ 10.881] (WW) Falling back to old probe method for vesa
[ 10.881] (II) FBDEV(0): Creating default Display subsection in Screen section
"Default Screen Section" for depth/fbbpp 24/32
[ 10.881] (==) FBDEV(0): Depth 24, (==) framebuffer bpp 32
[ 10.881] (==) FBDEV(0): RGB weight 888
[ 10.881] (==) FBDEV(0): Default visual is TrueColor
[ 10.881] (==) FBDEV(0): Using gamma correction (1.0, 1.0, 1.0)
[ 10.881] (II) FBDEV(0): hardware: VESA VGA (video memory: 9024kB)
[ 10.881] (II) FBDEV(0): checking modes against framebuffer device...
[ 10.881] (II) FBDEV(0): checking modes against monitor...
[ 10.881] (--) FBDEV(0): Virtual size is 1920x1200 (pitch 1920)
[ 10.881] (**) FBDEV(0): Built-in mode "current": 230.4 MHz, 94.7 kHz, 77.4 Hz
[ 10.881] (II) FBDEV(0): Modeline "current"x0.0 230.41 1920 1952 2192 2432 1200 1204 1208 1224 -hsync -vsync -csync (94.7 kHz b)
[ 10.881] (==) FBDEV(0): DPI set to (96, 96)
[ 10.881] (II) Loading sub module "fb"
[ 10.881] (II) LoadModule: "fb"
[ 10.881] (II) Loading /usr/lib/xorg/modules/libfb.so
[ 10.881] (II) Module fb: vendor="X.Org Foundation"
[ 10.881] compiled for 1.15.1, module version = 1.0.0
[ 10.881] ABI class: X.Org ANSI C Emulation, version 0.4
[ 10.881] (**) FBDEV(0): using shadow framebuffer
[ 10.881] (II) Loading sub module "shadow"
[ 10.881] (II) LoadModule: "shadow"
[ 10.881] (II) Loading /usr/lib/xorg/modules/libshadow.so
[ 10.881] (II) Module shadow: vendor="X.Org Foundation"
[ 10.881] compiled for 1.15.1, module version = 1.1.0
[ 10.881] ABI class: X.Org ANSI C Emulation, version 0.4
[ 10.881] (II) UnloadModule: "vesa"
[ 10.881] (II) Unloading vesa
[ 10.881] (==) Depth 24 pixmap format is 32 bpp
[ 10.881] (EE) FBDEV(0): FBIOBLANK: Invalid argument
[ 10.881] (==) FBDEV(0): Backing store enabled
[ 10.882] (==) FBDEV(0): DPMS enabled
[ 10.882] (==) RandR enabled
[ 10.884] (II) SELinux: Disabled on system
[ 10.885] (II) AIGLX: Screen 0 is not DRI2 capable
[ 10.885] (EE) AIGLX: reverting to software rendering
[ 10.903] (II) AIGLX: Loaded and initialized swrast
[ 10.903] (II) GLX: Initialized DRISWRAST GL provider for screen 0
周二更新:此问题仍然存在。我注意到的其他可能相关的异常情况:
我的显示器被检测为“内置显示器”,并且无法更改分辨率。我认为这一定与此有关。(我有一台外接显示器。)
xrandr --verbose 的输出:
xrandr: Failed to get size of gamma for output default
Screen 0: minimum 1920 x 1200, current 1920 x 1200, maximum 1920 x 1200
default connected primary 1920x1200+0+0 (0x17f) normal (normal) 0mm x 0mm
Identifier: 0x17e
Timestamp: 173701
Subpixel: unknown
Clones:
CRTC: 0
CRTCs: 0
Transform: 1.000000 0.000000 0.000000
0.000000 1.000000 0.000000
0.000000 0.000000 1.000000
filter:
1920x1200 (0x17f) 177.4MHz *current
h: width 1920 start 0 end 0 total 1920 skew 0 clock 92.4KHz
v: height 1200 start 0 end 0 total 1200 clock 77.0Hz
周三更新:我找到了英特尔的“驱动程序设备管理器”工具。安装了它。它正确地将我的图形硬件列为英特尔公司至强 E3-1200 v3/第四代核心处理器集成图形控制器,但激活的驱动程序是 frambuffer 显示驱动程序 (fbdev)。它让我可以选择激活英特尔驱动程序(版本 2:2.99:910-0ubuntu1),描述中带有“推荐”。一切都很好。
检查“激活”以找到正确的驱动程序。它要求重新启动计算机。说可以,然后重新启动.....没用。结果相同。恢复到 Gallium 0.4。
有什么想法吗?我的问题出在哪里?是硬件问题,还是驱动程序问题,还是其他 ubuntu 文件中的问题?
答案1
您可以尝试安装 intel-linux-graphics-installer。我亲自将它与各种 sandybridge 卡一起使用过,尝试一下也不会有什么坏处。
如果您没有 gdebi,我建议使用 gdebi 安装 deb 包来修复可能出现的依赖问题:
sudo apt-get update && sudo apt-get install gdebi
现在从 01.org 下载安装程序
wget https://download.01.org/gfx/ubuntu/14.04/main/pool/main/i/intel-linux-graphics-installer/intel-linux-graphics-installer_1.0.6-0intel1_amd64.deb
使 deb 可执行并使用 gdebi 安装:
sudo chmod +x intel-linux-graphics-installer_1.0.6-0intel1_amd64.deb
sudo gdebi intel-linux-graphics-installer_1.0.6-0intel1_amd64.deb
现在,要运行安装程序,只需使用以下命令:
intel-linux-graphics-installer
重新启动以使更改生效。
有关英特尔开源技术的更多信息,请点击此处
和这里
https://01.org/linuxgraphics/downloads/2014/intelr-graphics-installer-1.0.6-linux
答案2
您可以使用命令启用 VDPAU 和 VAAPI VDPAU_DRIVERS=va_gl
。以下是源代码链接http://www.webupd8.org/2013/09/adobe-flash-player-hardware.html
sudo apt-get install i965-va-driver
sudo add-apt-repository ppa:nilarimogard/webupd8
sudo apt-get update
sudo apt-get install i965-va-driver libvdpau-va-gl1
Adobe flash 默认不允许加速,因此您必须创建一个配置文件,如下所示:
sudo mkdir -p /etc/adobe
echo "EnableLinuxHWVideoDecode=1" | sudo tee /etc/adobe/mms.cfg
echo "OverrideGPUValidation=1" | sudo tee -a /etc/adobe/mms.cfg
这在系统范围内并不适用,因为它与已经利用 VDPAU 的应用程序相冲突。因此,要使用 VDPAU 运行单个应用程序,只需遵循此示例。
VDPAU_DRIVER=va_gl firefox
这将使用 VDPAU 驱动程序运行 Firefox 和 Adobe Flash。我还使用 Gimp 和其他一些程序(如 VLC 和 mplayer)测试了这一点。
此外,由于 /usr/bin/firefox 是一个 simlink,您可以安全地删除此文件,如下所示:
sudo rm /usr/bin/firefox
并用 bash 脚本替换文件,这样每当您自动打开 Firefox 时就会使用 VDPAU,如下所示(将整个命令复制并粘贴到打开的终端中,同时复制两行)
echo '#!/bin/bash
VDPAU_DRIVER=va_gl /usr/lib/firefox/firefox.sh' | sudo tee /usr/bin/firefox
最后,使其可执行:
sudo chmod +x /usr/bin/firefox
现在您应该拥有 Firefox 的硬件加速和加速硬件解码。
要获得对 chrome 或 chromium 的支持,请输入:
chrome://flags
在 URL 栏中并启用“覆盖软件渲染列表”选项,它就像列表中的第一个一样。
然后,使用“synaptic”包管理器搜索 opengl 或 GL,包括加速、渲染、解码等。安装所有你能找到的 gl 支持,但是,确保注意要进行的更改确保你不会安装会破坏系统的东西卸载默认情况下,此过程需要应用程序。(在接受任何更改之前,请注意并阅读)。如果 chrome 或 chromium URL 页面上有任何不支持的内容
chrome://gpu
。。。通常可以安装 gl 支持来解决这个问题。我唯一没能解决的问题是完全加速解码。这不是充分支持,通常在播放 YouTube 视频等时会抛出错误。由于 Chrome 使用 pepperflash 而不是常规的 Adobe Flash 软件,因此您将无法通过在 Google Chrome 或 Chromium 中使用 VDPAU_DRIVER=va_gl 命令来实现加速。