在神工坊ParaView上體驗并行渲染可視化
1 什么是可視化
2、等值面(Isosurface)是將數據集中特定數值的表面提取出來,以顯示數據的連續性或離散性。根據需求,設置不同的等值面數值。如下圖所示。
3、流線(Streamlines)是根據數據集中的矢量場信息,繪制流線以顯示流體或氣體的流動路徑和速度。可以根據需要調整流線的密度和長度。如下圖所示。
高級渲染(Advanced Rendering)即是提供各種高級的渲染技術,如體繪制、體積渲染、陰影、反射等,以增強可視化效果和表達能力。
2 如何在神工坊平臺上使用ParaView進行并行渲染?
首先,用戶需要在神工坊平臺上運行ParaView實例,具體操作如下圖(點擊登錄神工坊平臺)。神工坊目前已經為用戶完成并行運行模式的配置,用戶只需要選擇適合的CPU和GPU數量即可開始體驗。
3 GPU性能加速對比分析
本文通過展示水下機器人算例流場的可視化過程,對GPU性能加速效果進行對比。該算例描繪的是水下機器人在靜水域中,上方四個螺旋槳旋轉引起的流場演化過程。源數據為某時間步,整個流場的速度場。我們對速度場在某一平面進行切片并且疊加上四個螺旋槳的渦量等值面。可視化結果如下圖所示。
上圖為在每個處理器上,等值面繪制過程中每個步驟的耗時。
下面將展示不同資源配置下,切片和等值面繪制在數據I/O、生成、提取、渲染上的耗時,從而說明增加GPU對上述四個部分的加速效果。
3.1 數據I/O
GPU數量操作 |
1 |
2 |
4 |
8 |
X3R::RD |
69.23s |
31.60s (119%) |
22.64s(205%) |
12.44s (456%) |
3.2 數據生成
GPU數量操作 |
1 |
2 |
4 |
8 |
Execute Slice |
17.39s |
8.66s(101%) |
4.42s(293%) |
2.17s(701%) |
Execute Contour |
38.42s |
20.23s(89.9%) |
10.15s(377%) |
6.5s(491%) |
3.3 數據提取
GPU數量操作 |
1 |
2 |
4 |
8 |
Slice Update |
0.661s |
0.363s(82%) |
0.332s(99%) |
0.147s(350%) |
Contour Update |
2.935s |
1.619s(81%) |
1.221s(140%) |
0.843s(248%) |
3.4 數據渲染
GPU數量操作 |
1 |
2 |
4 |
8 |
Slice Still Render |
0.22s |
0.28s |
0.25s |
0.34s |
Contour Still Render |
1.05s |
0.88s |
0.9s |
0.98s |
4 結論
綜上所述,通過對這些熱點函數的性能分析,可以看到增加GPU數量對數據I/O、數據生成和數據提取操作的并行加速效果非常可觀。考慮到本次展示的數據集較小,僅為6000萬網格,可以推斷,選用更為精細的數據集則加速效果更為明顯。
工程師必備
- 項目客服
- 培訓客服
- 平臺客服
TOP




















