メインメニューを開く

差分

SSE

27 バイト追加, 2020年5月27日 (水) 03:22
== プログラミング ==
[[MMX,]][[3DNow!]],SSEまでの世代はこららに対応したまともなSSEまでの世代はまともな[[コンパイラ]]がなく[[アセンブラ]]を用いて[[プログラム]]を組んでいた。[[C言語]]や[[C++]]で大枠を書いて、[[インラインアセンブラ]]で部分的に高速化を試みるという書き方が主流であった。
後に機能強化された[[SSE2]]や[[SSE3]]、[[SSSE3]](Supplemental/補足的なSSE3)、[[SSE4]]などが登場している。この世代になると[[C言語]]などの[[コンパイラ]]も優秀になり[[アセンブラ]]で書くことはほとんどなくなった。
SSEがまともに使われだしたのは[[Java]]などの[[JITコンパイラ]]の技術が発達し「SSEの有無」を実行環境で判別してコンパイルするようになってからである。
ただJavaでSSEを使うようなプログラムを書くかと言われると、まず書かない。やっぱりベンチマークソフトくらいしか使っていない。ただ[[Java]]でSSEを使うような[[プログラム]]を書くかと言われると、まず書かない。やっぱりベンチマークソフトくらいしか使っていない。
=== オープンソース界隈 ===
[[ソースコード]]を落としてきて実行環境でコンパイルするスタイルの[[オープンソース]]界隈ではなんぼか使われていた。一昔前は「[[apache]]や[[mysql]]の性能を向上させる方法!」などとして[[ググる]]とよく出てきていた。
ただ[[オープンソース]]界隈も[[CentOS]]や[[Ubuntu]]が主流になり、「configureが主流になり、「[[configure;make;make install」が廃れ、パッケージからソフトウェアを入れるのが主流になったことでやっぱりベンチマークソフトくらいしか使われていない。install]]」が廃れ、パッケージからソフトウェアを入れるのが主流になったことでやっぱりベンチマークソフトくらいしか使われていない。
== ベンチマーク ==
* [[AltiVec]] ([[Velocity Engine]])
* [[ベクトルプロセッサー]]
* [[Intel Image Processing Library]]