yarv-dev:527
From: SASADA Koichi <ko1 atdot.net>
Date: Fri, 01 Jul 2005 21:46:27 +0900
Subject: [yarv-dev:527] dynamic superinstruction / vm code size
ささだです。 すべての実行を dynamic superinstruction でするんだったら、コピー元にな る命令列のコードサイズは気にする必要ないんでしょうか。 先日の "Combining Stack Caching with Dynamic Superinstructions" では、 命令数削減の理由を「GCC でコンパイルする時間が長くなっちゃうから」にして ますね。とくに、I-Cache がどうだとかは書いていない。 となると、YARV の行く末は * static superinstructions はやめる * みんな dynamic superinstructions にする * operand の融合はガンガンやる * スタックキャッシュのための命令はそれぞれガンガン作る (最近のマシンは gcc で1関数数万行くらいなら数十秒でコンパイル出来る) くらいがいいんでしょうかねぇ。 しかし、dynamic superinstructions は無茶苦茶メモリ食いそうだなぁ。同じ 組み合わせをプールしてうまく使いまわすことは出来るのかしらん。組み合わせ を GC 対象にすることは出来るのかしらん。 ---- 本当にそこまで Ruby でやるんか、というのもあるんですが... この辺は完全 に趣味の世界にしておかなくちゃかも。完全にひとつの環境限定でその環境を 使っている人だけうれしい(他の人はスタックキャッシング止まり)ということ にすれば、とりあえずいいか。 -- // SASADA Koichi at atdot dot net // -- ML: yarv-dev quickml.atdot.net 使い方: http://www.atdot.net/~ko1/quickml