web-dev-qa-db-ja.com

Ubuntu 16.04 LTS-Intel HD Graphicのバッテリー寿命が短い

Windows 10からUbuntu 16.04 LTSに切り替えたばかりで、Gnome Shellをインストールして構成した後、非常に満足しています。しかし、すべての人と同じように、Windows 10(5時間から1.5時間)に比べて、バッテリ寿命が大幅に低下しています。

最初にBumblebeeをインストールしてOptimusを有効にしようとしましたが、成功しませんでした(XORGエラー)。高い3Dパフォーマンスは本当に必要ないので、コマンドで「低」パフォーマンスのIntel HD Graphicを使用することにしました。

Sudo prime-select intel && Sudo reboot

再起動後、5分間powertopを実行しましたが、驚くべきことに20Wの放電レートが得られました。一方、Nvidiaカードに切り替えると、powertopで14Wの放電レートが得られるため、非常に混乱します。 Nvidiaカードでは、3時間のバッテリー寿命が得られますが、それでもWindowsからはほど遠いです。 Intel HD Graphicのバッテリー寿命はNvidia Graphicカードよりも悪いのはなぜですか?

Nvidia Geforce GTX860Mを搭載したCPU i7 4710HQがあります。

PS:TLPはバッテリー寿命を少し改善しませんが、LMTはバッテリー寿命をわずかに改善します。

1
Kefeng91

どのグラフィックスドライバーをインストールしたかわかりません。私はあなたと同じような問題に直面していたので、解決策を探している間にあなたの投稿に行きました。とにかく、これは私が私の問題を解決した方法です:

私のシステムで時々ゲームをする(DotA 2)ので、グラフィックスドライバーPPAから最新のnvidiaドライバー(367)をインストールしました。ドライバーをubuntuリポジトリから361(独自にテストしたもの)にダウングレードし、問題を解決しました。今、私は11w/hをchromeで実行していますが、以前のようにIntelカードで23w/hを取得していました。それは半分以下です。

ところで、私は歴史からあなたの投稿を見つけなければなりませんでしたが、私は痛みを知っています。 :) それが役に立てば幸い。

1
chaudry

お返事ありがとうございます。

実際、数日間の検索の後、私はこれをあきらめましたが、あなたの答えは私に希望を与えたので、私はちょうどいくつかのチュートリアルを経てバンブルビーを再びインストールしました(それらのスレッドのミックス):

あなたと同じように、ドライバーnvidia-361をインストールしました。これで実行できます:

optirun firefox

迅速なチェックアップ

optirun --status

firefoxの実行中にこれが表示されます。

Bumblebee status: Ready (3.2.1). X is PID 4591, 1 applications using bumblebeed.

ただし、Firefoxを閉じて再度確認した後:

optirun --status

ディスクリートカードはまだオンです。意図されているかどうかはわかりませんが、optirunプロセスがすべて終了した後、Bumblebeeは個別のカードをオフにできないようです。したがって、ディスクリートカードをオフにするには、次のようにします。

Sudo tee /proc/acpi/bbswitch <<<OFF

私は通常不幸な人なので、うまくいきませんでした...高速Google検索は、「nvidia」ドライバーがまだ使用中であるためだと言っています。したがって、個別のカードをオフにするには、ドライバーを手動で削除する必要があります。まあ、怠け者としても、毎回やらなくて済むようにシェルスクリプトを作成しました。ここでは、一部の人が興味を持っている場合です(それでもまだ...):

#!/bin/bash

if [ $# == 0 ]; then
  status="OFF"
else
  status=$1
fi

if [ "$status" == "OFF" ]; then
  Sudo rmmod nvidia_modeset
  Sudo rmmod nvidia_uvm
  Sudo rmmod nvidia
fi

Sudo tee /proc/acpi/bbswitch <<<$status

スクリプトを「bbswitch.sh」と呼び、次のコマンドで実行可能にしました。

chmod +x bbswitch.sh

スクリプトを隠しディレクトリ〜/ .scriptsに配置し、.bashrcの最後に次の2行を追加してパスに追加しました。

export PATH=$PATH:~/.scripts
alias bbs="bbswitch.sh"

したがって、どこからでも入力するだけで、個別のカードを無効にできるようになりました。

bbs

次のように入力して有効にすることもできます。

bbs ON

しかし、意味はありません(ただ空想です)。

今、11〜12 W/hの間で振動している放電レートが得られ、ラップトップを約4時間使用できます:)

とにかく、再び希望を与えてくれてありがとう、このスレッドが私と同じくらい不幸な人たちを助けることを願っています。

1
Kefeng91