Работа драйверов от Intel с ядром 2.6.28
В связи с известной проблемой с драйверами от Intel с нетерпением ждал выхода ядра 2.6.28.
Дождался :), установил sys-kernel/gentoo-sources-2.6.28, однако никакого заметного, пусть даже в FPS-"попугаях", роста производительности не заметил.
Исчезновение строки "Failed to initialize TTM buffer manager. Falling back to classic." при вызове glxgears и некоторый рост производительности (c 60 fps до 160 fps) у меня появились после обновления x11-drivers/xf86-video-intel ещё на "старом" ядре (tuxonice-sources-2.6.26).
В связи со всем вышеизложенным вопрос:
Как можно убедиться, что поддержка GEM (Graphics Execution Manager) в ядре включена и нужно ли дополнительно её где-либо включать?
P.S. Вызов glxgears от root'а, как при старом ядре, так и при новом сопровождается выводом строки "Failed to initialize TTM buffer manager. Falling back to classic." и снижением FPS.
- Для комментирования войдите или зарегистрируйтесь
А какая версия xf86-video-intel у вас?
Согласно http://kernelnewbies.org/Linux_2_6_28 надо юзать версию не ниже 2.5.0
Hence, this first version of GEM works only with the i915 driver, and support on the X.org side is implemented only in the version 2.5.0 of the driver.
Однако :( #eix
Однако :(
Я ♥ Gentoo & Funtoo
У меня стоит 2.6.28, xorg
У меня стоит 2.6.28, xorg 1.5.3, mesa 7.2, intel 2.5.1
нету прироста и glxgears ругается при старте Failed to initialize TTM buffer manager. Falling back to classic.
и в glxinfo нет ничего про GEM:
server glx vendor string: SGI
server glx version string: 1.2
server glx extensions:
GLX_ARB_multisample, GLX_EXT_import_context, GLX_EXT_texture_from_pixmap,
GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_MESA_copy_sub_buffer,
GLX_OML_swap_method, GLX_SGI_swap_control, GLX_SGIS_multisample,
GLX_SGIX_fbconfig, GLX_SGIX_visual_select_group
client glx vendor string: SGI
client glx version string: 1.4
client glx extensions:
GLX_ARB_get_proc_address, GLX_ARB_multisample, GLX_EXT_import_context,
GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_MESA_allocate_memory,
GLX_MESA_copy_sub_buffer, GLX_MESA_swap_control,
GLX_MESA_swap_frame_usage, GLX_OML_swap_method, GLX_OML_sync_control,
GLX_SGI_make_current_read, GLX_SGI_swap_control, GLX_SGI_video_sync,
GLX_SGIS_multisample, GLX_SGIX_fbconfig, GLX_SGIX_pbuffer,
GLX_SGIX_visual_select_group, GLX_EXT_texture_from_pixmap
GLX version: 1.2
GLX extensions:
GLX_ARB_get_proc_address, GLX_ARB_multisample, GLX_EXT_import_context,
GLX_EXT_visual_info, GLX_EXT_visual_rating, GLX_MESA_swap_control,
GLX_MESA_swap_frame_usage, GLX_OML_swap_method, GLX_SGI_swap_control,
GLX_SGI_video_sync, GLX_SGIS_multisample, GLX_SGIX_fbconfig,
GLX_SGIX_visual_select_group
OpenGL vendor string: Tungsten Graphics, Inc
OpenGL renderer string: Mesa DRI Intel(R) 945G 20061102 x86/MMX/SSE2
OpenGL version string: 1.4 Mesa 7.2
Notebook Dell Inspiron
Notebook Dell Inspiron 1525
Video - Intel X3100
Kernel 2.6.28
xf86-video-intel - 2.6.0
Xorg - 1.5.3-r1
mesa - 9999 (собирал 21:34:49 05.01.2009 из layman x11)
death ~ # glxinfo | grep -i gem
OpenGL renderer string: Mesa DRI Intel(R) 965GM GEM 20080716
death ~ #
death ~ # glxgears
4402 frames in 5.0 seconds = 880.355 FPS
4558 frames in 5.0 seconds = 911.531 FPS
4554 frames in 5.0 seconds = 910.799 FPS
4540 frames in 5.0 seconds = 907.896 FPS
^C
death ~ #
Интересно, на X.org 1.3, mesa
Интересно, на X.org 1.3, mesa 7.0.3 и xf86-video-intel 2.1.1 имеем 1140 fps
Действительно интересно :) У
Действительно интересно :) У всех одно и то же железо, драйвера, а вот результаты у всех отличаются кардинально :)
2a_v: можешь свой xorg.conf
2a_v:
можешь свой xorg.conf показать?
Пожалуйста: http://codepad.o
Пожалуйста:
http://codepad.org/mSwoIrlP
FPS есть смысл сравнивать
FPS есть смысл сравнивать только с одинаковой версией mesa.
Тоже правда, только уж тогда
Тоже правда, только уж тогда mesa-progs.
тут полезная информация по
тут полезная информация по решению проблеммы
http://ru.gentoo-wiki.com/wiki/HOWTO_video_Intel_and_GEM
нашел что в mesa-7.2.ebuild
нашел что в mesa-7.2.ebuild стоит myconf="${myconf} --disable-ttm-api", т.е. получается в mesa TTM отключен.
изменил disable на enable
ebuild mesa-7.2.ebuild digest
emerge =mesa-7.2
выдал, что не нашел файл xf86mm.h
порылся в инете и в /usr/portage/distfiles вроде это файл из x11-drm.
скопировал в /usr/include/xf86mm.h
Еще xf86mm.h нигде в mesa не инклюдится добавил строку в /usr/include/xf86drm.h: #include
Думаю, что это неверный способ, но разбираться было лень.
emerge =mesa-7.2
все скомпилилось, щас буду перегружать X.
все получилось, под kde 4.1.4
все получилось, под kde 4.1.4 glxgears показывал 60 fps, сейчас 240 fps
Может, просто до этого
Может, просто до этого вертикальная синхронизация была включена? :)
увидел, что в xorg-server
увидел, что в xorg-server выключена опция сборки dri2. С включенным dri2 не собирается.
GEM'а нет
1. На данный момент, чтобы заработал GEM вам нужен xorg из git'а. Его можно взять в оверлее X11 (layman -a X11). Но... не советую вам его юзать, если вы не представляете до конца, что делаете.
2. glxgears не является измерителем FPS. Это всего лишь простая утилитка для проверки работоспособности openGL. Об этом разработчики 100ни раз говорили. Как мерить FPS смотрите здесь: http://dri.freedesktop.org/wiki/Benchmarking
3. "Failed to initialize TTM buffer manager. Falling back to classic."
Это не ошибка а warning говорящий о том, что TTM не используется. Ничего страшного в этом предупреждении нет и извращаться и включать TTM не стоит ;) TTM мёртворождён и его больше не будет.
4. glxgears должен выдавать 50-60 fps. Это не баг а фича: теперь драйвера рендерят не на полную мощность, а не чаще чем частота вертикальной развёртки экрана (как раз 50-60 кадров в секунду). Хотите отключить эту фичу? Добавьте:
в ~/.drirc (и замените driver, если у вас другой драйвер ;) )
5.
> Как можно убедиться, что поддержка GEM (Graphics Execution Manager) в ядре
> включена и нужно ли дополнительно её где-либо включать?
Я точно не помню где, но по моему glxinfo где-то должен написать GEM.
На данный момент у меня всё работает и при тех драйверах/версиях Xorg, что лежат в дереве (заметьте, никакого GEM'а). Разве что для стабильности мне нужно было накатить патчи на ядро вот отсюда: ( https://bugs.gentoo.org/show_bug.cgi?id=253813 ) и размаскировать libdrm-2.4.4 (не забудьте почитать предупреждения в выводе libdrm). compiz работает плавно, и я не вижу больших проблем. Возможно есть некоторое падение FPS, но мне не с чем сравнивать ибо ничего кроме того, что сейчас стоит на ноуте у меня и не стояло... А что у вас за проблема?
Спасибо за развёрнутый
Спасибо за развёрнутый ответ.
Предупреждений glxgears уже не выдаёт, fps на уровне 140-165, о GEM glxinfo молчит:
Проблемы как таковой, наверно, и нет. Но, помнится мне, на старой версии xorg'а GoogleEarth как-то шустрее крутилась :) Да и, когда в KDE включаю эффекты, нет той плавности, как в Compiz'е (пользовался им раньше).
Я ♥ Gentoo & Funtoo
GEM'а нет
Можно конфигурацию системы ?
У меня работате однако.
У меня работате однако. Конфигурация:
gentoo-sources-2.6.28-r1
xorg-server-1.5.99.902 (с 9999 дрова клавиатуры не собираются) и его зависимости
xf86-video-intel-9999 (aka 2.6.99.1)
mesa-9999
UPD:
xorg-server-1.5.3-r1
mesa-7.3
xf86-video-intel-2.6.1
Ubuntu is an African Word that means "Gentoo is too hard for me"
eeepc701
Ядро 2.6.28
Установленные пакеты:
x11-base/xorg-server-1.6.0
x11-base/xorg-x11-7.4
x11-drivers/xf86-input-evdev-2.2.0
x11-drivers/xf86-input-keyboard-1.3.2
x11-drivers/xf86-input-mouse-1.4.0
x11-drivers/xf86-input-synaptics-1.0.0
x11-drivers/xf86-video-intel-2.6.3
x11-drivers/xf86-video-vesa-2.2.0
x11-libs/libdrm-2.4.5
x11-proto/dri2proto-1.99.3
media-libs/mesa-7.3-r1
Xorg.0.log http://codepad.org/MIMo1n2K
xorg.conf http://codepad.org/OWqimxJ6
вызывает подозрение в логе :
276 (WW) intel(0): DRI2 requires UXA
297 (EE) intel(0): Failed to set tiling on front buffer: rejected by kernel
298 (EE) intel(0): Failed to set tiling on back buffer: rejected by kernel
299 (EE) intel(0): Failed to set tiling on depth buffer: rejected by kernel
уже устал побеждать ((
Есть идеи ?
И не работает!
Вернее работает, но плохо: $
Вернее работает, но плохо:
$ glxgears
268 frames in 5.0 seconds = 53.580 FPS
207 frames in 5.0 seconds = 41.378 FPS
Ещё настораживает:(EE)
Ещё настораживает:
(EE) AIGLX error: dlopen of /usr/lib/dri/i915_dri.so failed (/usr/lib/dri/i915_dri.so: cannot open shared object file: No such file or directory)
(EE) AIGLX: reverting to software rendering
(II) AIGLX: Loaded and initialized /usr/lib/dri/swrast_dri.so
В каком пакете должен быть i915_dri.so ? я так думал что x86-video-intel хмм...
Сейчас я не могу проверить,
Сейчас я не могу проверить, но это либо xf86-video-intel, либо mesa.
пересобрал intel && mesa
пересобрал intel && mesa файла не появилось.
победил
Долго смеялся над решением проблемы - оказалось надо было посмотреть query mesa uses чтобы понять как всё глупо решается - забыл сказать майк конфу что у меня видеокарта intel (хотя уверенно помню что добавлял эту запись)
glxgears выдаёт 223 FPS.
Option "AccelMethod" "UXA"
Option "AccelMethod" "UXA"
не помогло.
не помогло.
i915
Прекрасно все работало в kde-4.2 xorg-server-1.3.0.0-r6 mesa-6.5.2-r1 xorg-x11-7.2 xf86-video-intel-2.1.1,
однако update до kde-4.2.1 привел к возникновению зависимости от >=xorg-server-1.5.2, что повлекло за собой установку всех остальных пакетов из ~x86 и к тому что opengl теперь поддерживается средствами xorg-x11 (#eselect opengl list) до этого была поддержка драйвера intel.
Замечу что начиная с xorg-server-1.5.3 пропал USE flag dri - может быть он теперь используется по умолчанию, но сейчас откатываюсь на xorg-server-1.5.2
[ebuild UD] x11-base/xorg-server-1.5.2 [1.5.3-r3] USE="dri%*"
и надеюсь, что производительность восстановится...