15/11/10 01:00:24.37 DNqpvVaK.net
10進floatよりは2進128ビットの方が使うよな
10進で大量に計算が必要な場面なんてないからライブラリで十分
金融はハードの10進じゃダメだし
826:Socket774
15/11/10 04:05:23.15 +MczIeeU.net
GRAPEで4倍精度をハードウェアで実装したのがあるみたいだね
827:Socket774
15/11/10 04:06:23.75 +MczIeeU.net
四倍精度専用プロセッサGRAPE-MPの性能評価
URLリンク(suchix.kek.jp)
828:Socket774
15/11/10 04:24:15.35 aIY00qzJ.net
金勘定と科学技術計算で、どっちの需要が有望で優先か?と言われたら
悲しいかな、そりゃ金勘定の方だろ?って話に…
829:Socket774
15/11/10 07:05:24.00 DNqpvVaK.net
ライブラリの数やハードの数からしても、10進floatより128ビットfloat
830:Socket774
15/11/10 07:05:24.24 atsjeyXg.net
金勘定は今のハードウェアなら楽にこなせてしまうからハードウェア進化の
ドライビングフォースにはならないって話だよ。
金融工学方面にはいくらでも重い需要があるが
そっちは科学技術計算そのもので、十進とか必要としていない
831:Socket774
15/11/10 07:06:17.74 DNqpvVaK.net
0.24秒差
832:Socket774
15/11/10 07:07:23.00 DNqpvVaK.net
>818
同意
833:Socket774
15/11/10 20:51:40.66 cyLbp+7Y.net
QualcommとXilinx、異種コア混在技術で提携
URLリンク(eetimes.jp)
QualcommとXilinxは2015年11月、戦略的技術提携を行ったと発表した。
両社はそれぞれが得意とする先端のプロセッサとFPGAの技術を持ち寄り、
データセンター用装置に向けたヘテロジニアスコンピューティングソリューションを提供していく計画である。
834:Socket774
15/11/10 23:50:24.23 z2idbkL9.net
積分みたいに誤差が累積する計算を大量にする場合は、高速かつ精度が高いハードがあれば良いよね
一つ一つの誤差が小さくてもそれを何万回、何百万回と繰り返せばどんどん誤差が膨らむだろうし
835:Socket774
15/11/11 00:13:50.8
836:6 ID:kJkeD2zP.net
837:Socket774
15/11/11 01:39:23.06 cStvzHMU.net
現行のAVX・SSEレジスタ流用でFP128の実装はできるけどされてない、
所詮その程度の需要じゃねえかな…需要があるトコは多倍長ライブラリ使ってるし
むしろ単精度で十分なケースのほうが多いから科学演算用のSPARCも設計変更入ったくらいだし
838:Socket774
15/11/11 10:13:03.69 71ccV/O8.net
それどころか80ビットFP×1なら既存の演算ユニット構成ですぐにでもXMMレジスタにマッピングできるのになされていない
839:Socket774
15/11/11 12:49:33.09 JWI2AM0e.net
4倍精度と多倍長は全然用途が違うんだけど
シミュレーション、多段フィルターなんかが4倍精度活躍の場で、多倍長は学問的研究的な分野がほとんど
一般的な用途では倍精度で十分
ソフトによる擬似4倍精度は倍精度の10倍以上時間がかかり、多倍長はさらに10倍以上時間がかか
840:Socket774
15/11/11 12:53:55.20 JWI2AM0e.net
>>824
>>825
遅いとハードの意味が無いからね
ベクタ演算が普通に出来るようにならないと
そのためには非常に多くの回路を使う
需要が無いわけじゃなくて、時代が少し早いって感じ
841:Socket774
15/11/11 17:56:59.35 g5R4cp1Y.net
やっぱりハードで早く処理できた方が良い
842:Socket774
15/11/11 18:07:32.69 kJkeD2zP.net
擬似4倍精度の演算数は倍精度10回ちょっと
AVX512が1クロックでFMAが16個出来るから、スカラーだと全然魅力は無いね
1クロックでFMAが8個出来ると嬉しい
843:Socket774
15/11/11 18:15:19.31 kJkeD2zP.net
4倍精度を使えば多倍長ライブラリもずっと速くなる
超多倍精度だと特に
844:Socket774
15/11/11 18:40:58.77 2FOmo1jI.net
AVX-512はゲームでよく使う単精度4x4行列が1レジスタに収まって積和4命令(+Permute)で行列積が求まる程度にはパンピー向けアプリ用途にも使い道はあるが
拡張倍精度は使い道なさすぎる
その癖倍精度の5倍程度のTr食うんだろう
double-doubleで我慢しろとしか言いようがないわ
845:Socket774
15/11/11 19:14:42.48 JWI2AM0e.net
>>831
ベクタを生かさない使い方だな
サイズが増えるたびに大変更
846:824
15/11/11 19:32:50.16 2FOmo1jI.net
>>832
ん?レジスタ32本あるからSoAで16個まとめて処理とかやりようはあるぜ?
科学技術演算なんて超マイノリティ分野なんだからそんなもんが消費者用途より優先されるわけないだろ。
847:825
15/11/11 19:33:21.14 2FOmo1jI.net
名前欄間違った
848:Socket774
15/11/11 21:19:12.98 JWI2AM0e.net
>>833
>>831はどうみてもSoAには見えないけど
ベクタを腐らす最悪な実装
849:825
15/11/11 21:21:13.92 iwxnkUp8.net
アホ
825がSoAだなんて微塵も言ってねーよ
850:,,・´∀`・,,)っ-○○○
15/11/11 21:22:15.42 xuARksy+.net
> シミュレーション、多段フィルター
それがパソコン用途でどう役立つのか教えてください
851:,,・´∀`・,,)っ-○○○
15/11/11 21:42:51.85 xuARksy+.net
vpermilps zmm3, zmm2, 0x00
vpermilps zmm4, zmm2, 0x55
vpermilps zmm5, zmm2, 0xAA
vpermilps zmm6, zmm2, 0xFF
vmulps zmm0, zmm1, zmm3
vfmadd231ps zmm0, zmm1, zmm4
vfmadd231ps zmm0, zmm1, zmm5
vfmadd231ps zmm0, zmm1, zmm6
KNC-NI→AVX-512でswizzleがなくなったから8命令かかるんだよね
852:Socket774
15/11/11 21:58:15.78 kJkeD2zP.net
>>836
じゃあアンカーの間違いか?
>>831のあまりに糞な実装を指摘しただけで、他にいい方法が有るのは当たり前
853:,,・´∀`・,,)っ-○○○
15/11/11 22:01:58.13 xuARksy+.net
>>839
>>838の実装のどこかおかしいところある?
854:,,・´∀`・,,)っ-○○○
15/11/11 22:05:59.02 xuARksy+.net
ど こ が ク ソ で す か 教 え て く だ さ い
855:Socket774
15/11/11 22:08:51.52 kJkeD2zP.net
SoAじゃないところ
どうしてもSoAに出来ないならしょうがないけど、AVX513の使い道の例としては最悪
856:Socket774
15/11/11 22:09:25.84 kJkeD2zP.net
513
1個ずれた
857:825
15/11/11 22:09:34.81 xuARksy+.net
KNCもHaswellもgatherのコストがかかりすぎるからAoSへのリパックは常に最適じゃないんだよ
858:,,・´∀`・,,)っ-○○○
15/11/11 22:11:27.56 xuARksy+.net
> シミュレーション、多段フィルター
パソコン用途で4倍精度の需要を喚起するにはあまりにお粗末
859:825
15/11/11 22:12:01.29 HH+wJiHf.net
おいwww
860:,,・´∀`・,,)っ-○○○
15/11/11 22:16:08.30 xuARksy+.net
>>842
KNCやHaswellを触ったことがない残念な人なんだね君は
GatherやScatter操作にかかるクロック数わかる?4x4行列を16個リパックして戻してみ?
とてもペイできないよ。
861:Socket774
15/11/11 22:18:02.02 kJkeD2zP.net
SoAの意味をわかってない典型か
862:,,・´∀`・,,)っ-○○○
15/11/11 22:18:52.08 xuARksy+.net
行列はそれ自体がArrayだと思うのですが
863:,,・´∀`・,,)っ-○○○
15/11/11 22:19:58.20 xuARksy+.net
ID:kJkeD2zPがAVX-512の正しい使い方を披露してくれるそうですよ!
披露できなかったら二度と生意気こくなよ低学歴くん
864:Socket774
15/11/11 22:21:57.20 kJkeD2zP.net
まさしく>>848
865:,,・´∀`・,,)っ-○○○
15/11/11 22:22:50.06 xuARksy+.net
正しい使い方を披露してくれるそうですよ
866:Socket774
15/11/11 22:25:12.74 kJkeD2zP.net
ここで無料でSoAの説明をするほどヒマじゃないし調べりゃいくらでも出てくるから勝手に調べな
ド素人www
867:Socket774
15/11/11 22:27:10.95 kJkeD2zP.net
倍精度演算器1024個とかのベクトルコンピューターがどういうふうに行列の演算をやってたか考えたこと無いのかな?
868:Socket774
15/11/11 22:28:05.78 kJkeD2zP.net
ド素人www
869:,,・´∀`・,,)っ-○○○
15/11/11 22:28:19.04 xuARksy+.net
これは実測してみればすぐわかる話なんだけど複数の4x4行列を処理するにも
>>838のコードをインターリーブしてレイテンシ埋めたほうが
リパックするより高速なんだわ。だってgather/scatter遅いもん。
3x3行列で表現した頂点座標に同じ回転・拡大をかけるとかならまだわかるんだが
それですらリパックのコストは見合わない
870:Socket774
15/11/11 22:28:57.10 kJkeD2zP.net
リパックwww
871:,,・´∀`・,,)っ-○○○
15/11/11 22:29:25.78 xuARksy+.net
ID:kJkeD2zP はコード1本も書けない低学歴無職のハッタリ師。相手にする価値もない。
872:Socket774
15/11/11 22:30:47.81 kJkeD2zP.net
煽れば教えてもらえると思うクセ良くないな
873:Socket774
15/11/11 22:31:14.50 kJkeD2zP.net
自分で勉強しろwww
874:,,・´∀`・,,)っ-○○○
15/11/11 22:32:36.02 xuARksy+.net
生産的な議論ができない無能なゴミのレスは読む価値がないのでNGにしときましたよ
とりあえず4倍精度なんて要らない
875:Socket774
15/11/11 22:33:58.35 GdDyAlIj.net
phiって両方使えるんじゃないの
URLリンク(www.isus.jp)
876:,,・´∀`・,,)っ-○○○
15/11/11 22:37:31.19 xuARksy+.net
gather/scatterが遅いんですよ
データ構造の変換コストのほうが演算本体よりかかる場合は無理に変換しないほうが速い
むしろそれがGPUに対する利点なの
877:Socket774
15/11/11 22:49:24.06 GdDyAlIj.net
なる
878:Socket774
15/11/11 23:31:33.67 uQKtFSsm.net
gather/scatter遅いのか・・・。
使わんとこ。
879:,,・´∀`・,,)っ-○○○
15/11/11 23:54:35.66 xuARksy+.net
現役の似鳥さんあたりがKNCの特性について判りやすいレポート書いてるんだからしっかり読んで勉強すべきですよ
4倍精度おじさんみたいな老害になってはいけない
880:Socket774
15/11/12 00:14:25.85 VpxuNMeo.net
アセンブラなんて普通は使わないだろ。コンパイラの最適化でできるし
881:,,・´∀`・,,)っ-○○○
15/11/12 00:20:49.69 AaDT/dG0.net
KNC-NIやAVX-512のIntri
882:nsics名前が長いじゃん F32vec16とかいう妙に使いにくいクラスでいいならそっちでもいいが
883:Socket774
15/11/12 00:39:13.14 VpxuNMeo.net
Xeon phi は最適化が難しいらしいな
884:Socket774
15/11/12 07:02:26.00 bxYNS2o6.net
団子の自演ひどいな
885:Socket774
15/11/12 07:05:32.51 bxYNS2o6.net
vpermilps
千分率の計算ですか?
www
886:Socket774
15/11/12 07:07:19.20 bxYNS2o6.net
団子はアセンブラなんか使わないって熱く語ってなかった???
887:Socket774
15/11/12 07:09:28.01 bxYNS2o6.net
SoAの意味を知らない団子
843 :,,・´∀`・,,)っ-○○○ [sage] :2015/11/11(水) 22:18:52.08 ID:xuARksy+
行列はそれ自体がArrayだと思うのですが
888:Socket774
15/11/12 07:11:18.37 bxYNS2o6.net
857 :,,・´∀`・,,)っ-○○○ [sage] :2015/11/11(水) 22:37:31.19 ID:xuARksy+
gather/scatterが遅いんですよ
データ構造の変換コストのほうが演算本体よりかかる場合は無理に変換しないほうが速い
むしろそれがGPUに対する利点なの
889:Socket774
15/11/12 07:12:29.00 bxYNS2o6.net
リパックして戻すって発想がwww
890:Socket774
15/11/12 07:16:05.78 v8JoB6Ab.net
x,y,zをばらしてxxxxで処理したら
またx,y,zにもどさんと意味ないだろ
891:Socket774
15/11/12 07:28:06.16 bxYNS2o6.net
848 :Socket774 [sage] :2015/11/11(水) 22:27:10.95 ID:kJkeD2zP
倍精度演算器1024個とかのベクトルコンピューターがどういうふうに行列の演算をやってたか考えたこと無いのかな?
892:,,・´∀`・,,)っ-○○○
15/11/12 08:15:21.73 AaDT/dG0.net
なにこの酷い三流
865 :Socket774 [↓] :2015/11/12(木) 07:05:32.51 ID:bxYNS2o6 (2/7)
vpermilps
千分率の計算ですか?
www
URLリンク(www.xlsoft.com)
893:,,・´∀`・,,)っ-○○○
15/11/12 08:15:57.23 AaDT/dG0.net
三流以前の問題だな、にんげんですらない
おさるさん
894:,,・´∀`・,,)っ-○○○
15/11/12 08:25:05.70 AaDT/dG0.net
Google検索すれば命令が何を意味するかくらいわかるだろうに
こんな程度の低い生物になんで4倍精度(笑)が必要なんですかね
895:Socket774
15/11/12 08:46:29.44 HdjMAx/P.net
最適化はハード毎にクセがあるよ、コンパイラが勝手にしてくれると楽だけど、今のところそう簡単ではない
896:Socket774
15/11/12 12:43:13.80 ikwluOfb.net
>>839
何のプログラム?
一見行列の掛け算かと思ったけど違うみたい
897:Socket774
15/11/12 12:48:28.04 ikwluOfb.net
>>838
のプログラムでした
898:Socket774
15/11/12 13:26:18.30 GN4S99Hi.net
いや行列積だとわからない奴は議論に参加する資格すらないだろ
899:Socket774
15/11/12 13:35:40.12 31CVW1v7.net
vmulps zmm0, zmm1, zmm2{aaaa}
vfmadd231ps zmm0, zmm1, zmm2{bbbb}
vfmadd231ps zmm0, zmm1, zmm2{cccc}
vfmadd231ps zmm0, zmm1, zmm2{dddd}
KNCだとこうかな?
レジスタオペランドに限ってin-laneのswizzleを1命令でできる。
その分同時命令発行数が少ないから他と比べて有利ということではない
900:Socket774
15/11/12 16:30:52.13 y0lKO9A9.net
最近行列積の定義が変わったんですか?
901:Socket774
15/11/12 16:56:22.31 F3LnFQPD.net
かわってないけど
わかってない奴がいるだけ
902:,,・´∀`・,,)っ-○○○
15/11/12 20:26:46.25 /mQ83u9A.net
命令セットマニュアルもシミュレータ(SDE)もあるのに理解できない奴なんなの?ばかなの?
903:Socket774
15/11/12 20:44:16.89 y0lKO9A9.net
4x4の行列同士で合ってますか?
単位行列は
1000 0100 0010 0001 の並びですか?
zmm1=1000 0100 0010 0001
zmm2=1111 0000 0000 0000
のとき、
zmm0 は何に成りますか?
904:,,・´∀`・,,)っ-○○○
15/11/12 20:54:34.56 /mQ83u9A.net
そのくらい試せば?
905:Socket774
15/11/12 21:05:29.51 y0lKO9A9.net
4x4の行列同士で合ってますか?
単位行列は
1000 0100 0010 0001 の並びですか?
906:Socket774
15/11/12 21:11:54.60 y0lKO9A9.net
>>891 が正しければ
zmm0=1111 0000 0000 0000
になるはずだとおもうのですが、
どうやってもなりません
>>891 が正しくないか、積の定義が変わったか、実はAVX512ではないのか、私の頭がおかしいか、
どれでしょう?
907:Socket774
15/11/12 21:15:01.27 y0lKO9A9.net
zmm0はzmm1*zmm[3-6]の和なので、zmm1がゼロの部分はzmm0もゼロにしかならないですよね?
908:,,・´∀`・,,)っ-○○○
15/11/12 21:48:24.84 /mQ83u9A.net
プッ
909:Socket774
15/11/12 21:54:08.51 y0lKO9A9.net
832 :,,・´∀`・,,)っ-○○○ [sage] :2015/11/11(水) 21:42:51.85 ID:xuARksy+
vpermilps zmm3, zmm2, 0x00
vpermilps zmm4, zmm2, 0x55
vpermilps zmm5, zmm2, 0xAA
vpermilps zmm6, zmm2, 0xFF
vmulps zmm0, zmm1, zmm3
vfmadd231ps zmm0, zmm1, zmm4
vfmadd231ps zmm0, zmm1, zmm5
vfmadd231ps zmm0, zmm1, zmm6
KNC-NI→AVX-512でswizzleがなくなったから8命令かかるんだよね
910:Socket774
15/11/12 21:54:37.59 y0lKO9A9.net
解説宜しくお願い致します
911:Socket774
15/11/12 21:58:38.11 a3EhSCZK.net
解脱宜しくお願い致します
912:,,・´∀`・,,)っ-○○○
15/11/12 22:22:18.73 /mQ83u9A.net
おま環って言葉知ってる?
もしかして: レジスタにちゃんと値セットしたつもりになってるだけ
913:Socket774
15/11/12 22:26:08.44 j6CT7BPS.net
成仏乙
914:,,・´∀`・,,)っ-○○○
15/11/12 22:54:56.10 /mQ83u9A.net
まあそもそも別にソースのraw, columnの向きが一致してるとも言ってないからねー
(別にvpermt2dとか使えばオンレジスタで転置行列に変換できるし同じキャッシュライン内ならgatherのコストはそれほど高くない)
915:Socket774
15/11/12 23:04:01.94 y0lKO9A9.net
>>900
並び順がどうであっても、普通の行列の掛け算にはならないようです
916:,,・´∀`・,,)っ-○○○
15/11/12 23:05:56.38 /mQ83u9A.net
lol
917:Socket774
15/11/12 23:06:09.90 y0lKO9A9.net
>>884
>>885
>>887
は自演ですね?
918:,,・´∀`・,,)っ-○○○
15/11/12 23:08:51.86 /mQ83u9A.net
は?
919:Socket774
15/11/12 23:22:14.32 y0lKO9A9.net
解説宜しくお願いします
rawの意味も
920:Socket774
15/11/12 23:36:25.60 y0lKO9A9.net
>>900
vpermt2dじゃなくてvpermpsでは?
921:Socket774
15/11/12 23:38:37.97 bxYNS2o6.net
ダンゴが行列積を知らないとは
922:Socket774
15/11/12 23:43:32.01 bxYNS2o6.net
SoAを知らない団子
行列積を知らない団子
金融を知らない団子
自演する団子
高卒の団子
923:Socket774
15/11/12 23:44:43.57 bxYNS2o6.net
行列積は高校で習うから中卒か
924:,,・´∀`・,,)っ-○○○
15/11/12 23:46:27.22 /mQ83u9A.net
別に整数のpermute命令で困る理由もないけどな。発行ユニットが違うわけでもあるまいし。
まあ1レジスタに収まるデータなら1ソース命令で十分だが。
925:,,・´∀`・,,)っ-○○○
15/11/12 23:47:31.85 /mQ83u9A.net
rowのtypoにまで突っ込まないといかんかね
926:Socket774
15/11/12 23:50:15.53 bxYNS2o6.net
>>838
レイテンシーって考えたこと無いの?www
レイテンシー的には最悪なコードだよね?www
命令数を数えても意味ないんだけどwww
SoAじゃない単発演算としても酷過ぎるwww
そもそも何の計算だかまったく意味不明だけどwww
927:Socket774
15/11/12 23:53:07.85 y0lKO9A9.net
>>910
整数ならvpermdですが
928:Socket774
15/11/12 23:55:03.69 bxYNS2o6.net
>>910
PORTを気にするのにレイテンシーを気にしない
変な人www
929:,,・´∀`・,,)っ-○○○
15/11/13 00:00:02.00 5M6W+M2/.net
で?vpermt2dで困る理由は?
930:Socket774
15/11/13 00:05:05.26 0DAmdhs9.net
命令に詳しくないんだなってだけ
931:Socket774
15/11/13 00:05:33.66 0DAmdhs9.net
>>838の解説宜しく
932:Socket774
15/11/13 00:06:30.52 0DAmdhs9.net
>>885も
933:,,・´∀`・,,)っ-○○○
15/11/13 00:08:09.28 5M6W+M2/.net
> 命令に詳しくないんだなってだけ
2つめのソースに0とか1とかの定数を入れておけば上位互換命令として使えるだろ
altivecとかCellでも常套手段だったはずだが。お前詳しくないんだな
934:Socket774
15/11/13 00:15:54.84 0DAmdhs9.net
じゃあそれ使って行列積を計算してみなwww
935:Socket774
15/11/13 00:20:38.96 0DAmdhs9.net
困る理由はいろいろある
積の計算が出来たら教えてやる
936:,,・´∀`・,,)っ-○○○
15/11/13 00:34:08.65 5M6W+M2/.net
865 :Socket774 [↓] :2015/11/12(木) 07:05:32.51 ID:bxYNS2o6 (2/7)
vpermilps
千分率の計算ですか?
www
937:,,・´∀`・,,)っ-○○○
15/11/13 00:44:17.62 5M6W+M2/.net
まあ、A×BとB×Aを間違えてるアホは手に負えませんが
938:,,・´∀`・,,)っ-○○○
15/11/13 00:48:10.56 5M6W+M2/.net
↑腐女子的な意味じゃないぞ
939:Socket774
15/11/13 03:53:44.91 q17k9Mix.net
>>867
Linuxカーネルとか基本ライブラリに、それなりにアセンブラやら、
特定アーキテクチャがターゲットの特殊なCコードが使われてることから、
高速化するには汎用Cコードだけじゃダメなんでしょう
940:Socket774
15/11/13 06:47:44.69 TwinPJod.net
結局、>>838は何のプログラム?
941:Socket774
15/11/13 06:51:24.48 TwinPJod.net
団子の自演が決定的になったわけだけど
昔から?
942:,,・´∀`・,,)っ-○○○
15/11/13 07:56:09.77 5M6W+M2/.net
ID:ツインピージョドはアホですか?
943:Socket774
15/11/13 07:59:18.31 TwinPJod.net
5MBで6WのM.2使いのアホさほどじゃない
944:,,・´∀`・,,)っ-○○○
15/11/13 07:59:37.66 5M6W+M2/.net
>>926
千分率(笑)を4回求めるプログラムなんじゃない?
その環境、偽物だよ
945:Socket774
15/11/13 08:01:09.56 TwinPJod.net
環境www
行列を知らない団子www
946:Socket774
15/11/13 08:02:51.88 TwinPJod.net
SoAを知らない団子
最適化はコンパイラ任せの団子
947:Socket774
15/11/13 08:04:52.92 TwinPJod.net
今回はひどすぎる
普通の人ならコテやめるレベル
948:,,・´∀`・,,)っ-○○○
15/11/13 08:13:24.47 5M6W+M2/.net
実行結果を全部貼ってみな?
もしかして?:そもそも実行してない
949:,,・´∀`・,,)っ-○○○
15/11/13 08:18:35.18 5M6W+M2/.net
まさかイチャモンつければお前の主張飲むとでも思ったの?
実行結果貼ってみろよwwww
950:Socket774
15/11/13 08:20:06.90 TwinPJod.net
行列を知らない団子www
951:,,・´∀`・,,)っ-○○○
15/11/13 08:21:33.63 5M6W+M2/.net
そもそも実行してない
952:,,・´∀`・,,)っ-○○○
15/11/13 08:22:29.67 5M6W+M2/.net
ソースコードと実行結果はpastebinとかでもいいよ
953:Socket774
15/11/13 08:24:16.14 TwinPJod.net
行列乗算の新しい定義を学会で発表?
954:Socket774
15/11/13 08:25:24.22 TwinPJod.net
>>838はどう解釈しても行列の乗算じゃない
955:Socket774
15/11/13 08:32:34.13 TwinPJod.net
並び順とか積の順番とかそういう話じゃない
積の演算の一部にもなってない
1*1の行列の積を足したもの
っていう屁理屈を使わないと無料
956:Socket774
15/11/13 08:34:27.92 TwinPJod.net
積の定義もいろいろあるけど、それらのどれとも違う
957:Socket774
15/11/13 08:41:52.08 odt1Jedu.net
AVXレジスタに行列ひとつが丸ごと入るようになったのだから行列積や正規化の計算がマイクロコードでいいから1命令でできるようになるといいね。
958:Socket774
15/11/13 09:13:17.26 bHSwfq4M.net
内積ですか外積ですか
959:,,・´∀`・,,)っ-○○○
15/11/13 12:05:11.38 64wEE4oR.net
それだけで完全に動くコードではないという指摘なら確かに正しい
だがロード・ストア命令が抜けてるのはちゃんと理解できてる人にはわかってるはずだからね
vmovaps zmm2, [a]
vpermilps zmm3, zmm2, 0x00
vpermilps zmm4, zmm2, 0x55
vpermilps zmm5, zmm2, 0xAA
vpermilps zmm6, zmm2, 0xFF
vbroadcastf128 zmm1, [b] ; そもそもの話
vmulps zmm0, zmm1, zmm3
vbroadcastf128 zmm1, [b+16] ; zmm1の値が
vfmadd231ps zmm0, zmm1, zmm4
vbroadcastf128 zmm1, [b+32] ; ずっと固定とは
vmadd231ps zmm0, zmm1, zmm5
vbroadcastf128 zmm1, [b+48] ; 言ってないしね
vmadd231ps zmm0, zmm1, zmm6
vmovaps [d], zmm0
↑これすら動作チェックしてないのでおかしいところがあれば指摘してくれw
複数行列に同じ行列掛ける場合なら最初から4レジスタに展開したほうがいいというのであればそれには同意するが
vpermilps=千分率(笑)
960:,,・´∀`・,,)っ-○○○
15/11/13 12:11:52.07 64wEE4oR.net
KNCからAVX512でswizzleに加えインラインの4to16ブロードキャストモードまでなくなったことが地味に痛いとこだがロードとシャッフルと積和が並列動作するなら問題ないでしょう
961:Socket774
15/11/13 12:18:43.58 E1zyPduB.net
ワロタ
zmm1をbroadcastしてないことにようやく気づいたか
さすがにこれは恥ずかしいよ団子さん
962:Socket774
15/11/13 12:33:39.28 TwinPJod.net
そもそもの話zmm1の値がずっと固定とは言ってないしね
wwwwww
痛すぎる
wwwwww
963:,,・´∀`・,,)っ-○○○
15/11/13 12:35:22.29 64wEE4oR.net
マイクロコードでの内積実装といえばdppsとかいう半ば失敗作のものがあるよ
等価なコードをソフト実装したほうがパイプライン乱さないから速い
964:Socket774
15/11/13 12:36:23.43 TwinPJod.net
コード的には糞過ぎて全く使い物にならない
wwwww
コンパイラに最適化を任せてるようなヤツのコードはこの程度か
wwwww
965:,,・´∀`・,,)っ-○○○
15/11/13 12:41:01.76 64wEE4oR.net
どのみち積和間のレイテンシはなにかしらのコードをインターリーブして埋める必要はあるしKNLもSKXもOoOEのコアだから同じレジスタ使い回しでいいはず
千分率(爆笑)
966:Socket774
15/11/13 12:47:29.26 TwinPJod.net
ビルドすら通らないし
967:Socket774
15/11/13 12:49:58.27 TwinPJod.net
PORTスカスカでレジスタ7個も使って
酷すぎる
968:Socket774
15/11/13 12:52:56.47 E1zyPduB.net
URLリンク(gcc.gnu.org)
Samsungの独自設計コアのモデルらしいが、パイプラインの構成はA57にそっくり
+;; 1. Two pipelines for simple integer operations: A, B
+;; 2. One pipeline for simple or complex integer operations: C
+;; 3. Two asymmetric pipelines for Neon and FP operations: F0, F1
+;; 4. One pipeline for branch operations: BX
+;; 5. One AGU for loads: L
+;; One AGU for stores and one pipeline for stores: S, SD
969:Socket774
15/11/13 12:54:54.39 TwinPJod.net
話の元は>>831だが、その>>831がそもそも酷すぎる
970:Socket774
15/11/13 17:18:23.81 5hQWtHn8.net
A9Xはえええ
URLリンク(cdn.arstechnica.net)
URLリンク(cdn.arstechnica.net)
クアッド化したらモバイルi7を余裕で倒せる
971:Socket774
15/11/13 18:11:32.97 3clVKT/k.net
Appleの設計もさることながら
ファウンドリの14/16nmの性能がかなり良いんだろうね
Intelのプロセスのアドバンテージは密度ぐらいしか無くなったのかも
972:Socket774
15/11/13 20:21:50.15 nWWSVMY7t
>>956
imac純正cpu待ったなし
973:Socket774
15/11/13 20:36:31.73 ScWBVz52.net
微細化するほど熱くなり、
ダークシコリンで使わない場所を増やしてるというのに、
この先微細化なんて意味あるのかね?
974:過去ログ ★
[過去ログ]
■ このスレッドは過去ログ倉庫に格納されています