Re: [問題] MultiThread縮短的時間(內附程式碼)

看板C_and_CPP作者時間15年前 (2009/11/16 01:36), 編輯推噓0(002)
留言2則, 1人參與, 最新討論串1/1
※ 引述《topwing (Levin)》之銘言: : 標題: [問題] MultiThread縮短的時間(內附程式碼) : 時間: Sun Nov 15 23:07:52 2009 : : 謝謝各位的建議,當初會用兩組是因為想不到怎麼切割,所以才會用兩組下去跑 : 現在忽然發現我用兩組bubble sort下去跑根本就是錯的 : 因為對同一個sorting用multithread下去跑再來比較才具有意義 同一個sorting list,而且要只用同一顆核心下去跑 如果你用兩顆核心跑兩個thread,最後跑出來的效能卻沒有到接近兩倍 除了你買到黑心的OS/CPU之外,很難有其他解釋 : : 剛剛 剛好研究Quick Sort(其實是要考試.....),剛好n大提醒(謝謝) : Quick Sort好像也不錯用 : 只是目前我只想的到第一次切割之後分給thread1和thread2 : 之後就直接這樣運行下去,不過應該還有更好的方法 : 不知可否給點建議,感謝! 事實上Qsort不是最適合multi thread化的演算法 因為你不知道什麼時侯左邊和右邊要sort的數目差不多 有可能很衰你一開始就切到100:1 所以heap sort可能是個比較好的選擇 : 推 Mewra:在VS裡加個/MP下去, 看看實際上multi cores的時間. 11/16 01:24 這位同學 /MP是讓VS在Compile的時侯用multi-process去compile (也就是多開幾個process一次compile許多unit) 要是這樣竟然能增加Compile出來Code的執行效率 這一定是M$社研發出什麼不為人知的外星科技了 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.32.5.35

11/16 01:59, , 1F
這裡有些parallel sorting介紹 http://0rz.tw/7qJ8M
11/16 01:59, 1F

11/16 01:59, , 2F
還有模擬可以看 蠻好玩的
11/16 01:59, 2F
文章代碼(AID): #1B03mAxF (C_and_CPP)