タイトルとして、Ubuntuでnvidia-optimusテクノロジーを正しくセットアップするにはどうすればよいですか?
タイトルとして、Ubuntuでnvidia-optimusテクノロジーを正しくセットアップするにはどうすればよいですか?
回答:
NB:この投稿は、ウェブ上のさまざまなものを読むのに何日も費やした結果ですので、自己責任で行ってください。Ubuntu 12.04 / 12.10 / 13.04 / 13.10 / 14.04(すべて64ビット)でnVidia GT650Mグラフィックカードを使用してテストしました。コメントや提案を自由に追加してください
1.まず、コンピューター上のすべてのビデオドライバーを削除する必要があります。
sudo apt-get remove --purge nvidia*
次に、以前にインストールした場合のバンブルビー:
sudo apt-get remove --purge bumblebee*
また、すべてのnouveauドライバーを削除する必要があります。
sudo apt-get --purge remove xserver-xorg-video-nouveau
確実にすべてのものを削除するには、dpkg -l | grep nvidia
and を入力してみてくださいdpkg -l | grep bumblebee
。何も返されないはずです。以下のためにdpkg -l | grep nouveau
それは言っていくつかの行を返す可能性がありますlibdrm-nouveauXXXXX
。今のところ、それらを無視してください。
2.次に、すべてのヘッダーを確実に入力する必要があります。
sudo apt-get install linux-source && sudo apt-get install linux-headers-$(uname -r)
3.次に行うことは、残りのnouveauドライバーと問題を引き起こす可能性のある他のパッケージをブラックリストに追加することです。
sudo cp /etc/modprobe.d/blacklist.conf /etc/modprobe.d/blacklist.conf.bak
sudo gedit /etc/modprobe.d/blacklist.conf
ファイルの最後に次の行を追加します。
# Necessary to install nvidia drivers
blacklist nouveau
blacklist lbm-nouveau
blacklist nvidia-173
blacklist nvidia-96
blacklist nvidia-current
blacklist nvidia-173-updates
blacklist nvidia-96-updates
alias nvidia nvidia_current_updates
alias nouveau off
alias lbm-nouveau off
options nouveau modeset=0
保存して終了します。
4.次に、最もよく知られているubuntuコマンドを実行します
sudo apt-get update && sudo apt-get dist-upgrade -y
5.これから、ttyで作業します。Ctrl + Alt + F1でtty1コンソールを開き、ユーザー名とパスワードでログインします。次に実行します:
sudo service lightdm stop
次に、ドライバーをインストールします。実行:
sudo apt-get install nvidia-XXX-updates nvidia-settings
ここで、XXXは最新の安定したドライバーです。私は331ドライバーを使用していますが、343がダウンロード可能であることをどこかで読みました(安定しているかどうかはわかりません)。
注意:最新のドライバーバージョンでは、nvidia-prime
デフォルトでもインストールされます。このテクノロジーは、ユーザーの介入なしに、IntelとnVidiaグラフィックカードを自動的に切り替えることを目的としています。これを行うには、両方のカードをオンのままにします。一方、Optimusは、明示的なユーザー要求がある場合にのみnVidiaグラフィックカードをオンにします。それは、素数に比べて大幅に少ない電力消費に変換されます。
私は個人的にプライムよりオプティマスを好むが、エネルギーの莫大な浪費に煩わされなければ、ここでやめなさい。それ以外の場合、2つのオプションがあります。
プライム(sudo apt-get remove --purge nvidia-prime
)を完全に削除します。
そこにプライムを残します。「最適化されたプライム」セクションでは、インストールされたプライムでもoptirunを動作させる方法を説明します。
6.ここで、bumblebeeとvirtualglパッケージをインストールする必要があります
sudo apt-get install bumblebee bumblebee-nvidia virtualgl virtualgl-libs virtualgl-libs-ia32:i386 virtualgl-libs:i386
次に、bumblebeeグループにユーザーを追加する必要があります。
sudo usermod -a -G bumblebee $USER
そして、PCを再起動します。
7.ユーザーアカウントにログインし、新しいターミナルウィンドウを開いて、次のように入力します。
cd /etc/bumblebee
ls -Al
リストされているさまざまなファイルの中で、特に2つbumblebee.conf
ありxorg.nvidia.conf
ます。両方のバックアップコピーを作成してみましょう。
sudo cp FILE_NAME FILE_NAME.bak
FILE_NAMEをファイルの実際の名前に置き換える必要があります。次に、sudo gedit bumblebee.conf
追加して最初のファイルを変更します(すべて引用符なし)
[nvidia-driver]の下の "XorgConfFile"が "/etc/bumblebee/xorg.conf.nvidia"(再び、引用符なし)と等しいことを確認してから、geditを保存して閉じます。
次に、他のファイルを編集する必要がありますsudo gedit xorg.conf.nvidia
(この場合は引用符も挿入する必要があります!!)。交換する
Option "ConnectedMonitor" "DFP"
と Option "UseDisplayDevice" "none"
、保存して終了。
8.実行gedit /etc/modprobe.d/bumblebee.conf
して、含まれているすべての行blacklist <something>
がコメント化されていないことを確認します(つまり、行がで始まらない#
)。
9.この時点で、次のコマンドを実行します
sudo service bumblebeed start
エラーが返された場合は、起動するのではなく、再起動してコマンドを再度実行してください。それでもエラーが発生する場合は、次のようにします。
restart: Unknown job: bumblebeed
おそらくbumblebee.confファイルに何か問題があります。そのため、ステップ7を再確認してください。
代わりに結果が次のようになる場合:
bumblebeed start/running, process XXXXX
バンブルビーのセットアップはもうすぐ完了です!
10.これで、単にoptirun glxspheres
またはを実行できoptirun glxspheres64
ます。すべてが期待どおりに機能する場合、次のような出力が得られます。
$ optirun glxspheres64
Polygons in scene: 62464
Visual ID of window: 0x20
Context is Direct
OpenGL Renderer: GeForce GT 650M/PCIe/SSE2
182.253407 frames/sec - 203.394802 Mpixels/sec
182.940725 frames/sec - 204.161849 Mpixels/sec
....
実際にnvidia-driversを使用していることを再確認するには、optirun <application>
実行中に別のターミナルを開いて、と入力しsudo lshw -c display | grep driver
ます。結果はそのようなものになるはずです。
configuration: driver=nvidia latency=0
configuration: driver=i915 latency=0
一方、起動したアプリケーションをすべて閉じるとoptirun
、Intelドライバーのみが表示されます。それでおしまい!!
Pavak Paulからのこの回答のおかげで、nVidiaを使用して開くアプリを管理するためにUbuntu 14.04にbumblebeeユーザーインターフェイスを追加する手順がここにあります。
1. Pythonアプリインジケーターをインストールします。
sudo apt-get install python-appindicator
2. Gitをインストールします。
sudo apt-get install git
3. gitのディレクトリを作成します。
mkdir git && cd git
4.リポジトリをチェックアウトします。
git clone https://github.com/Bumblebee-Project/bumblebee-ui.git
cd bumblebee-ui
sudo ./INSTALL
5.スタートアップアプリケーションに移動し、bumblebee-indicatorを追加します[[追加]をクリックし、必要な名前とコメントを挿入します。bumblebee-indicator
コマンドボックスに挿入し、[追加]をクリックします。
6.再起動します。
nvidia-prime
時々使用するオプションが必要な場合は、以下の手順に従ってください。
1. bumblebeed
起動時に起動しないようにするには、次を実行します。
echo "manual" | sudo tee /etc/init/bumblebeed.override
2.この点が最も問題です。マルハナバチがnVidiaドライバーをブラックリストに登録するのを防ぎ、グラフィックセッションがフリーズするはずです。ご自身の責任で試してください!実行:
sudo gedit /etc/modprobe.d/bumblebee.conf
nVidia XXXドライバーを含む行をコメントします。そのような結果になるはずです。
# XXX
#blacklist nvidia-XXX
#blacklist nvidia-XXX-updates
blacklist nvidia-experimental-XXX
3.システムを再起動して起動しますnvidia-settings
。最終的な状況は次のとおりです。
nvidia-settingsで「Intel(Power save)」を選択すると、デフォルトでIntelグラフィックカードのみがオンになります。optirun
nVidiaグラフィックカードを使用するには、アプリケーションを実行する必要があります
sudo service bumblebeed start
optirun <application>
代わりに「Nvidia(パフォーマンス)」プロファイルを使用する場合は、nvidia-settingsからプロファイルを選択し、ログイン/ログアウトするとすべてが自動的に機能するはずです。唯一のことは、bumblebeed
トラブルを引き起こす可能性があるため、このプロファイルを選択してデーモンを起動する必要がないことです。
1.のみを使用する場合nvidia-prime
:
sudo apt-get --purge remove bumblebee*
次に再起動します。
2. nvidia-primeを削除せずにoptimusのみを使用する場合は、以前のファイルを再度編集します。
sudo gedit /etc/modprobe.d/bumblebee.conf
以前に変更した行からコメントを外します(#文字を削除します)。
# XXX
blacklist nvidia-XXX
blacklist nvidia-XXX-updates
blacklist nvidia-experimental-XXX
そして再起動。この場合、起動時にbumblebeedを実行したままにしておくことができます。
sudo rm /etc/init/bumbebeed.override
vblank_mode=0 primusrun ./glxgears
することができますvblank_mode=0 optirun -b primus ./glxgears
。おかげで:)