私はLinuxマシン上の素早いターンアラウンド対のcygwinで実行するために本当に長い時間がかかるのC++プログラムを持っているに比べてcygwinの中にC++プログラムのために。私はそれがメモリの問題かもしれないと思ったし、使用するメモリを印刷しようとした、これは私が見WAHTです:長い実行時間のlinux
Linuxの
仮想メモリ:5072キロバイト、常駐セットサイズ(RSS):1064キロバイト
Cygwinの
仮想メモリ:7672キロバイト、常駐セットサイズ(RSS):108928キロバイト
は、誰も私がこの違いの原因を理解するのに役立ちます ? Cygwinは、64ビットのウィンドウ&と3 GBのメモリを搭載したラップトップで動作しています。このプログラムにはmallocを行う古い "C"コードがあります。これらを標準のC++コンテナに変換するのが助けになるでしょうか?
に悪い考えであるフォーク()で、それは答えには不可能ですこの質問。 –
は同じハードウェアですか?もしそうなら、JamesがOSの呼び出し時間に加えて言ったこと。 –
g ++ -gを使ってコンパイルされました。 -o out.exe gcc version 4.5.3を使用しています。 cygwinに最新のlibsがインストールされています。ありがとう –
cppcoder