2013-01-07 96 views
0

我正在尋找優化生成buddhabrots,並且這樣做是爲了閱讀SIMD和並行計算。是否有可能用這個來加速我的佛陀世代。我正在編程C使用SIMD繪製Mandelbrot

回答

1

是的,佛br生成可以很容易並行。關鍵是將計算與渲染分開。計算以二維計數器陣列開始,每個像素一個,初始化爲全零。處理器然後可以在計算隨機軌跡的同時遞增這些計數器。您可以通過讓多個處理器以不同的隨機種子開始並將這些陣列定期轉儲到文件中來以SIMD方式並行化。當你認爲他們已經完成了足夠的工作以獲得令人滿意的結果時,你只需收集所有這些文件並創建一個包含所有其他文件的總和的主數組。只有這樣,您才能在最終數組上執行直方圖均衡,並通過將顏色分配給直方圖中每個值的範圍來呈現結果。如果您發現結果未達到您的滿意程度,您可以繼續計算或創建更多文件進行彙總和渲染。

1

事實上,許多人都在爲此工作。 This an example,工作得很好。還有其他人。

+0

我該怎麼做?有代碼的例子嗎? – Jordan

+0

獲取源代碼並閱讀! – Gene