看板 C_and_CPP 關於我們 聯絡資訊
小弟目前需要加速某段程式的執行速度 此段程式所採用的演算法為O(n) 但n大到10^8左右 目前也沒有更快的演算法( 其實是在作BFS或DFS的變形 n=Node+Edge ) 所以如果要更快 似乎只能從程式碼優化下手 例如找出哪邊可以少做一次運算 或是怎麼寫才可以減少cache miss..等等 想問有沒有這一類的書籍或資料呢? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.135.140.149 ※ 編輯: Arton0306 來自: 220.135.140.149 (11/15 00:12)
james732:往平行處理、多執行緒那個方向,有搞頭嗎?XD 11/15 00:12
ericinttu:看要運算的資料量有多少,可能會用到OS裡面的一些技巧. 11/15 00:14
joefaq:你的IO會是瓶頸嗎 11/15 00:15
littleshan:會用profiler嗎? 11/15 00:16
littleshan:重點:先找出效能瓶頸 11/15 00:16
Arton0306:平行暫不考慮 IO不是瓶頸 我目前只會手動profile插時間 11/15 00:25
james732:有些工具可以幫你分析程式的瓶頸,先試試看吧? 11/15 00:26
Arton0306:那我先研究profiler的使用 感謝! 11/15 00:29