/* * 超適当なSIMD講座 * * ページ作って更新しないってwww * とりあえず開発環境はgcc(cygwinもOK)のinline。 * とりあえずコピペで使えるレベルにしておく。 */ /* * 32bit OSで使えるレジスタはxmm0~7の8本。 * 64bit OSで使えるレジスタはxmm0~15の16本。 * * SSEで使える変数型は1レジスタあたり * short(2byte/16bit integer) * 8 * long (4byte/32bit integer) * 4 * float(4byte/32bit real) * 4 * double(8byte/64bit real) * 2 * * こんなもん。一番おいしいのはshortなんだが計算精度低すぎてワロタwww * お勧めはfloatかな? * * あと普通にFPU使っているときは計算精度80bitで処理する。 * SIMDの有無で計算結果違うから気をつけろ!! * */ float inData [4] __attribute__((aligned(16))); float inData2[4] __attribute__((aligned(16))); /* 上のは16byte alignedになるようによろしく、って意味。 * mallocもそうしたい?それ無理w * そんなときは多めに確保して、おいしいところだけ使う。 * data_=malloc(sizeof(int)*(1000+15)); * data = ((unsigned int)data + 15) % 16; * : * free(data_); */ float outData[4]; int main() { inData[0] = 10.0; inData[1] = 20.0; inData[2] = 30.0; inData[3] = 40.0; inData2[0] = 1.0; inData2[1] = 2.0; inData2[2] = 3.0; inData2[3] = 4.0; __asm__( "MOVDQA _inData, %xmm0 \n\t" /* Alignedされている領域からmoveる。 */ "MOVDQA _inData2, %xmm1 \n\t" /* 見て分かるとおり、SRC,DSTの順番ね */ "MULPS %xmm0, %xmm1 \n\t" /* 掛け算(MUL)、%xmm0(SRC)を、%xmm1(DSTに) */ "MOVDQU %xmm1, _outData \n\t" /* Alignedされてない領域弄るにはUで。 */ ); printf("%lf,%lf,%lf,%lf",outData[0],outData[1],outData[2],outData[3]); } /* * MOVDQAはalignedされている領域にしかアクセスできないけど早い(SSE2) * MOVDQUはalignedされていなくてもアクセスできるけど遅い(SSE2) * LDDQUはalignedされていなくてもアクセスできるし遅くない。でも早くもない(SSE3) */ /* * 詳しくはhttp://www.icnet.ne.jp/~nsystem/simd_tobira/index.htmlで。 * * ATOMでもSSE3までだから、まあSSE4だの5だのは当分要らないでしょ。 * * でも、一番早いのはintel compiler買って使うことだからwww */
昨日アクセスの多かった掲示板スレッドランキングです。話題のスレッドを見に行こう!
- 三色鵺 ボカロ仲間で雑談15 - 初音ミクwiki掲示板wiki
- wiki民連絡用スレ - 初音ミクwiki掲示板wiki
- 【遂に夏季休暇】リクエストの絵を描く! - 初音ミクwiki掲示板wiki
- 雑談&お絵描き byヌ - 初音ミクwiki掲示板wiki
- ボカロなりきりTRPG スレ by.ung - 初音ミクwiki掲示板wiki
- スレの人達の紹介文をみんなで書く - 初音ミク Wiki
- 田中MIDさん覚醒について - ポーランドボーラーwiki
- もしもここの住民が同じ学校の生徒だったら?拾 - 初音ミクwiki掲示板wiki
- 雑ダンダn((殴「雑談」 - りふぬとみんなのプロゼミ@wiki☆
- ポケモン仲間いる〜? - 初音ミクwiki掲示板wiki
急上昇Wikiランキング
急上昇中のWikiランキングです。今注目を集めている話題をチェックしてみよう!
最近作成されたWikiのアクセスランキングです。見るだけでなく加筆してみよう!
atwikiでよく見られているWikiのランキングです。新しい情報を発見してみよう!
最近アクセスの多かったページランキングです。話題のページを見に行こう!
- わっぴー - YAJU&Uコメ欄Wiki_再
- SHIRAHA - ストグラ まとめ @ウィキ
- ∫エクストリームガンダム - 機動戦士ガンダム EXTREME VS.2 INFINITEBOOST wiki
- 三階堂 キミトス - ストグラ まとめ @ウィキ
- ∫エクストリームガンダム/∫エクストリーム-XV. - 機動戦士ガンダム EXTREME VS.2 INFINITEBOOST wiki
- 岐阜野 こみ蔵 - ストグラ まとめ @ウィキ
- アドミゲス・ハン - ストグラ まとめ @ウィキ
- hantasma - ストグラ まとめ @ウィキ
- ∫エクストリームガンダム/∫エクストリーム - 機動戦士ガンダム EXTREME VS.2 INFINITEBOOST wiki
- 参加者一覧 - ストグラ まとめ @ウィキ