どのくらいの速さから変換した3D数字SSEまたはその他のSIMD?
-
02-07-2019 - |
質問
を使用してい3Dの悩アダプタのご使用をおくことがわかった。どのくらいの速さで実現する変換する私のベクター/マトリックス図書館にSSE,AltiVecたSIMDコードについて教えてください。
解決
私の経験をいかして、通常は参照の約3倍改善に取りアルゴリズムからx87にSSE、 より良い よ5xの改善へのVMX/Altivecが複雑な問題にどうしていくべきなのかについてパイプラインの深さ、スケジューリングします。がいこる場合においては多くの人の番号の操作は、ない方にはうって行動する事が出来なくなベクトル間アドホック.
他のヒント
ばいいのかわからない若い世代に大人気のかを得ることが可能でさらに最適化を用いSIMDには、ミゲルの発表が実施したSIMD指示とその開催 PDC2008年,
(出典: tirania.org)
一部の非常に粗番号:聞いたのですが一部の人 ompf.org 請求項10倍のスピードアップのための一手を最適化した光線追跡できます。私はもったいくつかの良い速度ます。お見積り申し上げます私はどこか間で2倍、6倍マルーチンによって問題の多くれたカップルの不要な店舗。また膨大な分岐コードを忘れて、それについても問題が自然にデータを並列でできるのではないでしょうか。
しかし、私はこのアルゴリズム設計のためのデータ並列実行します。この場合は汎用数学図書室として使ってその必要が満載のベクトルではなく個々のベクトルあるいはんだを無駄にした。
E.g.のようなもの
namespace SIMD { class PackedVec4d { __m128 x; __m128 y; __m128 z; __m128 w; //... }; }
ほとんどの問題 することが可能な、全機能の事項 できる並列化できるさまと共に活動できることを大きなデータセットである。お問い合の早期化のための最適化。
3次元操作に注意国連の初期化データをごWます。ったケースがあSSE ops_mm_add_ps)が10倍平常時できるように、データW.
その答えとなりうに図書館はどう使われているそうです。
を得てから行くことができ、数%の、エンターテインメント"の数倍高速化"の分野を最も受けやすいるのを見益者がいない扱う孤立したベクターまたは値が、複数のベクトルや価値観を処理しなければならなり、同様に進めていく考えです。
とはい打キャッシュメモリの制限は、再び、多くの価値ベクトルが処理されます。
の領域の利益が最も激しいのだろう者の画像-信号処理,計算機によるシミュレーションとして一般3D数学の操作メッシュより単離ベクトル.
これらの日の全てのコンパイラのためのx86発SSE指SP、DP float数がデフォルトです。ものがほとんどよりは、これらの指示により、ネイティブなものでも、スカラー事業でのスケジュールします。この来しているのは多くは、過去に見つかりSSEは"遅い"、コンパイラが発生しない高速SSEスカラーに示します。しかし、今までの使用にスイッチをoffにSSEの生産x87.ご注意x87が効果的に推奨されていませんのでこの時点で削除される可能性があり今後のプロセッサを提案しています。のこのことはしてる能力は失われな80bit DP浮するものとする。その合意そうな場合によって80bitはなく64bit DP山車の精度、あるべき姿をより精度の損失-耐アルゴリズムです。
も上に来て驚きました。でもカウンター直観的です。がデータ。
がまだ非常に小さいスピードアップを図る場合、そのプロセス以上に複雑です。詳しく見る ユビキタスSSEベクタークラス することによりこの条Fabian Giesen.
ユビキタスSSEベクタークラス:Debunking共通の神話
なる重要な
まず、ベクトルのクラスはどのように変動するという重要な性能のプログラムとしてお考えの(場合は、可能性があるのだという誤った上での計算効率の悪い).なく間違っているのは、あるんじゃないでしょうかを最も使用頻度の高いクラス全体プログラムは、少なくともが3Dグラフィックただベクター業務に共通な自分はそんな理想の実行時のプログラム。
た違った意味で、しかしそれらの
容易ではない
ない現在
今までになか