質問

私は、Intel Core2Duo E4500プロセッサを使用しています。 SSE3、SSSE3施設を持っていることになっています。しかし、私はプログラムの中でそれらを使用しようとする場合、それは次のようなエラーが表示さ

「SSE3命令セットが有効になっていません」

任意のアイデア?

役に立ちましたか?

解決

使用 CPU-Z には、利用可能な命令セットをチェックします。

Visual Studioを使用している場合は、オプションがC/C++ -> Code Generation -> Enable Enhanced Instruction Setにあります。

ここで gccのの中でそれを有効にする方法です。

上記のリンクから

-msse3
-mssse3

他のヒント

Linuxの

flags

の出力のcat /proc/cpuinfoフィールドを見て

このgccのコマンドラインオプションを追加してみてください。

-march=core2 -msse3

そしておそらくまた、浮動小数点演算のためのSSE最適化をオンにすることをお勧めします:

-mfpmath=sse

あなたは最近のgccで、あなたのコードを実行されると同じマシン上でコンパイルする場合は、すべてのCPUの機能を利用するために-march=nativeを使用することができるはずです。あなたはasmでサポートされていない命令を使用している場合は、その後、コンパイル時にあなたを伝える必要があります。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top