プログラマーの卵の日記

備忘録になってます!小難しそうなことから超簡単なことまでやってます!!

読書による知見 - SIMD演算

SIMD演算

 で、SIMD演算って何?SIMD(Single Instruction Multiple Data)命令らしいよ。いやそうじゃなくってね。

 

Wiki

SIMD - Wikipedia

調べた参考先↓

SIMDプログラミング入門(AVX-512から始める編) - Qiita

SIMDの組み込み関数のことはじめ - koturnの日記

 

 まぁ、要は変数とかが違うだけで演算内容が同じものをひとまとめにしようという物らしい。

例えば以下のような話らしい。実行できないし厳密には違うかもしれないけど


	float a, b, c;
	a += 10;
	b += 10;
	c += 10;
	
	↓
	
	struct ABC
	{
		float a, b, c;
	};

	ABC abc;
	abc += 10;  // これで上記の三つの演算を一つの演算式にっていう話

 

 

 少し調べてみるとインラインアセンブラやらレジスタやらややこしそうなので実際にやってみはしませんが、考え方だけでも覚えといて損はないんじゃなかろうか。