Difference between revisions of "Intel Graphics (日本語)"

From ArchWiki
Jump to: navigation, search
m (KMS (Kernel Mode Setting))
m (KMS (Kernel Mode Setting))
Line 43: Line 43:
 
== KMS (Kernel Mode Setting) ==
 
== KMS (Kernel Mode Setting) ==
  
X を走らせたり [[GNOME]], [[KDE (日本語)]], [[Xfce]], [[LXDE (日本語)]] などのデスクトップ環境を使うには [[Kernel Mode Setting (日本語)|KMS]] が必要です。KMS は i915 DRM ドライバを使う Intel チップセットによりサポートされておりカーネル v2.6.32 よりデフォルトで有効にされています。{{Pkg|xf86-video-intel}} ドライバのバージョン 2.10 からは UMS のサポートは打ち切られ(非常に古い 810 チップセットファミリーは例外)、KMS の使用が必須になっています<sup>[https://www.archlinux.org/news/484/]</sup>。KMS は基本的にカーネルが起動してから初期化されますが、起動中に KMS を有効にして、全てのブートプロセスを最大解像度で実行することもできます。
+
X を走らせたり [[GNOME (日本語)|GNOME]], [[KDE (日本語)|KDE]], [[Xfce (日本語)|Xfce]], [[LXDE (日本語)|LXDE]] などのデスクトップ環境を使うには [[Kernel Mode Setting (日本語)|KMS]] が必要です。KMS は i915 DRM ドライバを使う Intel チップセットによりサポートされておりカーネル v2.6.32 よりデフォルトで有効にされています。{{Pkg|xf86-video-intel}} ドライバのバージョン 2.10 からは UMS のサポートは打ち切られ(非常に古い 810 チップセットファミリーは例外)、KMS の使用が必須になっています<sup>[https://www.archlinux.org/news/484/]</sup>。KMS は基本的にカーネルが起動してから初期化されますが、起動中に KMS を有効にして、全てのブートプロセスを最大解像度で実行することもできます。
  
 
{{Note|{{ic|vga}} や {{ic|nomodeset}} といった既に使用されていないパラメータはブート設定から'''必ず'''削除してください。}}
 
{{Note|{{ic|vga}} や {{ic|nomodeset}} といった既に使用されていないパラメータはブート設定から'''必ず'''削除してください。}}

Revision as of 06:12, 10 May 2013

Template:Article summary start Template:Article summary text Template:Article summary heading Template:Article summary wiki Template:Article summary wiki Template:Article summary wiki Template:Article summary end

Intel はオープンソースドライバの提供とサポートを行なっているので、今日 Intel のグラフィックカードは原則的にプラグアンドプレイです。

Intel の GPU モデル と関連するチップセット・CPU の一覧は Wikipedia の比較を見て下さい。

Note: PowerVR ベースのグラフィックカード (GMA 500GMA 3600 シリーズ) はオープンソースドライバではサポートされていません。

インストール

前提条件: Xorg (日本語)

オフィシャルレポジトリから xf86-video-intel パッケージをインストールします。2D アクセラレーションのための DDX ドライバと古い GPU でのビデオデコーディングのための XvMC ドライバが含まれています。intel-dri が依存として必要で、これは 3D アクセラレーションのための DRI ドライバです。

新しい GPU でのビデオデコーディング・エンコーディングのハードウェア・アクセラレーションを有効にするには、libva-intel-driver として提供されている VA-API ドライバをインストールしてください、こちらもオフィシャルレポジトリにあります。

Note: 64-bit 環境において、32-bit プログラムの 3D アクセラレーションをするには lib32-intel-dri のインストールが必要です。

設定

X.org を走らせるのに特別な設定は必要ありません (xorg.conf は不要です、ただし、使うのなら正しく設定しなくてはなりません)。

設定の一覧を見るには、man intel と入力してください。

KMS (Kernel Mode Setting)

X を走らせたり GNOME, KDE, Xfce, LXDE などのデスクトップ環境を使うには KMS が必要です。KMS は i915 DRM ドライバを使う Intel チップセットによりサポートされておりカーネル v2.6.32 よりデフォルトで有効にされています。xf86-video-intel ドライバのバージョン 2.10 からは UMS のサポートは打ち切られ(非常に古い 810 チップセットファミリーは例外)、KMS の使用が必須になっています[1]。KMS は基本的にカーネルが起動してから初期化されますが、起動中に KMS を有効にして、全てのブートプロセスを最大解像度で実行することもできます。

Note: vganomodeset といった既に使用されていないパラメータはブート設定から必ず削除してください。

起動中に KMS を有効にするには /etc/mkinitcpio.confMODULES 行に i915 モジュールを追加します:

MODULES="i915"

initramfs を再生成します:

# mkinitcpio -p linux

そしてシステムを再起動してください。うまく機能するはずです。

モジュールによる省電力設定

i915 カーネルモジュールは /etc/modprobe.d/i915.conf の設定によって使う省電力オプションを決めることができます。オプションの一覧を見るには次のコマンドを実行してください:

$ modinfo i915 | grep power

/etc/modprobe.d/i915.conf の例:

options i915 i915_enable_rc6=7 i915_enable_fbc=1 lvds_downclock=1

Tips and tricks

アクセラレーションメソッドの選択

  • UXA - (Unified Acceleration Architecture) は GEM ドライバーモデルを導入した成熟しているバックエンドです。
  • SNA - (Sandybridge's New Acceleration) は高速で先進的なハードウェアサポートを提供します。

デフォルトのメソッドは UXA で、安定していますが SNA よりも遅くなります。SNA は発展的なパフォーマンスを発揮しますが、未だに実験的な段階と考えられています。Phoronix によるベンチマーク [2] をみてください。Sandy Bridge のテストIvy Bridge のテストがあります。SNA で問題が発生するなら、UXA は手堅い選択です。

新しい SNA メソッドを使いたいならば、次の内容で /etc/X11/xorg.conf.d/20-intel.conf を作って下さい:

/etc/X11/xorg.conf.d/20-intel.conf
Section "Device"
   Identifier  "Intel Graphics"
   Driver      "intel"
   Option      "AccelMethod"  "sna"
EndSection

スケーリングモードの設定

フルスクリーンを使うアプリケーションで有用かもしれません:

$ xrandr --output LVDS1 --set PANEL_FITTING param

選べる param は:

  • center: 解像度は固定され、スケーリングは無効になります
  • full: 画面いっぱいまで解像度がスケールします
  • full_aspect: アスペクト比を維持したままスケールします

機能しない場合、次を試して下さい:

$ xrandr --output LVDS1 --set "scaling mode" param

param"Full", "Center" , "Full aspect" のいずれかです。

KMS Issue: コンソールの画面が狭い

起動中に低解像度のビデオが転送されると、ターミナルが使える画面が小さくなることがあります。修正するには、i915 ブートローダのカーネルのコマンドラインパラメータに video=SVIDEO-1:d を加えてはっきりと転送を無効にするよう i915 モジュールを設定してください。詳しい情報は Kernel parameters (日本語) を見て下さい。

これが機能しない時は、SVIDEO-1 の代わりに TV1 か VGA1 を無効にするのを試してみて下さい。

GMA 4500 での H.264 デコーディング

libva-intel-driver パッケージは GMA 4500 シリーズの GPU だけに MPEG-2 デコーディングを提供します。H.264 デコーディングのサポートは枝分かれした g45-h264 ブランチで維持されていて、Arch User Repository (日本語)libva-driver-intel-g45-h264AUR パッケージをインストールすることで使えます。しかしながらこのサポートは実験的なものであり現在活発には開発されていないことに注意して下さい。GMA 4500 シリーズ GPU のドライバと VA-API を使うことは CPU の負担を下げますが、アクセラレーションが効いていないのと同じで、スムーズに再生できるようにはならないかもしれません。mplayer を使ったテストでは H.264 でエンコードされた 1080p のビデオを vaapi を使って再生したところ CPU の負担は下がりました(XV オーバーレイに比べて)が、途切れ途切れの再生になりました。一方 720p はうまく動きました [3]。他の報告も同じようなものでした。 [4]

ガンマ値と明るさの設定

ドライバのレベルでこれらを設定する方法はありませんが、幸運なことに xgammaxrandr を使って設定することができます。

ガンマ値を設定するには:

$ xgamma -gamma 1.0

もしくは:

$ xrandr --output VGA1 --gamma 1.0:1.0:1.0

明るさを設定するには:

$ xrandr --output VGA1 --brightness 1.0

トラブルシューティング

Glxgears のパフォーマンスがでない

Note: glxgears は複数のシステム間でのパフォーマンスを比較するためのベンチマークではありません。

グラフィックパフォーマンスを調べるために glxgears を動かした時、結果が 60 FPS を前後することに気づいたかもしれません。例えば:

[...]
311 frames in 5.0 seconds = 61.973 FPS
311 frames in 5.0 seconds = 62.064 FPS
311 frames in 5.0 seconds = 62.026 FPS
[...]

これはパフォーマンスの欠落によるものではありません。ディスプレイのリフレッシュレートにあわせて、垂直同期を行なっているためです。

環境変数 vblank_mode=0 を付けることで垂直同期を無効にして glxgears を実行できます:

$ vblank_mode=0 glxgears

VSYNC を無効にする

VSYNC(垂直同期)を無効にするには /etc/X11/xorg.conf.d/20-intel.confSection "Device" に Option "SwapbuffersWait" "false" を加えて下さい。

もしくは、~/.drircvblank_mode0 に設定して、driverdri2 にセットします:

~/.drirc
<device screen="0" driver="dri2">
   <application name="Default">
   <option name="vblank_mode" value="0"/>
   </application>
</device>

起動中 "Loading modules" するときに画面がブラックアウトする

KMS の"遅いスタート"を使っているとき "Loading modules" で画面がブラックアウトする場合、initramfs に i915intel_agp を加えると解決するかもしれません。上記の KMS セクションを見て下さい。

または、次の カーネルパラメータ を加えるとうまく動くかもしれません:

video=SVIDEO-1:d

ティアリングの解消

SNA アクセラレーションメソッドを使っている場合、/etc/X11/xorg.conf.d/20-intel.confDevice 部分に次を加えることでティアリングを解消できます:

Option "TearFree" "true"
Note: SwapbuffersWaitfalse のときはこのオプションは意味がないかもしれません。

Intel ドライバで X がフリーズ・クラッシュする

X のクラッシュや GPU のハングアップ、X のフリーズなどが起こる場合、NoAccel オプションを使って GPU の使用を無効にすることで修復できます:

/etc/X11/xorg.conf.d/20-intel.conf
Section "Device"
   Identifier "Intel Graphics"
   Driver "intel"
   Option "NoAccel" "True"
EndSection

または、DRI オプションを使って 3D アクセラレーションだけを無効にすることもできます:

/etc/X11/xorg.conf.d/20-intel.conf
Section "Device"
   Identifier "Intel Graphics"
   Driver "intel"
   Option "DRI" "False"
EndSection

設定ファイルに以下のオプションを使うとクラッシュする場合は

Option "TearFree" "true"
Option "AccelMethod" "sna"

ブートパラメータに次を追加すると修正できます。

i915.semaphores=1

認識されない解像度を追加する

この問題については Xrandr page を参照してください。

libGL 9 と Intel-DRI 9 にアップグレードすると遅くなる

Intel-DRI 8 と libGL 8 にダウングレードしてください。

ビデオゲームでテクスチャが真っ黒

ビデオゲームでテクスチャが黒くなる場合、S3TC テクスチャコンプレッションのサポートを有効にすることで解決できます。driconf を使って有効にするか、 libtxc_dxtn をインストールしてください。

この"問題"は新しいドライバで修正される予定です。

S3TC についての詳しい情報は: http://dri.freedesktop.org/wiki/S3TC http://ja.wikipedia.org/wiki/DXTC

この問題が起こるゲームのひとつは Oil Rush です。

See also