05/11/21 21:33:54
ngenすら使わなくても、メモリ上でJIT済みコードを繰り返し実行してるだけならネイティブと変わらんよ。
そのためのJITなんだし。
問題は、普通のアプリは、実行がひとところにとどまらずに、
コードエリア内をあっち行ったりこっち行ったりすることだ。
CPUのキャッシュサイズも有限なんだし、
裏で動いているものが大きいと、それだけで足枷になる。
ngenは裏で動く処理を減らす効果はあるが、ゼロにゃできんし。
起動時間喰ってるのは膨大なランタイムのロードも大きいし。
というかだ、同じものを連続して何度もロードした計測なんて、
CLRにとってみれば同じもの使いまわせてしまうわけだが
そんなの実際の使用方法とはかけ離れてるだろう?