Re: [問題] 有關古老程式跑在多核平台上的問題?

看板Programming作者 (kerr)時間15年前 (2009/08/03 10:08), 編輯推噓2(206)
留言8則, 2人參與, 最新討論串4/10 (看更多)
※ 引述《pomahuai.bbs@bbs.badcow.com.tw (鬼府神通)》之銘言: : ※ 引述《lkerr.bbs@ptt.cc (kerr)》之銘言: : : 不知道po在這個版上會不會不適合,由於有一些古老的程式, 沒有原始碼, : : 程式沒有對多核心作最佳化, 那有沒有方法在作業系統之上, 建立一個虛擬 : : 單核環境, 實際上這個虛擬環境卻有效利用多核心的效能, 這樣就能不用更 : : 改程式卻能大大提升程式的效能, 作業系統可以是windows 或 linux : : 不知有沒有這樣的解決方案, 感謝 : 您可以了解看看VM(virtual machine) : 透過VM,可以讓您把高性能的machine resourc分享給軟體 : 不侷限於unix,linux,MS platform. 現在的Virtual Machine, 例如 Xen,KVM,VMWare ESX,Virtualbox(xVM),Hyper-V, 要有效率的跑在x86或ia-64, 都會透過VT等技術, 這是因為x86的架構不符合 Popek and Goldberg virtualization requirements, 根據我使用以上VM的經驗, 古老程式並不會利用到多核心的好處, 因為利用到VT, 所以同一時間, 古老程式只會跑在一個核心上, 除非是Full Virtualization, 但古早的Vmware 的效能大家都知道是很差的, 所以現在很少人會用Full Virtualization 這裡所說的Virtual Machine 是 System Virtual Machine, 而要讓古老程式跑在多核心上, Process Virtual Machine 應該比較適, 就像JVM, .Net Framework, 可是這程式是C/C++ 開發的 T_T -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 202.175.78.74

08/03 11:46, , 1F
要不要換主核是VMM的事,不分割資料同時跑
08/03 11:46, 1F

08/03 11:48, , 2F
同一程式與資料,都做同樣的事也不會變快!
08/03 11:48, 2F

08/03 11:51, , 3F
VM同樣也能模擬多核心的CPU,也操控各實核
08/03 11:51, 3F

08/04 23:32, , 4F
說不定可以讓VM搞個BINARY TRANSLATION,轉
08/04 23:32, 4F

08/04 23:33, , 5F
成可以利用多核心的..BUT 很難..
08/04 23:33, 5F

08/05 00:59, , 6F
其實先弄清處那些程式片段如何利用多核達
08/05 00:59, 6F

08/05 01:01, , 7F
成併行,如Array Loop變成多核的那種組語
08/05 01:01, 7F

08/05 01:04, , 8F
效率會更高,這如同有FloatPU與否是同類事
08/05 01:04, 8F
文章代碼(AID): #1ATaQQR3 (Programming)
討論串 (同標題文章)
本文引述了以下文章的的內容:
以下文章回應了本文
完整討論串 (本文為第 4 之 10 篇):
文章代碼(AID): #1ATaQQR3 (Programming)