s390x(systemz)
LinuxONE 登録すると無料で小さい環境を触れる. これでmclの移植作業をする.
s390x(systemz)
LinuxONE 登録すると無料で小さい環境を触れる. これでmclの移植作業をする.
finalExp
GitHub Actionでたまにエラーになることがあって, リロードするとエラーが出たり出なかったり. なんだかよく分からなくてしばらく放置していたのだけど(自分の環境では出ないので), ちゃんと追いかけたら理由が分かった. multiVerifyの中でpublic keyが0だったらエラーにする処理をいれたのだけど, そのときインタフェースの都合でGTの元だけど0にした. それがfinalExpの中に入ってcyclotomicを使った計算の中で逆数演算をするところで駄目なのだった. 0なら0を返すショートカットを入れた.
共同研究
の相談依頼があったので打ち合わせ. ちょっと見てほしいという人はSCIS2021で発表を聞いていた人だった.
s390x
mclをs390xに対応させて欲しいというGitHubのissue. Wikipediaを見ると20年以上前のものらしいので懐古趣味かなと思ったけど64bitマシンらしい. よく調べたらSystem zというIBMのメインフレームらしい. 頼んできた人もIBMの人っぽい. 簡単にできるかなあ.
参考にさせてもらおう.
査読対応
がんばって時間を掛けて読んだけどあまりよいコメントが書けなかった. すいません.
log for SVE
少しずつ実装実験.
富岳AIフレームワーク開発状況に関する報告会
全体像を知らなかったのでなかなか参考になった.
T_zとT_m
ちゃんと把握してなかったので調べた.
movprfx(z0.s, p0, z0.s); // defaultはT_zでT_m設定可 default 04902000 T_z 04902000 T_m 04912000 mov(z0.s, p0, z0.s); // 何を指定しても常にT_m default 05a0c000 T_z 05a0c000 T_m 05a0c000 fadd(z0.s, p0, z1.s); // 何を指定しても常にT_m default 65808000 T_z 65808000 T_m 65808000 ld1w(z0.s, p0, ptr(x1)); // 何を指定しても常にT_z default a540a020 T_z a540a020 T_m a540a020 st1w(z0.s, p0/T_z, ptr(x0)); // 何を指定してもp0(常にT_m) default e540e000 T_z e540e000 T_m e540e000
後でまとめる.
普通の数じゃないfloatの扱い
SVEでどうなってるのか確認するテストを書いた. cmp-test.cpp, 結果 仕様書に書いてあるけどね. SVE命令 後でいろいろ追加する. expaでNaNは無視してよいのかな.
とりあえず書いた. 今週はZoomでのやりとりが目茶苦茶疲れた.