前にもこの雑観を書いたのですが、MacMINIのM1です。メモリは16G。
編集ソフトはDavinciResolve17。
写真とか数値とかあれば良いのですが、文章だけですみません。
現在の素材は、ネットからテンプレートを落としてきた8秒のFusion素材を使っています。中身は簡単な3Dがあって、自分のJpg素材を入れてシーンを作るという、ありふれた作業工程のものです。
8秒を元のまま手をいれずに、エディットページで再生してみましたが、動作すらせず!・・・重い。Fusionページで確認すると、山のような構造でして、あ〜 これじゃな〜 という感じ。 確認のしようがないので、レンダリングして書き出そうとしましたが、
最初の30枚(30フレーム)程度は秒間1枚のペースでレンダリング。
え? 秒間1コマ! とお思いでしょうが、3Dをやっていれば、ザラ。
メモリ量を監視していましたが、最初は6G 程度から、だんだん増えて20G位になって、絵(最終書き出しファイル)の一部が書き出された段階で、一旦メモリ量が減り、最初の6G+アルファ程度になります。
コマが進むごとにメモリが増え、今度は30G程度になり、絵の書き出されたタイミングで、またメモリが減ります。今度は8G+アルファ程度に ・・・
これを繰り返して
最終的にDavinciの使用メモリは、120Gを超え、その後、システムが「メモリが足りません」という警告を出して、その少し後に落ちました。
でも、システムはスワップは表示されませんでしたので、OSがメモリスワップをしているとは思えません。でも120Gもの容量をメモリ圧縮できないでしょうから、何者かがSSD等にスワップしていたとしか考えられないのですね。
この辺りのメモリの推移は、他の有名編集ソフトでも見受けられるので、Resolve固有の話では無いと思います。
この8秒のレンダリングの様子を書きましたが、これも15分から20分位かかっての様子ですので、ユニファイドメモリの管理だというM1Macのメモリパージやスワップに何らかの原因があるのかもしれません。
途方に暮れていたのですが、 そうだ 「最適化ファイルを書き出し」たりできないかな? 或いは「レンダリングして置き換え」
このタイムラインのクリップは、最適化は出来ないので、レンダリングして置き換えをしてみました。すると、メモリの様子は基本的に最初と同じように増えては減りを繰り返すのですが、デリバリーページでレンダリングするより大幅にメモリが少なくて済みました。
見事に「レンダリングして置き換え」が出来て、最終のデリバリページのレンダリング軽減に繋がったようです(最終レンダリング設定で、これらのファイルを使う設定にしないといけない)
M1はメモリの増設すら自分では出来ないとのことなので、厄介です。ユニファイドメモリ管理なので、自分でスワップ領域を作って割り当てるだとか・・・ユニックスベースならできるのだが、Linuxのようにいかないのだろうな。
それにしても、100G超えのResolveのメモリ領域は、どのようにして、どこに造られたのだろう。 昔のMacは、メモリの空き領域をテンポラリに利用領域として使うことができたのだが、メモリ圧縮は高速に処理できなければいけないし現マシンは16Gしか実メモリがないので、SSDに書いたとしか思えないのだが、これがOSが持っているスワップ機能なら、アクティビティモニタに表示されると思うが、されない。
Resolve本体がダウンするのは、間違いなくメモリ確保ができないためだと思うが、その前にOSがスワップしてもよさそうだが、スワップされない。ということは、ResolveがOSの機能のスワップをアプリ内で行なっているかだ。
120G位で落ちていると書いたが、この時点のディスクの空き容量は500G程度。
キャッシュと書き出しファイルは外部ディスク(SSD)に設定していた。
まぁとにかく、最適化かレンダリングして置き換えをしてみるのも手かな。