Xbyak 6.67
CMPccXADD対応
void CMPccXADD(T *dst, T& reg1, T reg2) { // atomic T tmp1 = *dst; T tmp2 = tmp1 + reg2; EFLAGS = cmp(tmp1, reg1); *dst = cond ? tmp2 : tmp1; reg1 = tmp1; }
32bit modeには無い.
Xbyak 6.67
CMPccXADD対応
void CMPccXADD(T *dst, T& reg1, T reg2) { // atomic T tmp1 = *dst; T tmp2 = tmp1 + reg2; EFLAGS = cmp(tmp1, reg1); *dst = cond ? tmp2 : tmp1; reg1 = tmp1; }
32bit modeには無い.
memory sanitizer
strlen(std::string("abc").c_str())でfalse positiveが出るのは駄目だろう. 2日ほど調べただけで3個も見つかった.
今年3回目の出社
前回は9月28日. U22プログラミングコンテスト懇親会参加. なかなかするどい質問が.
鹿
鹿って夜中も普通に活動してるんだな. 近くを通るのはちょっと怖い.
うどん
久しぶりに外でうどんを食べた. 何年ぶりだろう. おいしかった.
Xbyak 6.66
RAO-INT(aadd, aand, aor, axor)対応. aadd mem, regでmem += regをatomicにする. lock prefixによるatomic操作相当をするが弱いメモリ一貫性らしい. lock prefixはバスを止めるけどそれはしない代わりに必要に応じてfence命令を使う必要があるそうな.
ノートPC不調
タッチパッドのクリックが効かなくなったり, 電源ボタン押してもサスペンドしなかったり. まだ購入して1年だけど外れだったかな. Windows 11のメニューのショートカットキーが表示されるときとされないときがあるのもよく分からない. これはWindowsのバグか.
ノーシンピュア
最近飲んでなかったので週末作業してみたら頭痛が出て飲むはめに. やっぱり休めないと駄目だな.
Xbyakでx32
x32対応のissueが上がっていたので試したことなかったから確認してみた. x64モードで動かしたら概ねそのまま動くようだ. へえ. テストで1箇所sizeof(void*)=8を仮定していたところを修正する.
最近niftyのメールトラブル多すぎ. そしてサポートページに全然情報が出ない.
CKKS
Pythonでサンプルコードを書きながら勉強. 細かいパラメータはあれだけど, とりあえずそれっぽく動くようになった.
Shift-F10
Windows 11でエクスプローラで従来のメニューを出すにはShift-F10らしい. トラックボールの設定で右クリックの隣のボタンをそれにした.
Galaxy Tab S8 Ultra
家にあったAndroidタブレットが古くなったので購入した. パソコンから外部ディスプレイとしてつないでペンを使うと便利そう.
『房総グランオテル』(越谷オサム)
前半登場人物が暗かったけど, 最後はうまくまとまった. 房総半島は大学生の頃一度青春18切符で回ったなあ. また行ってみたい.
週末開発をしないように頑張ってたら頭痛がかなり減って体調が安定してきた. 月に25錠以上鎮痛剤を飲んでいたって, 体削ってたようなものだな.
ARM64 on Windows/macOS/Linux
今までIntelオンリーを仮定していたけど, 結構細かく考えないといけなくなって大変. 面倒だなあ.
Xbyak_aarch64 on Windows続き
intrin.hをincludeすれば動いた. ドキュメントに書いてほしいとフィードバック. xbyak_aarch64 on ARM64 windowsは一応cmakeで動くようになった.
皆既月食. 見た目とスマホで撮った写真のギャップが大きい. どう見ても三日月なのにスマホだと丸い.
Xbyak_aarch64 on Windows
とりあえず簡単な足し算コードのJITが動いた. x64と違ってARM64はWindowsとLinuxで同じ呼び出し規約なのかな. CPU情報取得周りはOSベッタリなので対応. その前に既存のコードをリファクタリング.
『いろは匂へど』(瀧羽麻子)
再読. 染物屋の性格は気に入らないけど京都に行きたくなる.
Montgomery乗算続き
今までと違う方法をasmで実装したけど現状を超えることは無かった. 残念. ただ512bitだとまだワンチャンある気がする. そのうち試す.
NHK笑わない数学「暗号理論」の会
制作者からコンタクトがあって相談の結果, RSAは暗号化ではなく署名に使うという注釈が入ることになったそうな. お礼にクッキーをいただいた.
届いた. めっちゃ小さくて静か. セットアップ始める. キーボードがUS認識になってしまった. [設定]→[時刻と言語]→[言語と地域]→[日本語 ...]→[言語のオプション]→[キーボードレイアウト]→[レイアウトを変更する]で106/109キーを選択. メニューが深い. reboot時に起動してるのかしてないのか分からなくて何度も強制電源ボタンを押してしまう.
こいつか. ディスプレイを設定する
ディスプレイが USB-C のみに接続されている場合、デバイスをオンにしても UEFI スタートアップ画面の出力は表示されません。 電源ボタンが押された後、ディスプレイが点灯するまでに約 25 秒かかります。
Montgomery乗算
パラメータ変えて試す. Cで実装する限りでは速くならなそう. asmで書いたらどうなのかな. 実装して遅かったら虚しいのでなかなか踏ん切りがつかない.