「JavaとCの実行比較」で、実際にCとJavaで似たような処理を実行させ、その処理時間を比較してみた。その結果「Javaの方が速い」となったわけだが、それは本当なのだろうか。屁理屈太郎氏も指摘している、最適化の問題がある。実は、gccはコンパイル時のオプションで何処まで最適化を行うかを指定することが出来る。前回はデフォルトの状態でコンパイルを行ったため、十分な最適化が行われていない可能性があるのだ。そのコンパイル時の最適化オプションを用いて、結果を見てみよう。test.c上記の「-O0」〜「-O3」が最適化の深さを指定するオプションである。「-O0」は最適化を全くしない。「-O3」はかなり深い最適化を行う。して出来たものを実行してみた結果が、以下である。20:10:0020:10:1620:10:3220:10:3720:10:4120:10:46デフォルトと最適化なしは約16秒、最適化有りはいずれも約5秒という結果となった。約3倍もの性能向上である。最適化を行った場合のCのものの実行性能は、Javaよりも速い。読者になるこのブログについてはてなブログをはじめよう!amadoさんは、はてなブログを使っています。ブログを報告する引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。