入門編をやってみたら、やっぱりSIMDが難しい

まずはCellプログラミングチュートリアル入門編をやってみた。感想としては、libspeがそれなりに高級なインタフェースを用意してくれてるので、「SPEで並列」はマルチプロセスのプログラミングと似てるし、「PPEとSPEでDMA転送」はmemcpy()に似てるし、概念的にはそれほど難しくは感じない(DMAは性能気にし出すと難しそうだけど…)。
だけどSIMDが難しい。パソコン限定でいってもMMX Pentiumが多分最初にSIMD命令を搭載してるから、もう10年くらい前にはあった機能だけど、私自身はほとんど手を出した事がないため、各SIMD命令の単純な組合せでも混乱してしまう。精進が足りないね。
それはそれとして思ったのが、スーパーコンピュータの世界じゃ最適化機能として自動ベクトル化をサポートしているとか聞くけど、パソコンの世界だと、SIMD命令ってこれだけ長いこと存在しているのに、標準で扱えるプログラム言語を聞かない気がする。某I社のコンパイラとかはやってくれるのかな?