- PHPがいかに駄目言語であるかをちゃんと説明
622 :デフォルトの名無しさん[]:2014/06/25(水) 10:00:19.03 ID:uLaDf7W/ - >>621
> http://maplesystems.co.jp/blog/all/programming/2015/ > > Java > C >>>> PHP > Python >> Ruby の部分、Cの速度は、gcc に最適化オプションをつけずにコンパイルした 255 msの場合で、最適化オプション -o をつけると 58ms となり、 Java の181ms よりも 3.12 倍も高速になる、とのことだよ。
|
- PHPがいかに駄目言語であるかをちゃんと説明
623 :デフォルトの名無しさん[]:2014/06/25(水) 10:05:02.39 ID:uLaDf7W/ - なお、Java は整数演算は C/C++ の 1/3 程度の速度を持っているが、
メモリ確保が入ってくるととたんに性能が落ちる。 経験的には、同じ容量を確保した場合、C/C++ の 100倍〜1000倍 程度メモリを食うらしい。 さらに、Garbage Collection が不定期に実行されるので スクロール中にガタガタと止まったりする。 無駄に多くメモリを消費するのも、GC の頻度が高くなる最大の原因 になってもいる。 Javaアプリの起動が遅いのは、アプリの初期化時にメモリ確保を一気に行うときに時間がかかって 居ることが主な原因。
|
- PHPがいかに駄目言語であるかをちゃんと説明
624 :デフォルトの名無しさん[sage]:2014/06/25(水) 10:38:23.32 ID:uLaDf7W/ - 訂正:
>経験的には、同じ容量を確保した場合、C/C++ の 100倍〜1000倍 >程度メモリを食うらしい。 ここは嘘だった。実際は、Javaの参照(ポインタ)は、C/C++よりも ずっと容量を食うらしく、参照によってリンクを張った構造を 作ると C/C++ のポインタで同様の事を行った場合に比べて、 100〜1000倍のメモリ容量を食う。
|
- PHPがいかに駄目言語であるかをちゃんと説明
625 :デフォルトの名無しさん[sage]:2014/06/25(水) 16:53:28.76 ID:uLaDf7W/ - なぜJavaがメモリを大量消費するかについて、自分なりの見解を述べ
よう。 ・参照の変数の内部表現に必要なバイト数がC/C++のポインタに比べて 大きい。ただし、大きいといっても、これだけで100〜1000倍にも なる理由の説明にはなりそうにはない。 ・C/C++ では、オブジェクトを構造体やクラスの中に参照やポインタ を解さずにそのまま埋め込むことが出来たが、Javaでは必ず参照 となるため、必ずヒープ(ストア)領域から new する必要があり、 これが、複数のメンバを持つ一般的な構造体では意外と大量の メモリを食ってしまう可能性。 これについても、C/C++の経験 では、「大した増加にはならない」と予想されるが・・・。
|