情報ガイドステーションメニュー
| 実証!Intel® PAC(インテル® Arria® 10)#4 |
皆様、お久しぶりでございます。夏の暑さも和らいできた今日この頃いかがお過ごしでしょうか。 #1ではIntel PAC開封の儀を、#2ではIntel Acceleration StackとFPGA driverのインストール、#3ではBMC Firmwareのアップデートをお届けしました。 そして、最終回(予定)#4ではいよいよIntel® PACの一般的な性能測定をしてみたいと思います! (がっつり映像系の~等になると、組み込み開発が必要になるのでご了承下さい。。。) 実況は組み込み開発にも強い弊社パートナー富士ソフト株式会社さんのサーバルームより、筆者がお送り致します。 Intel Acceleration Stack 同梱のSample programを改変し測定 ホストプログラム :fpgabist(データサイズを変更しながら測定) AFUデザイン :dma_afu(FPGAからホストに対し、Read / WriteのDMAを実施) 赤線経路のDAMで様々なサイズのデータを転送し計測してみます。 測定結果グラフ 測定結果の考察
Intel® PACのHost → FPGAのDMAは、一般的な同規格のPCIeカードの85%で、ちょっと遅めですね。 FPGA → HostのDMAは75%ですが、これは都度memalloc(動的メモリの確保)をしている為だそうで、実装レベルでカバー可能だそうです!(頼もしい!) 総じて、PAC用ドライバーとFIUの性能が良くない結果になっていますが、最適化がされていないのではないか、というのが組み込み開発のプロフェッショナルのご意見でした! 動画転送を考えてみよう! まず、現在主流の映像規格ごとの必要転送レートを算出してもらいました。 映像サイズごとの転送レート
・・・映像の世界は難しいですね、筆者はさっぱりです。。。 4 : 4 : 4 はあまり使われる事はないそうです。 4 : 2 : 2 は映像素材等の業務用途で使用されるそうです。 4 : 2 : 0 はテレビ放送やDVD/BDなどの、最終的に配信される際に使用されるとの事。 4K / 8K放送も始まり、テレビやレコーダーも4K対応が当たり前になりつつあるので、4K / 8K 部分をしっかり見てみたいと思います! Intel® PACのDMA性能に当てはめてみるぞ! Intel® PACの実効レートに対する使用率
おぉ!! 4Kはもはや何も問題ないですね!(最適化されていないのに無問題とは・・・) 8Kも4 : 2 : 2はまり余裕がないものの、決してダメな感じではないですね! FPGA上の画像処理ロジックの消費リソースについても考えてみる
実装する映像処理として動画エンコーダーを想定し、どのレベルまで実装可能か検討してもらいました! プロフェッショナルのknowledgeと経験を基に考慮すると、4KターゲットのH.265 / HEVC 60fpsはIntel® PAC D5005(Stratix 搭載版)が必要になりそうだとの事です。このあたりは、カタログスペックからは読み取れないベテラン開発者ならではの考察ですね! vs ソフトウェアエンコード 検証の最後に4K UHDTV(3840 x 2160)60fps 5分25秒の映像をエンコードする時間を比較してもらいました! (なんと!実際にケーブルテレビ局さんで4K配信実験に使われたデータとの事です) ソフトウェアエンコード:PowerEdge R740でffmpegを実行 ハードウェアエンコード:FPGA特化のコーデック製品を開発をされている某社のEncode IP CoreをIntel® PAC(Arria10)に適用(発売時期未定のものを今回特別に実装して頂きました。)
Intel® PAC(Arria10 GX FPGA 搭載版)による映像処理性能の検討纏めとしては、 ・4K映像を処理する能力はあるが、8Kには少し不足する ・H.264 / AVCとH.265 / HEVC(30fpsまで)のエンコード処理を実現可能 ・H.265 / HEVCエンコードの場合、ソフトウェアエンコードに比べて約4倍の性能 という事で、Intel® PAC(Arria10)は汎用機を専用機に変えるだけのポテンシャルを秘めていると、筆者は実感出来た検証でした。 より詳細な技術情報やIntel® PACを活用した映像系ソリューションの情報等は、富士ソフト株式会社の組み込み開発者向けサイトへ是非、足を運んでみてください。 多大なご協力を(実質すべてやって)頂いた富士ソフト株式会社の組み込み開発技術者の方々、記事の執筆にあたって多くの支援をしてくれた方々に感謝申し上げたいと思います。 予定通り、本記事にて最終回となります! またいつかお会いする時まで、じゃぁねっ! パートナーセールスエンジニア 中西 祐輔 バックナンバーAIや映像変換を高速化する最適化とは?!実証!Intel® PAC(インテル® Arria® 10)#1 実証!Intel® PAC(インテル® Arria® 10)#2 実証!Intel® PAC(インテル® Arria® 10)#3 実証!Intel® PAC(インテル® Arria® 10)#4 |