看板 CSSE 關於我們 聯絡資訊
※ 引述《Geigemachen ()》之銘言: : ※ 引述《micklin (離鄉背井的米克)》之銘言: : : 所以你的程式是本來就會越跑越慢? : 是的, : : 如果你的程式跑到一定的步驟後就會變慢, : : 那你加速後, 本來3-4天會變慢的, 1天以後就變慢, 聽起來很合理.... : 感覺不合理的是,重開機,或是關機又開機以後還是慢,快不起來。 : 不知道是不是有對系統檔案做了什麼永久性的改變(我的程式碼原來沒有這麼做)? : 單核心程式 :  用速度慢的電腦來連續執行多次3-4天就變慢,速度快的電腦連續執行多次是8-10天。 : 雙核心程式 :  用速度快的電腦1天就慢得不會動,後來看我自己程式顯示, :  雙核心程式變慢後執行程式完畢時間是4天, :  單核心程式沒變慢執行程式完畢時間是4小時。 : : 作業系統是? : Windows XP, sp3 不知道你的程式做了什麼處理, 有沒有可能是讀檔寫檔, 結果檔案越來越大, 然後讀檔的時候就越來越久? 要不要檢查一下行程的IO? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.136.237.96
Geigemachen:我用process explorer查查;程式大半只寫不讀,輸出20MB 12/21 23:51
Geigemachen:多謝您熱心指點,感激! 12/21 23:52
leicheong:做點不負責任(!!)的推測... 你應該是在procedure 12/21 23:58
leicheong:local declare一大片variable吧... 試一試用global 12/21 23:59
leicheong:variable代替然後在procedure中完全禁止declare新的 12/22 00:00
leicheong:variable... 如果有改善的話, 可能你的程式出現 12/22 00:01
leicheong:memory fragmentation了... :P 12/22 00:01
leicheong:對了, array的malloc()那類工作也要在一開始做哦. 12/22 00:04
Geigemachen:我的程式寫檔是用global,陣列尺寸固定在迴圈前宣告 12/22 00:09
Geigemachen:我該補一些執行細節敘述,免得熱心的板友費心猜,多謝你 12/22 00:09