web-dev-qa-db-ja.com

OpenGLは、Intelグラフィックカードを使用して非常に低いフレームレートで動作します

私はほとんど同じですが、グラフィックカードがわずかに異なる2つのシステムを入手しました。

システムA

product: N10 Family Integrated Graphics Controller
vendor: Intel Corporation
driver: i915

システムB

product: Atom Processor D2xxx/N2xxx Integrated Graphics Controller
vendor: Intel Corporation
driver: gma500

どちらも最高のパフォーマンスを提供することはわかっていませんが、システムBはvery遅いです。主な違いは次のとおりです。

glmark2の結果:

システムA:(スコア55)

GL_VENDOR:     Intel Open Source Technology Center
GL_RENDERER:   Mesa DRI Intel(R) IGD x86/MMX/SSE2
GL_VERSION:    1.4 Mesa 9.0.3

システムB:(スコア24)

GL_VENDOR:     VMware, Inc.
GL_RENDERER:   Gallium 0.4 on llvmpipe (LLVM 0x301)
GL_VERSION:    2.1 Mesa 9.0.3

glxinfo | grep renderの結果:

システムA:

direct rendering: Yes
OpenGL renderer string: Mesa DRI Intel(R) IGD x86/MMX/SSE2

システムB:

direct rendering: Yes
OpenGL renderer string: Gallium 0.4 on llvmpipe (LLVM 0x301)

grep -i chipset /var/log/Xorg.0.logの結果:

システムA:

[    21.507] (II) intel: Driver for Intel Integrated Graphics Chipsets: i810,
[    21.510] (II) VESA: driver for VESA chipsets: vesa
[    21.521] (--) intel(0): Integrated Graphics Chipset: Intel(R) Pineview G

システムB:

[    16.728] (II) VESA: driver for VESA chipsets: vesa

egrep "(GLX|DRI)" /var/log/Xorg.0.logの結果:

システムA:

[    21.319] Initializing built-in extension XFree86-DRI
[    21.319] Initializing built-in extension DRI2
[    21.418] (==) AIGLX enabled
[    21.419] Loading extension GLX
[    22.114] (II) intel(0): [DRI2] Setup complete
[    22.114] (II) intel(0): [DRI2]   DRI driver: i915
[    22.140] (II) intel(0): direct rendering: DRI2 Enabled
[    22.417] (II) AIGLX: enabled GLX_MESA_copy_sub_buffer
[    22.417] (II) AIGLX: enabled GLX_INTEL_swap_event
[    22.417] (II) AIGLX: enabled GLX_ARB_create_context
[    22.417] (II) AIGLX: enabled GLX_ARB_create_context_profile
[    22.417] (II) AIGLX: enabled GLX_EXT_create_context_es2_profile
[    22.417] (II) AIGLX: enabled GLX_SGI_swap_control and GLX_MESA_swap_control
[    22.417] (II) AIGLX: GLX_EXT_texture_from_pixmap backed by buffer objects
[    22.417] (II) AIGLX: Loaded and initialized i915
[    22.417] (II) GLX: Initialized DRI2 GL provider for screen 0

システムB:

[    16.696] Initializing built-in extension XFree86-DRI
[    16.696] Initializing built-in extension DRI2
[    16.725] (==) AIGLX enabled
[    16.725] Loading extension GLX
[    18.120] (II) AIGLX: Screen 0 is not DRI2 capable
[    18.120] (II) AIGLX: Screen 0 is not DRI capable
[    18.144] (II) AIGLX: Loaded and initialized swrast
[    18.144] (II) GLX: Initialized DRISWRAST GL provider for screen 0

システムBが適切なDRIサポートの初期化に明らかに失敗しているため、最後のものは特に興味深いものです。これはすべて、Bに欠けているものがあることを教えてくれます。これらすべての違いは、単に2種類のグラフィックカードを使用しただけではないとは考えていません。システムA(i915)によって?

4
christoph

私はすぐにあなたの問題を発見しました:

gma500

これに続いて wiki記事 gma500モジュールについては、チップのハードウェアアクセラレーションがないことは明らかです。

残念ながら、Linuxではこのハードウェアのサポートは非​​常に限られています。いくつかのドライバがありますが、いずれも将来および現在のメンテナンスやサスペンドおよびハードウェアアクセラレーションのサポートなど、特定の基本機能がありません。

これは、llvm、またはソフトウェアラスタライザのようなものを使用して確認されます。

OpenGLレンダラー文字列:llvmpipe上のGallium 0.4(LLVM 0x301)

また、新しいgma500_glxはこの機能もサポートしていません。

Gma500_gfxは(まだ)3Dグラフィックスをサポートしていません。将来的にサポートされるかどうかは不明です。

modinfo gma500を使用してモジュールの詳細を確認できます。あなたのシステムではgma500_gfxと呼ばれるべきだと思いますが、これは非常に奇妙です(しかし関係ありません)。いずれにしても、ドライバーは、GNU/Linuxではハードウェアアクセラレーションのメッカであるmesaをサポートしていません(すべてのglxテストを実行してください)。これがすべての疑問を解決することを願っています。

読むのが面白い:

実際には何もありません。ハードウェアアクセラレーション以外のかなり古いトラブルシューティングの問題です。

5
Braiam