ラップトップ+ 2ビデオカード-生き方

最近、メーカーは2枚のビデオカードをラップトップに搭載する傾向があります。1つはエネルギーを節約するための単純なIntelの種類で、もう1つはゲームとビデオのためです。 私の知る限り、Lenovoは確かにこれを行っており、私とHP TouchSmart tm2-1080erは同じ傾向にありました。 プレインストールされたWindows 7 Home x64で、もちろんカードを切り替える機能が利用可能な場合、Windows 7 Professional x32は2番目のビデオカードを含めたくありませんでした。 Ubuntuでは状況は良くありませんでした-両方ともビデオカードによって決定されますが、デフォルトのIntelのものだけが使用されます。 そしてもちろん、食べ物は両方を食べています-その結果、ラップトップは必要以上に機能しません。 これにどう対処しますか?

したがって、2つのビデオカードがあります。

$ lspci | grep VGA

00:02.0 VGA compatible controller: Intel Corporation Mobile 4 Series Chipset Integrated Graphics Controller (rev 07)

01:00.0 VGA compatible controller: ATI Technologies Inc M93 [Mobility Radeon HD 4500 Series] (rev ff)






私たちのタスクは、2つのビデオカードを切り替える方法を学習するか、少なくとも2番目のビデオカードの電源をオフにすることです。



最初の方法。 モッキンバードを殺すために。



最初の方法は簡単です。 Lenovoノートブック用に作成された既製のモジュール(素晴らしいHPにも適しています)を取り、コアにねじ込みます。 これを行うには、debパッケージと動的モジュールねじ込みシステム-DKMSを使用します。

モジュールを気取らずに呼び出しました-hp_acpi_kill。



モジュールのソースコードを取得し、hp_acpi_kill.cという名前で保存します

次に、 Makefileを配置します

これは、OpenSUSEの未知の愛好家によって書かれた必須モジュールです。



次に、新しいカーネルバージョンごとにモジュールを再構築しないように、DKMSの構成を記述する必要があります。 幸いなことに、DKMSは非常に単純であり、構成は短いです。 dkms.confとしてダウンロードして保存します。 このファイルでは、コンパイルされたモジュールの名前、バージョン、モジュールのコンパイルおよびインストール方法を示します。 ここでやめることができるようです-モジュールをDKMSに追加し、組み立ててインストールします-しかし、私たちはまだ便利な配布キットのユーザーであり、何を理解していないのですか したがって、モジュールをパッケージにラップします。

パッケージアセンブリの詳細については説明しません。Habrで既に多くのことを書いているので、通常のファイルセットに加えて、* .postinst、*。Postrm、* .prermファイルが必要です。したがって、モジュールはDKMSで登録およびコンパイルされます。パッケージをインストールし、アンインストール中にクリーンアップします。 必要なすべてのファイルを含むアーカイブをここからダウンロードします。



debuildまたはdpkg-buildpackageコマンドを使用してパッケージを収集し、hp_acpi_killモジュール名を選択してインストールし、/ etc / modulesに追加します。システムが起動すると、ディスクリートグラフィックスカードがオフになり、消費電力が急激に低下します。

デバイスのリストを見ると、ビデオカードはシステムに表示されていますが、検出されていません。

$ lshw

...

*-generic:0

product: Illegal Vendor ID

vendor: Illegal Vendor ID

physical id: 0

bus info: pci@0000:01:00.0

version: ff

width: 32 bits

clock: 66MHz

capabilities: bus_master vga_palette cap_list rom

configuration: driver=radeon latency=255 maxlatency=255 mingnt=255

resources: irq:31 memory:c0000000-cfffffff ioport:3000(size=256) memory:e4400000-e440ffff memory:e4420000-e443ffff








2番目の方法。 vga_switcheroo



2番目の方法では、少しのトラフィックと少しの時間が必要になります。 実際のところ、カーネルのバージョン2.6.34がリリースされたのはそれほど前のことではなく、これにはビデオカードを切り替えるように設計された新しい興味深いモジュールvga_switcherooが含まれていました。 Launchpadとkernel.ubuntu.comでこのカーネルのパッケージを見つけることもできますが、モジュールはデフォルトの設定でオフになっています-ビデオカードを切り替えるための便利なグラフィックツールが発明されていないためでしょう。



したがって、開始するには、ランチパッドからソースパッケージをダウンロードします(Maverick Meerkat用に設計されていますが、私たちにとってもうまく機能します)。

$ wget launchpad.net/ubuntu/+archive/primary/+files/linux_2.6.34-2.9.dsc

$ wget launchpad.net/ubuntu/+archive/primary/+files/linux_2.6.34-2.9.tar.gz






開梱:

$ dpkg-source -x linux_2.6.34-2.9.dsc





では、linux-2.6.34ディレクトリに移動して、 お気に入りのエディターでdebian.master / config / config.common.ubuntuファイルを開きましょう。 「#CONFIG_VGA_SWITCHEROO is not set」という行を見つけて、「CONFIG_VGA_SWITCHEROO = y」に置き換えます(引用符は不要です)。

念のため、別のdebian / config /実施ファイルを開き、その中に「value CONFIG_VGA_SWITCHEROO y」という行を追加します-これは、アセンブリ中に単一の感染がパラメータセットを破損しないことを確認するのに役立ちます。

debuildコマンドを使用してビルドし(パッケージのビルド時にすべてが収集されるため、ビルドに時間がかかります)、インストールします。

$ sudo dpkg -i linux-headers-2.6.34-2_2.6.34-2.9_all.deb linux-headers-2.6.34-2-generic_2.6.34-2.9_i386.deb linux-image-2.6.34-2-generic_2.6.34-2.9_i386.deb



i386の代わりに64ビットシステムを使用している場合、もちろんファイル名はamd64になります。



再起動後にビデオカードを新しいコアに切り替えるにはどうすればよいですか? ソビエト情報局の概要を見てみましょう。
$ cat /sys/kernel/debug/vgaswitcheroo/switch

0:+:Pwr:0000:00:02.0

1: :Off:0000:01:00.0






プラス記号は、アクティブなビデオカード、Pwrマーク-ビデオカードがオン、オフ-オフであることを示しています。 何を変更できますか? vga_switcherooに渡すことができるコマンドの素晴らしいリストがあります:

DIS-個別のグラフィックカードに即座に切り替えます

IGD-統合グラフィックスカードへの即時切り替え

DDIS-個別のグラフィックカードへの遅延切り替え

DIGD-内蔵ビデオカードへの遅延切り替え

オン-未使用のビデオカードを有効にします

OFF-未使用のビデオカードをオフにします


すぐに切り替えてもすぐに効果が得られるわけではないとすぐに言わなければなりません。

したがって、次のコマンドを実行します。
# echo ON > /sys/kernel/debug/vgaswitcheroo/switch #

# echo DDIS > /sys/kernel/debug/vgaswitcheroo/switch #






システム内で「セッションを終了」をクリックし、再度ログインして統合ビデオカードをオフにします。

# echo OFF > /sys/kernel/debug/vgaswitcheroo/switch





結果を見てみましょう:

$ $ cat /sys/kernel/debug/vgaswitcheroo/switch

0: :Off:0000:00:02.0

1:+:Pwr:0000:01:00.0






Intelカードの電力を無駄にせずに、ゲームをプレイしたり、HDビデオを視聴したりできるようになりました。 また、元に戻して、本格的なビデオカードでさらに少ないエネルギーを消費し、バッテリーを節約できます。 彼女には何年もあります。



All Articles