c*******v 发帖数: 2599 | 1 我理解的llaalways的問題可以簡化到如下可操作問題:
能否在保留omp reduction的情況下,更快的算sin(k)之dot product?
我這裡omp最快是timeBest = 0.051186 sec, np = 4
np=1時,時間為time0 = 0.159219 sec
time0/timeBest=3.11
用了兩個辦法,一個是jmrf給的那些開關,加上Ofast。
另一個是吧loop改成k=k+2。這樣loop裡面兩個sin。
這個辦法把速度從0.056626提高到了0.051186。比率數從3.17。
最快速度都出現在np=4.
大家得到的最大的time0/timeBest比數是多少?
最快速度為多少? | c*******v 发帖数: 2599 | 2 比率之理論值上限應<4。
論證如下,在另一個貼裡面。
比率之理論值不等於4是因為內外loop有一定耦合。
"
np=4基本上已經最優了。我所需時間為0.051。
np=1時,我把n設成2500。所需時間為0.047。
單線程算2500個sin需要時間0.047。
1萬個sin,4 core,最佳時間顯然也在此附近。
你總歸要算1萬個sin。分到四個核心。除此而外,別的優化都是扯。
因為sin極其昂貴。其他的乘法加法相比之下什麼也不是。
"
【在 c*******v 的大作中提到】 : 我理解的llaalways的問題可以簡化到如下可操作問題: : 能否在保留omp reduction的情況下,更快的算sin(k)之dot product? : 我這裡omp最快是timeBest = 0.051186 sec, np = 4 : np=1時,時間為time0 = 0.159219 sec : time0/timeBest=3.11 : 用了兩個辦法,一個是jmrf給的那些開關,加上Ofast。 : 另一個是吧loop改成k=k+2。這樣loop裡面兩個sin。 : 這個辦法把速度從0.056626提高到了0.051186。比率數從3.17。 : 最快速度都出現在np=4. : 大家得到的最大的time0/timeBest比數是多少?
| g****t 发帖数: 31659 | 3 除非改sin算法。在我机器上,看来没办法再提速了。
: 比率之理論值上限應 : 論證如下,在另一個貼裡面。
: 比率之理論值不等於4是因為內外loop有一定耦合。
: "
: np=4基本上已經最優了。我所需時間為0.051。
: np=1時,我把n設成2500。所需時間為0.047。
: 單線程算2500個sin需要時間0.047。
: 1萬個sin,4 core,最佳時間顯然也在此附近。
: 你總歸要算1萬個sin。分到四個核心。除此而外,別的優化都是扯。
: 因為sin極其昂貴。其他的乘法加法相比之下什麼也不是。
【在 c*******v 的大作中提到】 : 比率之理論值上限應<4。 : 論證如下,在另一個貼裡面。 : 比率之理論值不等於4是因為內外loop有一定耦合。 : " : np=4基本上已經最優了。我所需時間為0.051。 : np=1時,我把n設成2500。所需時間為0.047。 : 單線程算2500個sin需要時間0.047。 : 1萬個sin,4 core,最佳時間顯然也在此附近。 : 你總歸要算1萬個sin。分到四個核心。除此而外,別的優化都是扯。 : 因為sin極其昂貴。其他的乘法加法相比之下什麼也不是。
|
|