ハイブリッドグラフィックスカードのサポート

最近、ラップトップ市場には、1枚ではなく2枚のグラフィックカードを同時に搭載するモデルが増えています。 1つ目は通常Intel製でバッテリー性能が低く、バッテリーに貪欲ではありません。2つ目はNVIDIAまたはATIで、重いタスクと厳しいゲームを引き受けますが、同時にバッテリーの充電に関しては非常に貪欲です。 最初のグラフィックカードはほとんど常に機能し、2番目のグラフィックカードは必要になるとすぐに動作を開始し、それ以外の時間は切断状態になります。



製造業者はWindowsのサポートを完全に心配していますが、これは驚くことではありません。 すべてがすぐに使えるようになっており、適切なドライバーをセットするだけです。



Linuxでは、今のところ物事はそれほどスムーズではありません。 カーネルレベルでのサポートは事実上ないことをすぐに理解する必要があります。 カードをオフにしたり、カード間で画像を転送したりするなど、個別の機能を実装するプロジェクトがいくつかありますが、大丈夫です。 製造業者がLinuxで自転車ソリューションのサポートを急いで追加せず、それらを駆動する方法教えていないという事実によって、すべてが複雑になっています。



技術的な詳細


ほとんどの場合、ディスクリート(2番目)カードはどこにも接続されておらず、ソフトウェアとドライバーを使用してイメージが統合カードに転送されます。 これは、正常に接続できないシステムにCRT-0またはDFP-0の仮想スクリーンが存在することを説明しています。 ただし、可能な場合もあります。



現時点で利用可能なほとんどのソリューションを検討してください。



vga_switcheroo


カード間の切り替え(1つのカードをオフにし、別のカードをオンにする)を実装するカーネルモジュール。 バージョン2.6.34以降、カーネルに表示されます。 また、 byo-switcheroo (以前のasus-switcheroo)の高度な機能とカードの優れたサポートも受けました。 debugfsをマウントする必要があり、Xカードを切り替えるにはXサーバーをシャットダウンする必要があります。 また、開いているドライバーでのみ機能します。



acpi_call


別のカーネルモジュールですが、メインブランチにはまだ含まれていません。 おそらく彼は決してそこにいないでしょう。 githubにあります。 主なタスクは、ユーザーにコマンドラインをacpiサブシステムに転送する機能を提供することです。 主に、エネルギーを節約するために個別のカードをオンまたはオフにするために使用されます。



ハイブリッドウィンドパン


Xサーバーのメイン画面を別のXサーバーの画面に転送するためのアプリケーション。 githubにもあります。 1つの物理ディスプレイ上で異なるXサーバーの2つの画面を組み合わせることができます。



マルハナバチ


NVIDIA Optimusベースのディスクリートカードを独自のドライバーで使用するためのサポートプロジェクト。 現在最も活発に開発されているプロジェクト。 再びgithubにあります。 個別のアプリケーションを個別のカードに手動でダウンロードできます。 Xサーバー間でデータを転送するために、NVIDIAグラフィックカード用の追加のXサーバーとVirtualGLパッケージを使用して実装されます。 最近、使用していないときにacpi_callを介して一部のラップトップモデルのディスクリートカードを無効にする機能が追加されました。 さらに、CUDAサポートを取得できますが、VDPAUサポートはまだ実装されていません。



次は?


カーネル3.0 では、より高度なMXMスイッチング方式の追加が期待されています。 それにもかかわらず、これはすべておよびすべての完全なサポートのほんの一部です。 また、 linux-hybrid-graphicsメーリングリストを購読し、 専用のブログで更新情報をお楽しみ ください 。 もちろん、可能であれば、コミュニティで積極的に活動し、さまざまなソリューションの開発を支援し、機器のacpiダンプを提供します。



リンクのリスト
  1. Linux NVIDIA Optimusサポートステートメント-www.nvnews.net/vbulletin/showpost.php?p=2183477&postcount=2
  2. メインカーネルブランチへのVga_switcherooモジュールのコミット-git.kernel.org/linus/6a9ee8af344e3bd7dbd61e67037096cdf7f83289
  3. githubのByo-switcherooリポジトリ-github.com/awilliam/asus-switcheroo
  4. githubのAcpi_callリポジトリ-github.com/avilella/acpi_call
  5. githubのハイブリッドWindumpリポジトリ-github.com/gebart/hybrid-windump
  6. VirtualGLプロジェクト-www.virtualgl.org
  7. githubのBumblebeeリポジトリ-github.com/MrMEEE/bumblebee
  8. カーネル3.0でのOptimusサポートに関するニュース-www.phoronix.com/scan.php?page=news_item&px=OTQzMA
  9. Launchpadの Hybrid-graphics-linux メーリングリスト-lists.launchpad.net/hybrid-graphics-linux
  10. Linuxハイブリッドサポートブログ-linux-hybrid-graphics.blogspot.com



All Articles