憂鬱な午後のひととき

5月30日_

xbyak_translator_aarch64

富士通が公開. 力業でAVX→SVEの変換を行う. 面白い.

5月29日_

ango.pdf

ゼミで使ってくださっているところからいくつかフィードバックをいただいたので反映.

5月25日_

floatの指数関数のAVX-512による実装改訂版

vrndscalepsとvscalefpsの組み合わせならfloatのバイナリフォーマット知らなくてもいいんだな.

5月24日_

マスク

1世帯に2枚なんてつまらないことに500億円使うなら, 子供や一人親, ホームレスなどを支援するNPO法人に1000万円x5千箇所配布の方がずっとスムーズに必要な人に配布できたんじゃないか. 本当に無駄なことばかりしてる.

5月23日_

『ミッション:インポッシブル ローグ・ネイション』

ミッションインポッシブルって初めて見た. パロディとかでよく使われるのはこの曲なのか.

5月21日_

fscale

float x, int y;に対してx * 2^yを求める命令. AVX-512用のexp fmath2.hppで使ったらループあたり1clk速くなった(10.6clk/16entry).

5月20日_

SVE用exp

見よう見まねで動くようになってきた(動くだけ). calling convension. zレジスタはz8からz23を使う側が保存する必要あり.
fexpaという命令があるようだ. どうやって使うのかな.

5月19日_

loadn

picotolsで1から15byteのデータをxmmレジスタに高速に読み込む方法をいろいろ調べる. むずかしいな. 結局alignでシフトがよいのかな. これだと入力データが16byte未満のときに前側に境界超えるけど多分ものすごいレアケースなので別途分岐すればよいだろう.

5月18日_

fmath-sve.hpp

AVX-512版expがSVEで書けるようになった. 大分慣れてきた. ただどういうコードが速いのかは全然わからない.

5月17日_

log for SVE

1命令ずつ対応するコードを調べる. マニュアルの読み方が難しくて慣れない.

5月14日_

hash-to-curve-draft-07

対応した. もう変わらないで欲しい.

5月13日_

PDFからpng

今までimagemagickを使っていたけどpdftoppmの方がきれいだった. pdftocairoの方がよりよい(そして遅い)らしいけど自分の用途にはpdftoppmで十分かな.

5月12日_

蛍光灯

2万時間持つはずが1年ちょっとで駄目になる. どうやら本体側が駄目っぽいな.

5月11日_

xbyak_aarch64

aling()がバグっていたのでpull req.

5月10日_

bfloat16

簡単な解説を書いた.

5月9日_

スタンディングディスク

最近座って作業すると頭と肩がどうしようもなく痛くなるので IKEYAのSKARSTA スカルスタというのを購入. 25000円. よくなるといいな.

5月7日_

picotls

@kazuhoさんがsscanfを呼ぶと性能が劣化するという話をしていたので面白そうだから調べてみた. どうやらコードが大きくてfrontendが不安定でちょっとしたことでストールしまくってるようだ. 一部のループをアンロールしたらましになった.

5月5日_

『スノーホワイト』(森川智喜)

なんでも教えてくれる鏡. 最初なんじゃこりゃと思ったら, 後半DEATH NOTEっぽい頭脳戦. なかなか面白かった.

5月1日_

SVEの勉強

faddなどは3オペランドだけどfmaxは2オペランド.

ptrue(p0.s); // データごとに全部処理する
movprfx(dst.s, p0, src1.s);
fmax(dst.s, p0, src2.s);

こんなふうにするのかな. もっとよい方法ある?


御意見は光成滋生<herumi@nifty.com>までお願いします