26
RHPCS, ABB 131-G RHPCS, ABB 131-G Email: [email protected] Email: [email protected] Phone: 905-525-9140 x 22540 Phone: 905-525-9140 x 22540 Parallel Visualization with Parallel Visualization with ParaView ParaView Weiguang Guan Weiguang Guan

Parallel Visualization with ParaView - SHARCNET · Parallel Visualization with ParaView Weiguang Guan. Outline What is ParaView Launch modes Data flow Scalable architecture LOD (Level

  • Upload
    others

  • View
    33

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Parallel Visualization with ParaView - SHARCNET · Parallel Visualization with ParaView Weiguang Guan. Outline What is ParaView Launch modes Data flow Scalable architecture LOD (Level

RHPCS, ABB 131-GRHPCS, ABB 131-GEmail: [email protected]: [email protected]: 905-525-9140 x 22540Phone: 905-525-9140 x 22540

Parallel Visualization with Parallel Visualization with ParaViewParaView

Weiguang GuanWeiguang Guan

Page 2: Parallel Visualization with ParaView - SHARCNET · Parallel Visualization with ParaView Weiguang Guan. Outline What is ParaView Launch modes Data flow Scalable architecture LOD (Level

OutlineOutline

■ What is ParaViewWhat is ParaView■ Launch modesLaunch modes■ Data flowData flow■ Scalable architectureScalable architecture■ LOD (Level Of Detail)LOD (Level Of Detail)■ Run ParaView on Sharcnet’s Run ParaView on Sharcnet’s

computing clusterscomputing clusters

Page 3: Parallel Visualization with ParaView - SHARCNET · Parallel Visualization with ParaView Weiguang Guan. Outline What is ParaView Launch modes Data flow Scalable architecture LOD (Level

What is ParaViewWhat is ParaView

■ Scientific Visualization of large Scientific Visualization of large datasetdataset

■ Open sourceOpen source■ Scalable parallel distributed renderingScalable parallel distributed rendering■ ScriptingScripting■ Multi-platforms (Unix, MacOS, Multi-platforms (Unix, MacOS,

Windows)Windows)■ ExtensibleExtensible■ Latest release 2.6.0, V3.0 is coming Latest release 2.6.0, V3.0 is coming

soonsoon

Page 4: Parallel Visualization with ParaView - SHARCNET · Parallel Visualization with ParaView Weiguang Guan. Outline What is ParaView Launch modes Data flow Scalable architecture LOD (Level

Lauch modesLauch modes

■ Single processor (local, serial)Single processor (local, serial)◆ ./paraview./paraview◆ GUI on single computerGUI on single computer◆ Computing and rendering on single Computing and rendering on single

processorprocessor◆ Small datasetSmall dataset

Paraview

Page 5: Parallel Visualization with ParaView - SHARCNET · Parallel Visualization with ParaView Weiguang Guan. Outline What is ParaView Launch modes Data flow Scalable architecture LOD (Level

Lauch modesLauch modes

■ Multiple processors (local, parallel)Multiple processors (local, parallel)◆ mpirun –np 8 ./paraviewmpirun –np 8 ./paraview◆ GUI on single computerGUI on single computer◆ Computing and rendering on multiple Computing and rendering on multiple

processorsprocessors

ParaviewParaviewParaview

Page 6: Parallel Visualization with ParaView - SHARCNET · Parallel Visualization with ParaView Weiguang Guan. Outline What is ParaView Launch modes Data flow Scalable architecture LOD (Level

Lauch modesLauch modes

■ Basic client/server mode (remote, Basic client/server mode (remote, serial)serial)◆ ./pvclient -rc on local computer; ././pvclient -rc on local computer; ./

pvserver -rc -ch=client_hostpvserver -rc -ch=client_host◆ GUI on local computerGUI on local computer◆ Computing and rendering on remote Computing and rendering on remote

computercomputerpvserver

computing, rendering

pvclient

GUI

Page 7: Parallel Visualization with ParaView - SHARCNET · Parallel Visualization with ParaView Weiguang Guan. Outline What is ParaView Launch modes Data flow Scalable architecture LOD (Level

Lauch modesLauch modes

■ Parallel client/server mode (remote, Parallel client/server mode (remote, parallel)parallel)◆ ./pvclient -rc on local computer; sqsub –q ./pvclient -rc on local computer; sqsub –q

parallel –n 8 ./pvserver -rc -ch=client_hostparallel –n 8 ./pvserver -rc -ch=client_host

◆ GUI on local computerGUI on local computer◆ Computing and rendering on remote Computing and rendering on remote

clusterclusterpvserver

computing, rendering

pvclient

GUI

pvserver

computing, rendering

pvserver

computing, rendering

Page 8: Parallel Visualization with ParaView - SHARCNET · Parallel Visualization with ParaView Weiguang Guan. Outline What is ParaView Launch modes Data flow Scalable architecture LOD (Level

Lauch modesLauch modes

■ Tiled display modeTiled display mode■ CAVE display modeCAVE display mode■ Data-and-rendering distributed Data-and-rendering distributed

modemode

Page 9: Parallel Visualization with ParaView - SHARCNET · Parallel Visualization with ParaView Weiguang Guan. Outline What is ParaView Launch modes Data flow Scalable architecture LOD (Level

Data FlowData Flow

■ Data Data ◆ Dimensions: 2D, 3D, 4D …Dimensions: 2D, 3D, 4D …◆ Type: Type:

✦ Geometric data (points, lines, polygons)Geometric data (points, lines, polygons)✦ Discrete data (samplings of properties in n-Discrete data (samplings of properties in n-

D space)D space)

◆ Data properties:Data properties:✦ Scalar (density, temperature, etc)Scalar (density, temperature, etc)✦ Vector (velocity, momentum, etc)Vector (velocity, momentum, etc)✦ TensorTensor

Page 10: Parallel Visualization with ParaView - SHARCNET · Parallel Visualization with ParaView Weiguang Guan. Outline What is ParaView Launch modes Data flow Scalable architecture LOD (Level

Data FlowData Flow

◆ Topology and geometry of sampling data Topology and geometry of sampling data

irregularirregularirregularirregularpartially partially regularregular

regularregularGeometryGeometry

irregularirregularregularregularregularregularregularregularTopologyTopology

UnstructuredUnstructuredCurvilinearCurvilinearRectilinearRectilinearImage dataImage data

Page 11: Parallel Visualization with ParaView - SHARCNET · Parallel Visualization with ParaView Weiguang Guan. Outline What is ParaView Launch modes Data flow Scalable architecture LOD (Level

Data FlowData Flow

■ Data FlowData Flow◆ Processing modulesProcessing modules

✦ Source – data file reader or graphical primitivesSource – data file reader or graphical primitives✦ Filter – processing moduleFilter – processing module

◆ Visualization pipeline: Visualization pipeline: Source Source ->->Filter#1Filter#1->->Filter#2Filter#2->->……->->Filter#NFilter#N

Filter #iInput data Output data

Data0

Rendered image

Page 12: Parallel Visualization with ParaView - SHARCNET · Parallel Visualization with ParaView Weiguang Guan. Outline What is ParaView Launch modes Data flow Scalable architecture LOD (Level

Data FlowData Flow

■ Data RenderingData Rendering◆ OutlineOutline◆ Shaded surface Shaded surface ◆ Wireframe of surfaceWireframe of surface◆ Point cloud of surfacePoint cloud of surface◆ Volume renderingVolume rendering

Page 13: Parallel Visualization with ParaView - SHARCNET · Parallel Visualization with ParaView Weiguang Guan. Outline What is ParaView Launch modes Data flow Scalable architecture LOD (Level

Data FlowData Flow

■ Pipeline execution – “Lazy update Pipeline execution – “Lazy update strategy”strategy”

Data Reader …

Data

Filter_1 …

Filter_3 …

Filter_2 …

Data Data

Data

Properties [0:n]

Page 14: Parallel Visualization with ParaView - SHARCNET · Parallel Visualization with ParaView Weiguang Guan. Outline What is ParaView Launch modes Data flow Scalable architecture LOD (Level

Data FlowData Flow

■ Paraview data file format:Paraview data file format:

http://www.paraview.org/Wiki/ParaVihttp://www.paraview.org/Wiki/ParaView:FAQ#What_file_formats_does_Paew:FAQ#What_file_formats_does_ParaView_support.3FraView_support.3F

Page 15: Parallel Visualization with ParaView - SHARCNET · Parallel Visualization with ParaView Weiguang Guan. Outline What is ParaView Launch modes Data flow Scalable architecture LOD (Level

Scalable architectureScalable architecture

■ Distributed execution, no serial Distributed execution, no serial bottleneckbottleneck

■ Limited communications Limited communications ReaderReader

D3D3

Full VTKFull VTKPipelinePipeline

IceTIceT

ReaderReader

D3D3

Full VTKFull VTKPipelinePipeline

IceTIceT

ReaderReader

D3D3

Full VTKFull VTKPipelinePipeline

IceTIceT

ReaderReader

D3D3

Full VTKFull VTKPipelinePipeline

IceTIceT

Page 16: Parallel Visualization with ParaView - SHARCNET · Parallel Visualization with ParaView Weiguang Guan. Outline What is ParaView Launch modes Data flow Scalable architecture LOD (Level

D3 – load balancerD3 – load balancer

■ D3: Distributed Data DecompositionD3: Distributed Data Decomposition■ FilterFilter D3D3■ Spatial decomposition based on k-d Spatial decomposition based on k-d

treetree■ Approximately equal number of Approximately equal number of

mesh elementsmesh elements

Page 17: Parallel Visualization with ParaView - SHARCNET · Parallel Visualization with ParaView Weiguang Guan. Outline What is ParaView Launch modes Data flow Scalable architecture LOD (Level

D3 – load balancerD3 – load balancer

Page 18: Parallel Visualization with ParaView - SHARCNET · Parallel Visualization with ParaView Weiguang Guan. Outline What is ParaView Launch modes Data flow Scalable architecture LOD (Level

VTKVTK

■ Higher-level visualization libraryHigher-level visualization library■ Open source rendering engineOpen source rendering engine■ Backbone of ParaViewBackbone of ParaView

Page 19: Parallel Visualization with ParaView - SHARCNET · Parallel Visualization with ParaView Weiguang Guan. Outline What is ParaView Launch modes Data flow Scalable architecture LOD (Level

IceTIceT

■ IceT: Image Compositing Engine for IceT: Image Compositing Engine for TilesTiles

■ Sort-lastSort-last■ Can composite images larger than Can composite images larger than

the framebuffer in graphics cardthe framebuffer in graphics card

Page 20: Parallel Visualization with ParaView - SHARCNET · Parallel Visualization with ParaView Weiguang Guan. Outline What is ParaView Launch modes Data flow Scalable architecture LOD (Level

LODLOD

■ LOD: Level Of DetailLOD: Level Of Detail■ Trade-off: rendered image quality Trade-off: rendered image quality

and rendering speedand rendering speed■ Two rendering modesTwo rendering modes

◆ Interactive rendering – using low LODInteractive rendering – using low LOD◆ Still rendering – using high LODStill rendering – using high LOD

Page 21: Parallel Visualization with ParaView - SHARCNET · Parallel Visualization with ParaView Weiguang Guan. Outline What is ParaView Launch modes Data flow Scalable architecture LOD (Level

LODLOD

■ Three ways of LODThree ways of LOD◆ Geometrical LOD – Decimation of Geometrical LOD – Decimation of

volumetric and/or polygonal datavolumetric and/or polygonal data

Original Data Divisions: 50x50x50 Divisions: 10x10x10

Page 22: Parallel Visualization with ParaView - SHARCNET · Parallel Visualization with ParaView Weiguang Guan. Outline What is ParaView Launch modes Data flow Scalable architecture LOD (Level

LODLOD

◆ Image size LODImage size LOD

Original data

Subsam

ple rate: 2 pixelsS

ubsample rate: 8 pixels

Subsam

ple rate: 4 pixels

Page 23: Parallel Visualization with ParaView - SHARCNET · Parallel Visualization with ParaView Weiguang Guan. Outline What is ParaView Launch modes Data flow Scalable architecture LOD (Level

LODLOD

◆ Color depth LODColor depth LODReduce image data transferred from server to Reduce image data transferred from server to

client.client.

24-bit mask 19-bit mask 10-bit mask

Page 24: Parallel Visualization with ParaView - SHARCNET · Parallel Visualization with ParaView Weiguang Guan. Outline What is ParaView Launch modes Data flow Scalable architecture LOD (Level

Run ParaView on Sharcnet’s Run ParaView on Sharcnet’s Computing ClustersComputing Clusters

■ Computing cluster without graphics Computing cluster without graphics hardwarehardware◆ Build Paraview with OSMesaBuild Paraview with OSMesa◆ Lauch Paraview with --use-offscreen-Lauch Paraview with --use-offscreen-

rendering optionrendering option

Your Desktop

Logon Node

Compute nodeCompute nodeCompute nodeCompute nodeCompute nodeCompute nodeCompute node

sshpvclient

pvserver…

Page 25: Parallel Visualization with ParaView - SHARCNET · Parallel Visualization with ParaView Weiguang Guan. Outline What is ParaView Launch modes Data flow Scalable architecture LOD (Level

Run ParaView on Sharcnet’s Run ParaView on Sharcnet’s Computing ClustersComputing Clusters

■ Rendering using CPU is about 10 Rendering using CPU is about 10 times slower than using GPUtimes slower than using GPU

■ High band-width networkHigh band-width network

Page 26: Parallel Visualization with ParaView - SHARCNET · Parallel Visualization with ParaView Weiguang Guan. Outline What is ParaView Launch modes Data flow Scalable architecture LOD (Level

Next:Next:

Demo of ParaView 2.6.0Demo of ParaView 2.6.0