fc2ブログ
 

アマレココ4 その2 CPU負荷

開発中のアマレココ4ですがほぼ録画処理が確定したのでアマレコTV4のデスクトップキャプチャとCPU負荷を比較しました。

1.テスト方法
くるくるベンチDX11を実行し、各キャプチャソフトにてデスクトップ全体(1920x1080)を 60fpsで録画した際のCPU負荷をタスクマネージャで観察します。また、録画はRGBとYUV(YUY2)の2種類でテストします。

キャプチャソフト起動前のCPU負荷は約 1%です。
kidoumae.jpg 


画面全体(1920x1080)を範囲選択し60fpsで録画します。
kidougo.jpg




2.PCスペック
PCスペック
OS Windows8.1 x64 Professional
CPU Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz Haswell
MB ASRock H87 Performance (Intel H87)
Memory DDR3 1600 16GB(8GBx2 Dual Cannel)
VGA NVIDIA GeForce GTX 650 1GB
録画HDD WD30EZRX 3TB
Software AmaRecTV4 Ver4.01
 AmaRecCo4 開発版
 くるくるベンチDX11 Ver1.00
備考 CPUは4コア、8スレッド、HTT対応、AVX2対応。動作クロックを3.4GHz(定格)で固定し、省電力設定およびTurbo BoostはBIOSで無効化、動作クロックがテスト中に変動しないようにしています。





3.結果

 キャプエンコプレビュー録画のみ 録画+プレビュー 最小化
アマレコTV4RGB
RGB
(DR3)
約 9%
amarectv_rgb_preview.jpg
約 8%
amarectv_rgb_rec.jpg
約 14%
amarectv_rgb_rec_preview.jpg
約 4%
amarectv_yuv_tray.jpg
RGBYUV
(DY3)
約 8%
amarectv_yuv_rec.jpg
約 13%
amarectv_yuv_rec_preview.jpg
アマレココ4RGBRGB
(DR3)
約 2%
amarecco_preview.jpg
約 7%
amarecco_rgb_rec.jpg
約 7%
amarecco_rgb_rec_preview.jpg
開発中
YUVYUV
(DY3)
約 5%
amarecco_yuv_rec.jpg
約 5%
amarecco_yuv_rec_preview.jpg


・プレビュー
キャプチャソフトを起動してプレビューしている状態のCPU負荷です(録画は行っていません)。
GPUで処理できるアマレココ4が圧倒的に有利な結果となりました。
アマレコTV4はビデオメモリの内容を一度システムメモリへ転送したのち、再びビデオレンダラーのビデオメモリへ送り表示するためCPU負荷は高めとなります。

・録画のみ
プレビュー処理を止めて録画のみした状態のCPU負荷です。
アマレコTV4については最小化したりタスクトレイに入れることでプレビュー処理を止めることができるため、タスクトレイに格納した状態で録画しました。
また、アマレコTV4ではRGBでキャプチャしたものをAMV4のDR3設定で録画した場合と、AMV4をDY3に設定しRGBをYUV(YUY2)へ変換しながら録画した場合の2つのケースでテストしました。
アマレココ4はRGBでキャプチャしてDR3で録画した場合と、YUVでキャプチャしてDY3で録画した場合でテストしました。

RGBによる録画に関してはアマレコTV4とアマレココ4とでほぼ同じ処理構成になりますが、僅かにCPU負荷を軽減できています。
一方、YUVによる録画については、アマレコTV4はRGBでキャプチャした画像をAMV4ビデオコーデックによりCPUを使ってYUVへ変換するのに対し、アマレココ4は、キャプチャ処理自体をYUVで行う(RGB・YUV変換はGPUのピクセルシェーダーで処理します)ためAMV4ビデオコーデックによる変換処理を省けるだけでなく、ビデオメモリからシステムメモリへデスクトップ画像を転送するデータ量も半分に軽減できます。これらにより大幅なCPU負荷軽減となっています。

・録画+プレビュー
プレビューしながら録画した場合のCPU負荷です。
アマレコTV4はプレビュー処理に足を引っ張られてCPU負荷が大きめとなります。
アマレココ4は今回の結果(数値)では「録画のみ」と「録画+プレビュー」で差が見られませんが、実際は若干プレビュー処理によりCPU負荷が上昇します。

・最小化
アマレコTV4については録画もプレビューもしていない状態ですがアマレコTVの性質上、常にキャプチャ処理(ビデオメモリをシステムメモリへ転送)を行っていますので、起動前の1%からCPU負荷が上昇しています。
アマレココ4については検討中です。




より滑らか~ くるくるベンチ for DX11

くるくるベンチのDirectX11版です。
以前公開したDirectX7(Direct Draw7)版やアマレコTVのプレビューより、さらに滑らかな表示ができます。
Windows8+DirectX11環境によりほぼ完ぺきに1フレーム単位の表示が可能と思われます。

krkrbenchidx11.png

【使い方】
デスクトップキャプチャソフトの録画フレームレートをモニターのリフレッシュレートと同じに設定(通常60fps)し、くるくるベンチの様子を録画します。
録画した動画ファイルをAviUtlなどで1フレームずつ観察し (くるくるベンチに表示されている) フレームカウンタの重複や抜け(Drop)がないかみてください。


【ダウンロード】
くるくるベンチ for DX11 Ver1.00


次回はこのくるくるベンチを使って新アマレココのCPU負荷を紹介します。


スーパーアマレココ

鋭意制作中のスーパーアマレココことアマレココのVer4について紹介します。

アマレココはアマレコTVのデスクトップキャプチャとして統合しましたので、もうアマレココを作ることは無いと考えていましたが、アマレコTV4で使ったDesktop Duplication API(Windows8以降でデスクトップ画像を取得するOSの機能)の感触がとてもよかった一方、アマレコTVの仕組みにより、足を引っ張られる場面(Direct Showを使わなければならなかったり、プレビュー機能など)もあり、もっと極まったものを作るべくアマレココ4の制作を開始しました。

なお、既にアマレコTV4がありますので、似たものを作っても不毛なのでアマレココ4は純粋にデスクトップを録画する初心者向けのアプリケーションとし、実況動画の作成で使うオーディオミキサーやプリセット機能など色々やりたい人はアマレコTVと言った棲み分けとなります。

アマレココ4とアマレコTV4の比較
 アプリ機能性能、その他
アマレココ4録画のみプレビューや録画中のCPU負荷が小さい
初心者向け
アマレコTV4多機能プレビューや録画中のCPU負荷が大きめ(※)
色々やりたい人向け
※ あくまでアマレココ4と比べての話

amarecco4.png


amarecco4settei.png


■主な特徴
(1) GPUによるプレビュー処理(CPUやシステムメモリを経由しない)
(2) GPUによるRGB・YUV変換(ビデオメモリからシステムメモリへ画像を転送する負荷を半減)
(3) GPUによるリサイズ(ハーフサイズ専用、ビデオメモリからシステムメモリへ画像を転送する負荷を1/4へ軽減)
(4) 機能は録画、スクリーンショットのみ(オーディオミキサーなし、プリセットなし)

基本的にはビデオメモリとシステムメモリの間で画像データを転送する処理(※)に多くのCPUリソースを食われますので、アマレココ4ではGPUを活用し転送処理を改善することで録画中のCPU負荷を軽減します。
また、プレビュー処理に関しては画像データが既にビデオメモリ上にありますので、CPUやシステムメモリを使った転送処理は行いません。

※ デスクトップキャプチャ処理はビデオメモリ上の画像をシステムメモリへ転送、アマレコTVのプレビュー処理はシステムメモリ上の画像をビデオメモリへ転送して表示


次回は録画中のCPU負荷がどの程度軽減されるか紹介します。
公開は10月を予定しています。


 
 
あまラボへようこそ
このブログでは自作ソフトの最新情報やtips、PC動画に関する話題を掲載していきます。各記事へは下にあるカテゴリからアクセスして下さい。

ファイルのダウンロードはホームページの方でお願い致します。

質問・要望・不具合報告はこちら
アマレコTV
アマミキ!
アマレココ
アマレコ・ライト
ファンタジーリモート
AMVコーデック



ホームページ
カテゴリ
最新コメント
カレンダー
08 | 2016/09 | 10
- - - - 1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 -
最新記事
最新トラックバック
ブログ内タグ

アマレコTV ビデオキャプチャ アマレコVR AMVコーデック Oculus アマレココ Quest アマミキ! コーデック gQuest SC500 動画配信 Pico GO ファンタジーリモート 4K アマレコライト Unity プラグイン G2 AMV4 oculus ライブ機能 SC512 パススルー機能 デスクトップキャプチャ Passthrough AVX2 リモートソフト FAQ 質問コーナー アセット機能 ニコニコ動画 HDキャプチャ DirectShow 背景透過 120Hz Asset レゴ 遅延 解説動画 組み換え 可変再生速度 Meta LEGO MetaQuest VR GV-USB2 XL2420T 2 Pico4 倍速液晶 液晶モニター デインターレース ベンチマーク アマステ Intensity VRonVR AMV2MT MonsterX3A Pro PS4 VideoKeeper2 designs インストール Alternate AVX XCAPTURE-1 RDT233WX-Z GV-USB SD-USB2CAP4 31024 32ZP2 31006 ffmpeg 画像処理 60fps Robust Matting RGBキャプチャ Rift Video Shadow Play WindowsMR RYZEN UtVideo T2 HDMI NVEnc HDCP QSV LameACM OBS 音遅延 MP3 Haswell 電源オプション 音ズレ 録画 オーバーレイ XCapture-1 MonsterXU3.0R フィギュア ハイパースレッディングテクノロジー HT 31021 MPC 液晶テレビ DirectShowFilter プレビュー 擬似NTSCキャプチャ SD-USB2CUP4 Livetube AtomでHDキャプチャ キャプチャーツール シンクライアント イベント IntensityPro DC-HD1 額縁遅延 REGZA ZP3 倍速補完処理 32ZP32 Kabelake リプレイ機能 モノステ 倍速駆動 ゲームスムーズモード LAVFilters SkyBox Hand Tracking 2.0 ファイルマネージャプラス pytorch APIパススルー機能 API python ハンドジェスチャー パカラーススルー機能 アルファ付き動画 アルファ付きVR動画 RVM クロマキー ダウンロード AssetBundle 物理処理 download passthrough 検証 Preferred Filter Tweaker SteamVR GPU使用率 可逆圧縮 SKnet GV-USB3 キャプチャカード VR動画 フレーム間圧縮 新プレイヤー機能 AMPlayer 60Hz 新アマレコVR 90Hz VRコントローラー MR Windows SSE 

ブログ内検索
月別アーカイブ
アマレココに関するリンク
お世話になっているソフトのリンク
RSSリンクの表示
管理画面
  • 管理画面