問題タブ [sse3]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mingw - MinGW エラー タイプ '__m128i' は Eclipse で解決できませんでした
MinGW を使用した Eclipse で、インテルの組み込み命令 (sse2 sse3) を持つ C コードをコンパイルしようとしています。コンパイラ オプション -march=native -msse2 -msse3 -mssse3 -msse4.1を指定しましたが、エラーが発生します
タイプ '__m128i' を解決できませんでした。
それでもアプリケーションをビルドすることはできますが、Intel Intrinsic Instruction の実行中に実行時にクラッシュします。そのため、「SSE3命令セットが有効になっていません」と表示されているIntel Intrinsic Instructionのヘッダーファイルを調べました。
これから抜け出すのを手伝ってください。
c++ - (Vec4 x Mat4x4) SIMD と改良を使用した製品
複雑なシミュレーション プログラムを作成していますが、最も時間がかかるのは、4 つのベクトル (float4) と 4x4 の行列を乗算するルーチンです。多かれ少なかれ古い複数のコンピューターでこのプログラムを実行する必要があります。そのため、次のコードでそのような操作の SIMD 機能を確認しようとしました。
このような問題の改善については、いくつかのトラブルがあります。コードを実行すると、次の結果が得られます (Intel Core i5 4670K、3.4GHz、Haswell、Codeblock + MinGW コンパイラで -O2 -march=corei7-avx を使用):
私の質問は次のとおりです。
これにより、パフォーマンス/スピードアップをさらに改善することは可能ですか? SSE の場合は x4 (最大)、AVX の場合は x8 である必要があります。
AVX が SSE3 よりも速くないのはなぜですか?
「あなたのものを使うのをやめて、Intel Math Kernel Library を使ってください」と言う人に対して、私はこう答えます。 -)
assembly - アセンブリ コード x86 および SSE でベクトルを使用する方法
x86 で stl ベクトルにアクセスする方法がわかりません。私はそのようにしようとしましたが、いくつかのエラーがあります。
SSE言語でも同じことをしたいです。
前もって感謝します!
c++ - OpenCV のプロセッサー最適化フラグ
さまざまな Windows コンピューター (Win7、Win8、Win10 を使用) で実行される OpenCV を使用するアプリケーションを構築しています。
現在、一部のコンピューターでアプリケーションがランダムにクラッシュすることを発見しました。多くのグーグル検索の後、OpenCV で SSE3 を有効にすると、SSE3 をサポートしていないプロセッサで不正な命令のクラッシュが発生する可能性があることに気付きました。
https://bugs.launchpad.net/linuxmint/+bug/1258259
これが私の質問です。どのプロセッサフラグが「安全」か知っている人はいますか? 彼らが何をしているのかは理解していますが、プロセッサが SSE42 などをサポートすることがどれほど一般的かはわかりません。
言い換えれば、OpenCV をコンパイルするときに、これらのフラグのどれを無効にする必要があると思いますか?
c - SSE3 で水平方向に追加
SSE と SSE3 を使用して、配列のすべての要素の合計を計算する簡単なコードを作成しようとしています。違いは、一方のコードでは PADDD を使用して「垂直方向に」合計し、もう一方のコードでは HADPPS を使用して水平方向に合計することです。私が関心を持っている唯一の値は総計であるため、総計の方法は重要ではありません。ただし、水平加算は間違った結果を出力しています。理由はありますか?
これは、通常の追加のコードです。
そして、これは水平加算のコードです:
追加命令だけを変更する必要があると思いますか?