在操作系统 AMD/ATI 驱动程序中启用 3D 加速

在操作系统 AMD/ATI 驱动程序中启用 3D 加速

需要社区的帮助启用 3D 加速在由开源 Radeon 驱动程序驱动的 AMD/ATI HD6450 显卡上。

了解这张卡取代了 275GTX NVidia 可能会有所帮助,尽管我相信我已经完全清除了之前的 NVidia 安装,目前没有冲突。此外,我最终使用了开源驱动程序,因为当我旋转其中一个显示器时,专有的 AMD 驱动程序开始出现异常,这导致了各种性能问题,尤其是在 Chrome 和 Emacs 上;再说一次,在我旋转显示器之前,它从来没有像开源驱动程序那样轻巧和快速(该xorg过程显示 CPU 使用率相对较高)。

以下是一些信息:

$ dmesg|grep -E 'drm|radeon'|grep -iE 'firmware|microcode'
[   16.472902] [drm] Loading CAICOS Microcode

(芯片似乎完全支持的

$ dmesg|grep -E 'drm|radeon
[   15.668649] [drm] Initialized drm 1.1.0 20060810
[   16.471998] [drm] radeon kernel modesetting enabled.
[   16.472286] [drm] initializing kernel modesetting (CAICOS 0x1002:0x6779 0x174B:0xE206).
[   16.472309] [drm] register mmio base: 0xFBCC0000
[   16.472310] [drm] register mmio size: 131072
[   16.472823] radeon 0000:03:00.0: VRAM: 1024M 0x0000000000000000 - 0x000000003FFFFFFF (1024M used)
[   16.472825] radeon 0000:03:00.0: GTT: 1024M 0x0000000040000000 - 0x000000007FFFFFFF
[   16.472826] [drm] Detected VRAM RAM=1024M, BAR=256M
[   16.472827] [drm] RAM width 64bits DDR
[   16.472889] [drm] radeon: 1024M of VRAM memory ready
[   16.472890] [drm] radeon: 1024M of GTT memory ready.
[   16.472902] [drm] Loading CAICOS Microcode
[   16.938529] [drm] GART: num cpu pages 262144, num gpu pages 262144
[   16.939464] [drm] enabling PCIE gen 2 link speeds, disable with radeon.pcie_gen2=0
[   16.953910] [drm] PCIE GART of 1024M enabled (table at 0x0000000000273000).
[   16.954062] radeon 0000:03:00.0: WB enabled
[   16.954065] radeon 0000:03:00.0: fence driver on ring 0 use gpu addr 0x0000000040000c00 and cpu addr 0xffff880312438c00
[   16.954067] radeon 0000:03:00.0: fence driver on ring 3 use gpu addr 0x0000000040000c0c and cpu addr 0xffff880312438c0c
[   16.955584] radeon 0000:03:00.0: fence driver on ring 5 use gpu addr 0x0000000000072118 and cpu addr 0xffffc900126b2118
[   16.955586] [drm] Supports vblank timestamp caching Rev 2 (21.10.2013).
[   16.955587] [drm] Driver supports precise vblank timestamp query.
[   16.955597] radeon 0000:03:00.0: radeon: MSI limited to 32-bit
[   16.955615] radeon 0000:03:00.0: irq 79 for MSI/MSI-X
[   16.955627] radeon 0000:03:00.0: radeon: using MSI.
[   16.955665] [drm] radeon: irq initialized.
[   16.972581] [drm] ring test on 0 succeeded in 2 usecs
[   16.972596] [drm] ring test on 3 succeeded in 7 usecs
[   17.158715] [drm] ring test on 5 succeeded in 2 usecs
[   17.158726] [drm] UVD initialized successfully.
[   17.158978] [drm] Enabling audio 0 support
[   17.159048] [drm] ib test on ring 0 succeeded in 0 usecs
[   17.159106] [drm] ib test on ring 3 succeeded in 0 usecs
[   17.310380] [drm] ib test on ring 5 succeeded
[   17.310947] [drm] Radeon Display Connectors
[   17.310949] [drm] Connector 0:
[   17.310950] [drm]   DP-1
[   17.310951] [drm]   HPD1
[   17.310952] [drm]   DDC: 0x6460 0x6460 0x6464 0x6464 0x6468 0x6468 0x646c 0x646c
[   17.310953] [drm]   Encoders:
[   17.310954] [drm]     DFP1: INTERNAL_UNIPHY1
[   17.310954] [drm] Connector 1:
[   17.310955] [drm]   HDMI-A-1
[   17.310956] [drm]   HPD2
[   17.310957] [drm]   DDC: 0x6430 0x6430 0x6434 0x6434 0x6438 0x6438 0x643c 0x643c
[   17.310958] [drm]   Encoders:
[   17.310959] [drm]     DFP2: INTERNAL_UNIPHY2
[   17.310959] [drm] Connector 2:
[   17.310960] [drm]   DVI-I-1
[   17.310961] [drm]   HPD4
[   17.310962] [drm]   DDC: 0x6450 0x6450 0x6454 0x6454 0x6458 0x6458 0x645c 0x645c
[   17.310963] [drm]   Encoders:
[   17.310964] [drm]     DFP3: INTERNAL_UNIPHY
[   17.310964] [drm]     CRT1: INTERNAL_KLDSCP_DAC1
[   17.311057] [drm] Internal thermal controller without fan control
[   17.319767] [drm] radeon: dpm initialized
[   17.457199] [drm] fb mappable at 0xD0474000
[   17.457200] [drm] vram apper at 0xD0000000
[   17.457202] [drm] size 8294400
[   17.457202] [drm] fb depth is 24
[   17.457203] [drm]    pitch is 7680
[   17.457326] fbcon: radeondrmfb (fb0) is primary device
[   17.671822] radeon 0000:03:00.0: fb0: radeondrmfb frame buffer device
[   17.671823] radeon 0000:03:00.0: registered panic notifier
[   17.671827] [drm] Initialized radeon 2.36.0 20080528 for 0000:03:00.0 on minor 0

有趣的是,我无法发出,update-alternatives --display gl_conf因为它响应, update-alternatives: error: no alternatives for gl_conf(为什么?)

然而,/etc/alternatives$ ls -l *gl_conf生产,

lrwxrwxrwx 1 root root 39 Apr 24 07:43 i386-linux-gnu_gl_conf -> /usr/lib/i386-linux-gnu/mesa/ld.so.conf
lrwxrwxrwx 1 root root 45 May  1  2013 x86_64-linux-gnu_egl_conf -> /usr/lib/x86_64-linux-gnu/mesa-egl/ld.so.conf
lrwxrwxrwx 1 root root 41 Apr 24 08:08 x86_64-linux-gnu_gl_conf -> /usr/lib/x86_64-linux-gnu/mesa/ld.so.conf

(所有有效的符号链接)

最后,在清除 AMD 专有驱动程序后,我重新安装了 MESA 和 X 服务器包,但我不确定这样做会有多大帮助;命令是:

sudo apt-get install --reinstall libgl1-mesa-glx libgl1-mesa-dri xserver-xorg-core

答案1

事实证明我没仔细查看。在我的 Xorg 日志文件中,我发现了以下条目:

[    23.735] (II) LoadModule: "glx"
[    23.762] (II) Loading /usr/lib/x86_64-linux-gnu/xorg/extra-modules/extra-modules.dpkg-tmp/libglx.so
[    23.822] (EE) Failed to load /usr/lib/x86_64-linux-gnu/xorg/extra-modules/extra-modules.dpkg-tmp/libglx.so: libnvidia-tls.so.319.60: cannot open shared object file: No such file or directory
[    23.822] (II) UnloadModule: "glx"
[    23.822] (II) Unloading glx
[    23.822] (EE) Failed to load module "glx" (loader failed, 7)

这让我觉得应该更加仔细地查看,因此,我找到了指向的/usr/lib/x86_64-linux-gnu/xorg/extra-modules符号链接,并在该目录中找到了导致 Xorg 无法加载 GLX 模块的有问题的动态库:extra-modules.dpkg-tmp/etc/alternatives/x86_64-linux-gnu_xorg_extra_modules/libglx.so -> libglx.so.319.60

删除符号链接libglx.so即可。问题解决。

相关内容