PMD_MT 高速化版+7

・AVX-VNNI対応によりごくわずかに高速化。
Alderlake向け最適化。

AlderlakeはEコアがAVX512に対応していない関係で、AVX512が無効化されていて、基本的にはAVX2までの対応にとどまっている。なので、AVX512で追加されたいろいろ便利な新しい命令は、軒並み使用できない。

ところが、そういう新しく追加されたAVX512命令のうち、AVX512VNNIだけが特別扱いで、その256bit版がEコアでも動作するように追加されていて、これが使えるようになっている(AVX-VNNI)。

このAVX-VNNIを使うと、AVX2のvpmaddwdとvpaddの2命令をvpdpwssdの1命令に置き換えられるので、今回はその置き換えを行った。命令数が減るので理屈の上では速くなるはずだが、それほど多くの個所で使用してはいないので、微々たるものだとは思う。



ダウンロード>>
ダウンロード (ミラー) >>

ソースはこちら


スポンサーサイト



PMD_MT 高速化版+6

久しぶりに更新して、AVX2版の高速化と、AVX512版を追加、さらにいくつかの最適化を積み上げて高速化。環境とオプションによっては、少しは速くなったかも?

※注意点: すみませんがSSE版は全くさわっていません…。

PMD_MT 高速化版+5 gatherの速度とか

Broadwell/Skylakeのgatherは(条件によっては)速いのかもしれない、という話。

一方、Haswellのgatherは残念な子。

PMD_MT 高速化版+4

主にAMD向けの更新 & 昨日の記事の続き。

更新内容は、

・AVX+FMA3の組み合わせでは256bit演算でなく、128bit演算を使用するように
AVX+FMA3の動作するSteamroller上ではそのほうが高速

・AVX+FMA4の組み合わせも追加、Bulldozerでも (たぶん) 高速化
持ってないので動作確認してないけど、たぶんちゃんと動くはず…

A10-7850KでのPMD_MT高速化版

この前公開したPMD_MT高速化版が、実はAMDではそんなに高速じゃない、という話。

速度を測ってみて、なんで速くないかを考えてみる。ただ今回はぐだぐだ予想とかを書くだけ…

PMD_MT 高速化版 +3

+2で大問題をみつけたので修正です。

FMA3のコード (AVX+FMA3 及び AVX2+FMA3) が有効になっていなかったのを修正。

テストでFMA3を無効にしていたものを公開してしまいました。いったいなにをやってるのやら…。申し訳ありません…。



ダウンロード>>
ダウンロード (ミラー) >>
OneDriveの調子がいまいちの時はミラー(dropbox)からどうぞ。同じものです。


PMD_MT 高速化版+2

・AVX + FMA3の組み合わせを追加
要望ではない、と強調して頂いてはいたのですが、さくっとできてしまうので、一応。

・AVX版で欠けていたzeroupper命令を追加
修正PMD: オフ、 useExp: オフの場合、AVX版のパフォーマンスをわずかに改善



ダウンロード>>
ダウンロード (ミラー) >>
OneDriveの調子がいまいちの時はミラー(dropbox)からどうぞ。同じものです。



PMD_MT 高速化版

要望があったので、Aviutlのフィルタ、PMD_MTの高速化を試みた。

オリジナルはこちらにあるもの。素晴らしいフィルタを公開して下さり、ありがとうございます。
プロフィール

rigaya

Author:rigaya
アニメとか見たり、エンコードしたり。
連絡先: rigaya34589@live.jp
github twitter

最新記事
最新コメント
カテゴリ
月別アーカイブ
カウンター
検索フォーム
いろいろ
公開中のAviutlプラグインとかのダウンロード

○Aviutl 出力プラグイン
x264guiEx 3.xx
- x264を使用したH264出力
- x264guiExの導入紹介動画>
- x264guiExの導入
- x264guiExのエラーと対処方法>
- x264.exeはこちら>

x265guiEx
- x265を使用したH.265/HEVC出力
- x265guiExの導入>
- x265.exeはこちら>

QSVEnc + QSVEncC
- QuickSyncVideoによるHWエンコード
- QSVEnc 導入/使用方法>
- QSVEncCオプション一覧>

NVEnc + NVEncC
- NVIDIAのNVEncによるHWエンコード
- NVEnc 導入/使用方法>
- NVEncCオプション一覧>

VCEEnc + VCEEncC
- AMDのVCE/VCNによるHWエンコード
- VCEEnc 導入/使用方法>
- VCEEncCオプション一覧>

svtAV1guiEx
- SVT-AV1によるAV1出力
- svtAV1guiExの導入>
- SVT-AV1単体はこちら>

VVenCguiEx
- VVenCによるVVC出力
- VVenCguiExの導入>

ffmpegOut
- ffmpegを使用した出力
- ffmpegOutの導入>


○Aviutl フィルタプラグイン
自動フィールドシフト (ミラー)
- SSE2~AVX512による高速化版
- オリジナル: aji様

clfilters 
- OpenCLベースの複数のGPUフィルタ集
- 対応フィルタの一覧等はこちら

エッジレベル調整MT (ミラー)
- エッジレベル調整の並列化/高速化
- SSE2~AVX512対応
- オリジナル: まじぽか太郎様

バンディング低減MT (ミラー)
- SSE2~AVX512による高速化版
- オリジナル: まじぽか太郎様

PMD_MT
- SSE2~AVX512による高速化版
- オリジナル: スレ48≫989氏

透過性ロゴ (ミラー)
- SSE2~FMA3によるSIMD版
- オリジナル: MakKi氏

AviutlColor (ミラー)
- BT.2020nc向け色変換プラグイン
- BT.709/BT.601向けも同梱

○その他
Amatsukaze改造版
- AmatsukazeのAV1対応版

rkmppenc
- Rockchip系SoCのhwエンコーダ

x264afs (ミラー)
- x264のafs対応版

aui_indexer (ミラー使い方>)
- lsmashinput.aui/m2v.auiの
 インデックス事前・一括生成

auc_export (ミラー使い方>)
- Aviutl Controlの
 エクスポートプラグイン版
 エクスポートをコマンドから

aup_reseter (ミラー)
- aupプロジェクトファイルの
 終了フラグを一括リセット

CheckBitrate (ミラー, 使い方, ソース)
- ビットレート分布の分析(HEVC対応)

チャプター変換 (使い方>)
- nero/appleチャプター形式変換

エッジレベル調整 (avisynth)
- Avisynth用エッジレベル調整

メモリ・キャッシュ速度測定
- スレッド数を変えて測定
- これまでの測定結果はこちら

○ビルドしたものとか
L-SMASH (ミラー)
x264 (ミラー)
x265 (ミラー)
SVT-AV1 (ミラー)

○その他
サンプル動画
その他

○読みもの (ミラー)
Aviutl/x264guiExの色変換
動画関連ダウンロードリンク集
簡易インストーラの概要

○更新停止・公開終了
改造版x264gui
x264guiEx 0.xx
RSSリンクの表示
リンク
QRコード
QR