Re: [問題] 程式最佳化
※ 引述《dcgkii ()》之銘言:
: 有沒有書籍或網站是專門在講
: 程式的最佳化啊?
: 就是可以使編譯後的組語更快?
最佳化來講 "我們能做的"大概就是只有thread opt跟openMP而以了
剩下的不是要_asm就是要交給編譯器來做
有幾個最佳化的點我可以聊一下
1. 良好的寫作習慣
能++n就不要n++ 能+=就不要+
能一次迴圈內做完的就不要分兩個迴圈(不過這個在最佳化有不少例外)
2. 利用一些third party library
比方說Intel出的IPP/MKL(恩 效能要用錢來換)
3. 買很棒的IDE並且遵照他的作法
又是Intel, IC(Intel Compiler)
4. OpenMP
這個是你可以google的東西,在很多IDE上都有支援
效能增加非常可觀
5. Thread opt
這是一個很複雜的議題,thread本身是有最佳化解法的
市面上也有些現成的(恩 也有要錢的)library
比方說TBB(有免費版本的OpenTBB, http://www.threadingbuildingblocks.org/ )
Boost本身也有thread pool manager,openMP3.0的task manager
原理的話就自己google了,其實除了1以外
大多數都是把很多個相同的算式合在一次運算裡面做掉以避免浪費
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 218.168.75.5
推
03/28 23:50, , 1F
03/28 23:50, 1F
討論串 (同標題文章)
C_and_CPP 近期熱門文章
PTT數位生活區 即時熱門文章