注目キーワード
  1. 無償版
  2. 書籍
  3. GPU
  4. Windows

GPUなどによる処理対応とOSの関係

Question

DaVinci Resolveの有償版/無償版と、NVIDIAやAMD社のGPUや Apple シリコンやIntel社CPUのハードウェア エンコーダ/デコーダといったAPIと、Windows / MacといったOSの違いについて、パフォーマンスに関係する注意事項や制限はありますか?

Answer

DaVinci Resolveがより最適化して、高速な処理が期待できるGPUのAPIの順番は、Metal > CUDA > OpenCL です。

Windows環境

OSの仕様によりMetalを利用できません。
AMD Radeonの比較的新しいAPIであるMetalはWindows環境でサポートされておらず、OpenCLによる処理になります。

このため、一般的には次の順番になります。
(高速)NVIDIA(CUDA) > AMD Radeon( OpenCL ) > Intel (CPU) (低速)

エンコード

DaVinci Resolve仕様として、無償版では、H.264のハードウェア エンコード を利用できない制限があります。このため、無償版でのH.264のエンコードは、ソフトウェア処理(CPUを利用した演算)となります。(参考:バージョン17.4から、無償版でもH.265のハードウェア エンコードに対応)

デコード

無償版/有償版にかかわらず、H.264とH.265のハードウェア デコードに対応しています。
ただし、厳密には、無償版と有償版では異なります。

  • 無償版:Windows OSを経由し、OSの機能としてのハードウェア デコードを機能利用
  • 有償版:NVIDIA SDKを利用し、直接ハードウェア デコードを実施

理論上、有償版の方がデコードパフォーマンスが高くはなりますが、その差を明確に感じることは困難と思われます。(参考:バージョン19から無償版でもWindows OS経由にて、H.264とH.265のハードウェア デコードに対応)

エフェクト処理

無償版でもCUDAやOpenCLの処理に制限はありません。

DaVinci Resolve(無償版)DaVinci Resolve Studio(有償版)
NVIDIA (NVENC/NVDEC)H.264
・ソフトウェアエンコード
・ハードウェアデコード
H.265
・ハードウェアエンコード
・ハードウェアデコード
各種エフェクト
・CUDA
H.264
・ハードウェアエンコード
・ハードウェアデコード
H.265
・ハードウェアエンコード
・ハードウェアデコード
各種エフェクト
・CUDA
AMD Radeon
(Ryzen搭載GPUを含む)
H.264
・ソフトウェアエンコード
・ハードウェアデコード
H.265
・ハードウェアエンコード
・ハードウェアデコード
各種エフェクト
・OpenCL
H.264
・ハードウェアエンコード
・ハードウェアデコード
H.265
・ハードウェアエンコード
・ハードウェアデコード
各種エフェクト
・OpenCL
Intel (Intel QuickSync)
(CPU、Intel ARC GPUを含む)
H.264
・ソフトウェアエンコード
・ハードウェアデコード
H.265
・ハードウェアエンコード
・ハードウェアデコード
各種エフェクト
・OpenCL
H.264
・ハードウェアエンコード
・ハードウェアデコード
H.265
・ハードウェアエンコード
・ハードウェアデコード
各種エフェクト
・OpenCL
Windows環境

Windows環境の概要としては以上ですが、 同じメーカー(ブランド)の製品であっても、世代によって、ハードウェアでエンコード/デコードできるかの可否が異なります。 詳しくは下の「ハードウェアによるサポートの有無」も確認ください。

mac環境

次の通り有償版、無償版でパフォーマンスに直結する制限はありません。

DaVinci Resolve(無償版) DaVinci Resolve Studio(有償版)
Apple M1 / M2Media Engine / Metal Media Engine/ Metal
AMD RadeonMetal Metal
Intel (CPU) Intel QuickSync Intel QuickSync
Mac環境

mac環境の概要としては以上ですが、 同じメーカー(ブランド)の製品であっても、世代によって、ハードウェアでエンコード/デコードできるかの可否が異なります。 詳しくは下の「ハードウェアによるサポートの有無」も確認ください。

ハードウェアによるサポートの有無

概要としては、上に記載の通りですが、同じメーカー(ブランド)の製品であっても、世代によって、ハードウェアでエンコード/デコードできるかの可否が異なります。詳しくは次のリンクで確認してください。

NVIDIA

一部のチップの記載がないですが、参考になると思います。後述の「パフォーマンスに関係する情報」に記載の情報も確認ください。

AMD Radeon

利用できる情報が見つけられませんでした。

Intel

公式でまとまっているものが見当たりません。次のブログが参考になると思われます。

パフォーマンスに関係する情報

NVIDIA

NVENCの性能について

NVIDIAのGPUに搭載されているハードウェア エンコーダー NVENCはGPUの世代で同等です。

ただ、2022年頃から販売を開始している4000番台のGPUからは搭載されるNVENCの搭載数が変わり、4070Ti以上では2基搭載され、エンコード時間が大幅に短縮されます。

NVENCの最大セッション数

Max # of concurrent sessions」列にNVENCの最大セッション数の記載があります。
タイムライン中に複数の動画が重なる場合に、このセッション数の影響を受けます。最大数を超える場合、それ以上のエンコード処理はCPUでのエンコードになります。
また、DaVinci Resolve以外のソフトでもNVENCを利用するソフトがある場合、このセッション数が消費されます。
以前はGeForceシリーズは最大で3でしたが、2023年3月に公開されたドライバーから最大数が5になりました。また、2024年1月には、一部を除き、最大数が8になりました。

参考

性能差は、次の記事も参考になるかと思います。

更新
2023/8/8 NVENCの世代間性能と、搭載数によるエンコード時間についてを追加

2024/2/3 NVENCの最大セッション数が5→8となった件を追記

2024/10/09 バージョン19でWindowsの無償版環境でもH.264とH.265のハードウェア デコードに対応した旨を記載

最新情報をチェックしよう!