タグ

ブックマーク / shinh.hatenablog.com (3)

  • PEP 703 - 兼雑記

    https://peps.python.org/pep-0703/ Python の GIL 外す話。これすごく楽しい読みものでした。参照カウントのところが一番人気だと思うのですが、他のところも色々良い。こういう、「んーこういうことするとこういう問題が起きない?」と思ったら次の章くらいでそれが説明される、みたいな読みものは大変好きです 参照カウント: オブジェクトっていうのは作ったスレッドが解放するというのがほとんどなんだから、その場合はロックをいらなくする、他に渡ったら普通の参照カウントぽくする、という話。 Swift に 2018 年に導入された 話らしい。他のスレッドに渡された後で DECREF すると他スレッド用の参照カウントが負になりうるのだけど、その時に queue に入れるということをして、ややこしいので、なんかこれ無しですむ方法はないのかなぁ……と Immortalize

    PEP 703 - 兼雑記
    xiangze
    xiangze 2023/09/02
  • ONNX はチューリング完全だよ、という話 - 兼雑記

    シクシク素数列 Advent Calendar 2018 向けです。 ONNX はニューラルネットのモデルをエクスポートして、別の実装でインポートできたりする、相互運用のためのフォーマットです。複雑なモデルをサポートできるようにと、 Loop とか If とかがあるので、チューリング完全です。ただまあ実際にえぐい使われ方してる例は見たことがなかったので、やってみました。 https://github.com/shinh/test/blob/master/onnx_gen_4949_prime.py が、4か9を含む素数を出力する ONNX モデルを出力するプログラムで、 $ wget https://raw.githubusercontent.com/shinh/test/master/onnx_gen_4949_prime.py $ wget https://raw.githubuser

    ONNX はチューリング完全だよ、という話 - 兼雑記
  • 2006-08-29

    http://d.hatena.ne.jp/yupo5656/20060828/p1 素敵なのでマネしてみます。 色々常識が足りないけど、一応 main は呼んであげる。 main; __attribute__((constructor, destructor)) static x() { if (main) puts("world!"); else puts("hello", main = 195); }実行時に急造された上に world 起き場になる main。 main[30]; __attribute__((constructor)) static x() { if (main[0]) { main[0] = 0x6c726f77; main[1] = 0x0a2164; __asm__("movl $1, %%ebx \n" "movl %0, %%ecx \n" "movl $

    2006-08-29
  • 1