情報科学若手の会2日目日記

2階の窓からみた露天風呂。アクセス修飾子はpublic。

FPGA囲碁専用H/Wを作る話。CrazyStone 4コア5万プレイアウトで1sec。FPGAは300MHzくらいなので秒感1万回とかを目指す。FPGAは小さいのでたくさん積むことが出来る。

CPLD FPGA

ASIC > (FPGA/CPLD/DRP) > MPU 汎用性

FPGA80386と同じ時代に生まれたが、開発ツールの整備が進まなかったので普及が遅れた。

LUT(Look Up Table)がたくさんある。

entity HALF_ADDER is
  port (A, B: in std_logic;
        S, C: out std_logic)...

専用H/Wははまるアルゴリズムなら速いがPentiumも色々すごいので。。コンパイラの最適化もすごい。データ並列、パイプライン並列がはまる。

19x19のループでも並列にデータ依存がなければ並列で計算できるので怖くない。レジスタに512bit取ったりできる。連の情報とかで441bitとかでも1つのレジスタに収まる。

MoGo http://www.lri.fr/~gelly/MoGo_Download.htm

最中限の専用H/W作ったら速いかなぁ。データ依存がないから並列で計算できるよなぁ

      • -

VMM(virtual machime moniter)
Pentiumには仮想化に向かない命令がいくつかある。しかたがないのでVMMが動的にOSを書き換えて実行したりしている。Intel Virtualization Technologyをつかうとよい。とても楽になる。
いままでは仮想化要求仕様を満たしていなかったのでやりにくかった。

VM exitってのが起きると処理がVMからVMMに移る。このときに何がその引き金を引いたかを今まではバイナリを解析して判断しないと行けなかったのが、情報を簡単に取れるようになったりとか。

VMCS(Virtual machine control data structure)

        • -

ハードウェアで機械学習

ターミネータのプロセッサ6502, ファミコンとほぼ同じ。学習するファミコンに侵略される!

        • -

豪雨に侵略される!

        • -

http://www.mew.org/~kazu/haskell.pdf

        • -

風邪&テンション上げ過ぎで疲れてきた。

        • -

一晩でFPGAでBrainF*ckマシーン作ったらしい。
そして瞬時に「それもうあるよ」と言われてしまう。
http://natu.txt-nifty.com/natsutan/2008/03/brainfuck_d62c.html

        • -

「非同期ソケットでEAGAIN→コンテキストスイッチ
この辺りの会話はまだ宇宙語に聞こえる。

http://www.linux.or.jp/JM/html/LDP_man-pages/man2/semop.2.html

sem_op が 0 の場合、「ゼロまで待つ」操作である。この場合、プロセスはそのセマフォ集合に対する読み込み許可がなければならない。 semval が 0 ならば、操作は直ちに行われる。 semval が 0 でない場合、 sem_flg に IPC_NOWAIT が指定されていれば、 semop() は失敗し、 errno に EAGAIN が設定される

んー、これなのかな?

        • -

鼻の奥から風邪ひきさんのにおいがする。

        • -

http://www.google.co.jp/search?hl=ja&q=10000000000000000-9999999999999995&lr

Google先生算数できない笑

        • -

僕「沖縄には一級河川はない」 id:earth2001y「いや一級河川はある」という意見の食い違いと、何か賭けようという話、特に賭けたいものがないのでブログに書くのでいいんじゃない?という話の流れの結果、僕の勝ちをここに宣言する(笑)

        • -

VerilogのシミュレータicarusをダウンロードしようとしたがMacだとなんか色々ややこしそうだ。MoGoも動かないし、VMLinuxを入れる流れかなぁ

sudo port install iverilogで入ったっぽい。

        • -

マンデルブロ集合
www.math.nagoya-u.ac.jp/~kawahira/courses/mandel.pdf

        • -
        • -

夜の26時半もすぎてEmacs派とVim派の戦いが勃発!
Q1:Hello, world!を100回表示
Vim陣営の解答:
 qaHello World![Esc]q100qa
Emacs陣営の解答:
 C-x(Hello WorldC-x)C-u100C-xe

Q2: Hello, world! 1からインクリメント
Vim陣営の解答:
インクリメントなんとかを使う
Emacs陣営の解答:
 EmacsLisp

Q3: コメントアウト

ごめん、酔っぱらって議事録つけられていない。

でもdoukaku.orgみたいなノリで特定のお題についてエディタの操作で戦うサイトが楽しそうだと思った。とりあえずEmacs, Vim, xyzzy, 秀丸, ってあたりでいいのかな。マウスは禁止でキータイプの字数でゴルフかな。

        • -

M-x imenu
M-!