Entries from 2008-04-18 to 1 day

Gambitのベンチマークコード(コメント付き)

Description of the Gambit benchmarks, with comments.

昨日読んだ論文から

native の 20-40%の速度が出たらしい ソフトウェアで実装される VM では命令のフェッチとデコード(実行ルーチンへのディスパッチ処理)がそのまま実行のオーバーヘッドになる これらはネイティブコードにはない固有の処理である 実行する命令数を減らす(ル…

let 境界と jump のバグ発見 - Scheme VM を書く

pass2(最適化フェーズ)でnamed let または letrec のような local クロージャの call をループ(jump)に変換するときに、その jump がもっとも内側の let の境界を越えてしまいスタックフレームが壊れるバグに遭遇。 pass2 は Gauche のものをほぼそのま…

重いバグ修正 その2 - Scheme VM を書く

pass3/$call で embedded のときに args のコンパイル引数の frees が frees-here であるべきバグを修正した。(r5236) このバグも調べるのが大変だった。