看板 java 關於我們 聯絡資訊
※ 引述《adrianshum (Alien)》之銘言: : ※ 引述《Lordaeron (Terry)》之銘言: : : 多補充一下, 多一顆CPU 也不是什麼靈丹妙藥一服下就什麼都變得更好. : : single-threaded 的東西, 加一百顆CPU, 它依然是只用一顆. : : 而本身是multi-threaded的也會由於lock 變多, 會不會讓你拿回15% 還很難講 : : 最單的測試有: : : http://mlee888.wordpress.com/2006/03/31/ : : java-performance-in-dual-coremultiprocessor-environment/ : 要用到 >2GB heap size 的 application : 絕絕大部份是 enterprise grade 的 application. : 企圖用 single-threaded application 來說多加 : CPU未必有用, "不是錯, 但沒啥意義" : 另, 要是因為增加 lock 而令到 multi-thread : application 在增加 core 也沒有 performance : 增長, 這種情況絕大部份都是程式設計失當, 造成 : 大量 resource contention. 這種情況不管多少個 : core, 那 resource contention 的部份都是 : bottleneck. 用這樣的例子去說 多加 CPU 未必有用, : 也是 "不是錯, 但沒啥意義" 就算你設計得當, 在統計的結果(在link 的link 中) 只要用sync/lock, performance 最少吃掉25%, 最多吃掉50% 所以你當初講的可以加CPU 來要回哪為升64bit 所損失的15% 是 徒勞的, 不管你改成multithread 或 照舊不變. -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.136.231.46
linhomeyeu:好侷限 你把一個設計元件拿出來放大 03/01 13:27
linhomeyeu:然後說整體上64bit效能不如32bit 真有趣 03/01 13:28
linhomeyeu:而且原PO明明就已經說了"要是因為增加 lock而令 03/01 13:30
linhomeyeu:multi-thread增加 core 也沒有 performance 是設計失當 03/01 13:30
linhomeyeu:你真的有看原文嗎? 03/01 13:30
Lordaeron:我不只有看原文, 還將原文的link 也看了, 有什麼問題? 03/01 16:38
Lordaeron:你要吐糟就回一篇文章,將原文的問題點出來吧 03/01 16:40
Lordaeron:32->64不用加lock也掉效能,不知你有沒有看呢 03/01 16:45
adrianshum:lock/sync intensive 工作的效能掉得蠻利害, 和 "只要 03/02 11:32
adrianshum:只要用sync/lock, performance 最少吃掉25%",是一樣嗎? 03/02 11:34
Lordaeron:我只是要說,你設計不當, 掉50%,設計得當,掉25% 03/03 06:46
Lordaeron:而你掉得蠻利害的哪句在哪? 03/03 06:49