現在、私の知る限りでは、LinuxでのNvidiaハイブリッドグラフィック(いわゆるOptimusテクノロジー)に関する3つの可能性があります。
- バンブルビー。このプロジェクトは死んでいるように見えるかもしれませんが、実際はそうではありません(開示者:私は開発チームの一員です)。私たち全員がかなり忙しかったため、非常に長い間ゆっくりと開発されてきましたが、最近は状況が良くなり、新しい貢献者の助けを借りました。4.0バージョンは軌道に乗っており、ほとんどがバグ修正であり、primusバックエンドがデフォルトになっています(ほとんどの人はすでに使用しているので気付かないでしょう)。Bumblebeeを使用すると、個別のNvidiaカードで選択したアプリケーションを実行しながら、統合Intelチップでデスクトップとディスプレイを実行できます。nouveauドライバーまたはnvidiaドライバーのいずれかを使用でき(カードがサポートされている場合は両方ともサポートされます)、電源管理はbbswitchに依存します(nouveauを使用する場合はvga_switcherooを使用するオプションがあります)。パフォーマンスの面では、Bumblebeeがどのように機能するかにより、PCIeがボトルネックになり、つまり、非常に高いフレームレートを達成することはできませんが(とにかく実用的ではありません)、専用のNvidiaカードのフルパワーに到達することはできません。ラップトップの一部のディスプレイ出力がNvidiaチップに接続されている場合(LenovoラップトップのHDMIの場合が多い)、Bumblebeeでそれらを使用できますが、多少の構成が必要で、おそらく理想的ではなく、上記よりもはるかに上です影響を受けるラップトップを所有しているBumblebee開発者はいないため、すべてテストされていません。それ以外の場合、バンブルビーはDRI2またはDRI3のいずれかで動作します。しかし、少しの設定が必要で、影響を受けるラップトップを所有しているBumblebee開発者がいないため、理想的ではなく、とりわけ何もテストされていません。それ以外の場合、バンブルビーはDRI2またはDRI3のいずれかで動作します。しかし、少しの設定が必要で、影響を受けるラップトップを所有しているBumblebee開発者がいないため、理想的ではなく、とりわけ何もテストされていません。それ以外の場合、バンブルビーはDRI2またはDRI3のいずれかで動作します。
- プライム。これは、このテクノロジーの適切なソリューションであり、適切なレベルで実装されます。ドライバー、カーネル、Xorg…PRIMEは、Bumblebeeと同じセットアップを許可しますが、法的な問題のため、nouveauのみがサポートされます。それ以外にも、i915ドライバーで必要な変更のため、ティアリングにいくつかの問題があります。また、nouveauにはまだパフォーマンスに関する多くの問題があるため、適切なリクロックが行われるまで、Bumblebee + nvidiaの設定よりもパフォーマンスが低下する可能性があります(Bumblebee + nouveauは明らかに同じ問題に悩まされています)。PRIMEは電源管理をbbswitchに依存せず、nouveau / kernel統合を使用します。また、PRIMEを使用すると、Nvidiaチップに配線された出力を非常に透過的にAFAIKで使用できます。DRI2で実行する場合は、少し設定が必要です(Bumblebee / bbswitchもインストールされているかどうかによって、正確な量は異なる場合があります)が、特に優れたものはありません。VDPAUもこのモードでサポートされます(ただし、nouveauドライバーでのみ再び)。DRI3で実行している場合、使用するのは非常に不自然です(次のリリースでBumblebeeがこのモードのサポートを取得する可能性があるほど)。ただし、VDPAUはサポートされておらず、Nvidia出力もサポートされていないようです。
- リバースプライム。ここでは、デスクトップを含むすべてにNvidiaカードを使用し、ラップトップディスプレイの出力シンクとしてIntelチップのみを使用するという考えです。これは、nouveau(上記と同じパフォーマンスの問題)とnvidia(たとえば、Ubuntuの専用nvidia-primeツール)の両方でサポートされています。つまり、省電力化はまったく行われず(すべての段階で消費電力が増加します)、PRIMEと同様に、どのディスプレイ出力も簡単かつ完全に利用できます。このモードでは、nvidiaドライバーを使用するときに専用カードを最大限に活用できます。これは、nvidiaドライバーを使用してNvidiaチップでVDPAUを機能させる唯一の構成でもあります。ただし、i915ドライバーで必要な変更のため、ティアリングに関するいくつかの問題もあります。このモードはDRI2でのみ機能します。実際には、
CUDAやOpenCLのようなものは、これらのツールを必要とせず、ほんの少しの構成ですが、Bumblebeeを他の利点を得ながら簡単に使用するモードとして注意してください。
DRI3を使用する場合、PRIMEとBumblebeeは共存できますが、DRI2またはリバースPRIMEへの切り替えでは、構成ファイルの切り替えとXサーバーの再起動が必要です。だから、あなたのニーズに応じて、これは私がアドバイスするものです:
- パフォーマンスは気にしないが、利用のしやすさ(主に外部出力の場合、影響を受ける場合)とFLOSSを気にする場合は、PRIMEを使用してください。
- パフォーマンスをもう少し気にしていて、ラップトップをバッテリーモードで頻繁に使用し、Xサーバーを常に再起動したくない場合は、Bumblebeeを使用してください。
- パフォーマンスを重視し、ほとんどの場合ACに接続してラップトップを使用している場合(および余分なWの節約を気にしていない場合)、nvidiaを使用してリバースプライムを確認します(実行中にnvidia-primeを使用してIntel専用モードに切り替えることができます)たまにバッテリーを使用しますが、この設定でNvidiaカードがオフになっているかどうかはわかりません)。