推 james732:推! 10/05 11:23
推 johnhmj:除了release之外,更新VStudio的ServicePack也會有差異, 10/05 14:31
→ johnhmj:更新前與更新後編譯的程式,兩者是不一樣的。 10/05 14:32
→ johnhmj:不建議用release,它似乎是以編程人員的電腦來做優化的。 10/05 14:34
Service Pack 是泛指 SP1 嗎 ? 若是的話, SP1 ,
較像是 extension library 、原版 IDE 外掛,
除非 SP1 有改到 CL.exe 或 LINK.exe , 否則不太可能編出來不一樣,
頂多就再多了幾個不同 .dll 而已。
另我以為在早期 vc6 即使很多 bug, 乃受到愛戴的原因,
其中一個便是因為它 opt. 在當時做得夠快!
→ danielguo:release 可以選對哪種環境最佳化, debug 實在是慢到不行 10/05 14:39
推 purpose:以編程人員的電腦來做優化 -> 好像沒有吧 10/05 14:41
推 priv:怎麼可能是以編程人員的電腦為準 10/05 14:57
→ priv:用debug為了可以trace,基本上根本不會有任何高階optimize 10/05 14:58
→ priv:教人不要用release太扯了… 10/05 14:59
→ johnhmj:假如不想費時研究優化編譯選項,我覺得release玩玩就好。 10/05 15:13
→ danielguo:不, 真的在用的 code 都應該用 release. debug 純開發用 10/05 15:15
→ danielguo:Visual Studio release 的預設並不會用奇怪的硬體設置 10/05 15:18
→ danielguo:C++ release 和 debug 速度差十倍也常有 10/05 15:18
→ danielguo:把 VS 打開進屬性頁, 請問除了 /arch 哪個選項會造成 10/05 15:22
→ danielguo:對某些處理器適用某些不適用的影響? 10/05 15:23
→ danielguo:(預設的 release) 10/05 15:23
→ priv:VS出那麼多年你有聽過微軟預設的release編出來 10/05 16:14
→ priv:結果某家CPU跑起來有問題的事嗎.. 10/05 16:14
→ priv:要說的話微軟的optimize都是偏保守的 10/05 16:15
→ priv:不然以前intel也不會特別出一套ICC了 10/05 16:15
其實優化能改善的真算的不多,而且每家做 optimize 有限,畢竟都是從 asm 下去著手,
換個角度想,當然不會建議每個 compiler 、 每個參數都去跑,畢竟語言能差的,
效率比不到 100% , 差個 30~50 % 就差很多 , 再差多一點也多不過 5 倍,
但演算法動不動就差了幾百、幾千、幾萬倍,故較少人在比較這部份吧?
開發都以穩健為基礎 (所以通常穩健型的開發是用 debug mode 居多),
但程式發佈給別人如果還用 debug , 另一個人拿到快100倍的 release mode,
這可能誰都會心情不好唷.. 一樣的價, 為什麼別人的程式快了一百倍..
※ 編輯: tropical72 來自: 180.177.78.41 (10/05 17:37)
→ priv:可以milestone先給debug版然後...下一版改release 10/05 18:06
→ priv:程式變小又變快...好棒XD 10/05 18:06