2004.04.21と同じものを、こんどは最適化有りで実行してみたprofilegは、以下である。
result: 489261678 Flat profile of 7.62 secs (487 total ticks): main Interpreted + native Method 0.2% 1 + 0 java.util.jar.Attributes.read 0.2% 1 + 0 Total interpreted Compiled + native Method 99.6% 485 + 0 Test.expand 99.6% 485 + 0 Total compiled Thread-local ticks: 0.2% 1 Unknown: no last frame Global summary of 7.64 seconds: 100.0% 489 Received ticks 0.2% 1 Unknown code
動的確保している2004.04.06の結果と比べると、約1秒ほど速くなっている。
しかしこれも、Cほどの性能改善には至っていないような印象である。
結局、JavaとCとでは動的なメモリの取り扱いにかなりの違いがあるということなのだろう。
そのあたりのところを、まとめておくべきかも知れない。