Presentation is loading. Please wait.

Presentation is loading. Please wait.

Advanced Scientific Visualization Laboratory Paul Navrátil 28 May 2009.

Similar presentations


Presentation on theme: "Advanced Scientific Visualization Laboratory Paul Navrátil 28 May 2009."— Presentation transcript:

1 Advanced Scientific Visualization Laboratory Paul Navrátil 28 May 2009

2 Topics Remote and Collaborative Visualization Remote Visualization on Spur Scripted Visualization with VisIt

3 Old Model (No Remote Capability) Local Visualization Resource Local Visualization Resource HPC System HPC System Data Archive Data Archive Pixels Mouse Display Remote Site Wide-Area Network Wide-Area Network Local Site

4 New Model Remote Capability Large-Scale Visualization Resource Large-Scale Visualization Resource HPC System HPC System Data Archive Data Archive Display Remote Site Wide-Area Network Wide-Area Network Local Site Pixels Mouse

5 New Model Multi-User and Collaborative Capability Large-Scale Visualization Resource Large-Scale Visualization Resource HPC System HPC System Data Archive Data Archive Wide-Area Network Wide-Area Network Local Site B Pixels Remote Site Mouse Pixels Mouse Display A Display B Local Site A

6 Spur - Visualization System 128 cores, 1 TB distributed memory, 32 GPUs spur.tacc.utexas.edu login node, no GPUs don’t run apps here! ivisbig.ranger Sun Fire X4600 server –8 AMD Opteron dual-core CPUs @ 3 GHz –256 GB memory –4 NVIDIA FX5600 GPUs ivis[1-7].ranger Sun Fire X4440 server –4 AMD Opteron quad-core CPUs @ 2.3 GHz –128 GB memory –4 NVIDIA FX5600 GPUs

7 Spur / Ranger topology spur login3.ranger Login Nodes login4.ranger Compute Nodes Vis nodes ivis[1-7|big] HPC nodes ixxx-xxx vis queue normal development queues File System $HOME $WORK $SCRATCH

8 Topics Remote and Collaborative Visualization Remote Visualization on Spur Scripted Visualization with VisIt

9 Starting a Remote Vis Job on Spur (Lab Exercise) Step 1: Download a vnc client, preferably with integrated compression Recommended options: TightVNC http://www.tightvnc.com/download.html TurboVNC http://www.virtualgl.org/Downloads/TurboVNC

10 Starting a Remote Vis Job on Spur (Lab Exercise) Step 2: ssh @spur.tacc.utexas.edu

11 Starting a Remote Vis Job on Spur (Lab Exercise) Step 3: On Spur, set up your vnc password. This only needs to be done once vnc password shared across Spur and Ranger In your ssh, enter vncpasswd Select and verify password. NOTE: vnc passwords are NOT secure! 8 char limit (rest ignored) should NOT be your TACC password stored in ~/.vnc/passwd

12 Starting a Remote Vis Job on Spur (Lab Exercise) Step 4: Launch a vncserver job using SGE qsub /share/sge/default/pe_scripts/job.vnc touch ~/vncserver.out tail –f ~/vncserver.out qsub = sge submit command must specify account job.vnc = job script make local copy to modify acct, runtime, # proc Connection instructions written to ~/vncserver.out once job launches Use visq to monitor job status

13 Starting a Remote Vis Job on Spur (Lab Exercise) Step 5: Create ssh tunnel from your laptop to the vnc session ssh –f –N –L :spur.tacc.utexas.edu: @spur.tacc.utexas.edu vnc communication is unencrypted so create ssh tunnel between your laptop and spur login : port assigned by vnc job : your username on spur Your vncviewer will connect to port on your laptop (localhost) ssh tunnel forwards connection to port on spur (login node) spur automatically forwards to port on vis node -f port forward only, no command -N background after connect -L forward local to remote machine:

14 Starting a Remote Vis Job on Spur (Lab Exercise) Step 6: Connect to that display by using a vnc client (1) (2) (3)

15 Starting a Remote Visualization Job on Maverick (Lab Exercise) Step 7: Type glxgears A common error – extension GLX missing! By default, your vnc session cannot access OpenGL or GPUs Any OpenGL-based application will encounter this issue

16 Starting a Remote Visualization Job on Maverick (Lab Exercise) Step 8: Type vglrun glxgears Accesses GPUs and OpenGL libs via VirtualGL VirtualGL captures framebuffer from GPU, forwards it to vnc session Use vglrun –d to specify which GPU to use ( –d :0.0 is default) vglrun –d :0.0 vglrun –d :0.1 vglrun –d :0.2 vglrun –d :0.3

17 Starting a Remote Vis Job on Spur (Lab Exercise) Step 9: Type ‘module avail’ in the xterm. This will tell you which programs are available to load and run. Some programs have module dependencies (e.g. many vis programs) Some programs are compiler and/or MPI-stack dependent

18 Topics Remote and Collaborative Visualization Remote Visualization on Spur Scripted Visualization with VisIt –Python Primer –Create Image using Python Script –Change View and Apply Operators –Fly Around Dataset

19 One-Slide Intro to Python def count_fingers(n): if (n < 0): print “How do you count negative fingers?!” elif (n > 10): print “I only have ten fingers!” else: for i in range(0,n): print “%d little piggy” % (i + 1)

20 Inspecting VisIt Python Classes >>> s = SaveWindowAttributes() >>> s outputToCurrentDirectory = 0 outputDirectory = "C:\Documents and Settings\pnav\My Documents\VisIt 1.11.2\My images" fileName = "visit" family = 1 format = TIFF # BMP, CURVE, JPEG, OBJ, PNG, POSTSCRIPT, POVRAY, PPM, RGB, STL, TIFF, ULTRA, VTK width = 1024 height = 1024 screenCapture = 0 saveTiled = 0 quality = 80 progressive = 0 binary = 0 stereo = 0 compression = PackBits # None, PackBits, Jpeg, Deflate forceMerge = 0 resConstraint = ScreenProportions # NoConstraint, EqualWidthHeight, ScreenProportions >>> s.format = s.PNG >>> s.width, s.height = (1600, 1200) >>> SetSaveWindowAttributes(s)

21 Basic VisIt Classes and Functions OpenDatabase( “ ” ) AddPlot( “ ” ) pa = Attributes() SetPlotOptions( pa ) AddOperator( “ ” ) oa = Attributes() SetOperatorOptions( oa ) DrawPlots() –once invoked, all commands that change plot will update plot automatically s = SaveWindowAttributes() SetSaveWindowAttributes( s ) SaveWindow() view = GetView3D() SetView3D( view ) DeleteAllPlots() Full Interface description at: https://wci.llnl.gov/codes/visit/1.4.1/PythonInterface1.4.1.pdf https://wci.llnl.gov/codes/visit/1.4.1/PythonInterface1.4.1.pdf

22 Function to Change View Axis def change_view(normal, up, nsteps=10, start=0): c0 = GetView3D() c1 = GetView3D() c1.viewNormal = normal c1.viewUp = up cpts = (c0, c1) x = (0., 1.) for i in range(start, nsteps+1): t = float(i) / float(nsteps) c = EvalCubicSpline(t, x, cpts) SetView3D(c) # SaveWindow() # uncomment to save image of each step

23 Lab #1 – Create Isosurface Plot Open RectGrid2.vtk Create Pseudocolor plot on scalars variable Apply Isosurface operator

24 Lab #2 – Clip Isosurface Plot on -Y Rotate view from +Z axis to –Y axis Create Clip operator Change Clip attributes to change clip plane from +X axis to –Y axis Apply new clip attributes

25 Lab #3 – Save Image Stack Using change_view as a model, save an image stack of the view changing Bonus points: change filename and image file type

26 Lab #4 – Fly Around Plot Using change_view as a model, create multiple viewpoints to fly around dataset Bonus points: modulate viewpoints along wave (will need to calculate orthogonal view and up)

27 Obrigado! pnav@tacc.utexas.edu

28 Helpful Hints for Labs #1 and #2

29 VisIt Open the file RectGrid2.vtk Click File -> Open Select RectGrid2.vtk Click OK Active dataset highlighted

30 VisIt Open the file RectGrid2.vtk Click File -> Open Select RectGrid2.vtk Click OK Active dataset highlighted

31 VisIt Create isosurfaces Click Plots -> Pseudocolor -> scalars Click Operators -> Isosurface Click OpAtts -> Isosurface… Keep defaults, click Dismiss Click Draw

32 VisIt Create isosurfaces Click Plots -> Pseudocolor -> scalars Click Operators -> Isosurface Click OpAtts -> Isosurface… Keep defaults, click Dismiss Click Draw

33 VisIt Create isosurfaces Click Plots -> Pseudocolor -> scalars Click Operators -> Isosurface Click OpAtts -> Isosurface… Keep defaults, click Dismiss Click Draw

34 VisIt Create isosurfaces Click Plots -> Pseudocolor -> scalars Click Operators -> Isosurface Click OpAtts -> Isosurface… Keep defaults, click Dismiss Click Draw

35 VisIt Create isosurfaces Click Plots -> Pseudocolor -> scalars Click Operators -> Isosurface Click OpAtts -> Isosurface… Keep defaults, click Dismiss Click Draw

36 VisIt Create isosurfaces Click Plots -> Pseudocolor -> scalars Click Operators -> Isosurface Click OpAtts -> Isosurface… Keep defaults, click Dismiss Click Draw

37 VisIt Clip isosurfaces Rotate view to +Y axis Click Operators -> Clip Click OpAtts -> Clip… Change Normal to 0 -1 0 Click Apply Click Dismiss

38 VisIt Clip isosurfaces Rotate view to +Y axis Click Operators -> Clip Click OpAtts -> Clip… Change Normal to 0 -1 0 Click Apply Click Dismiss

39 VisIt Clip isosurfaces Rotate view to +Y axis Click Operators -> Clip Click OpAtts -> Clip… Change Normal to 0 -1 0 Click Apply Click Dismiss

40 VisIt Clip isosurfaces Rotate view to +Y axis Click Operators -> Clip Click OpAtts -> Clip… Change Normal to 0 -1 0 Click Apply Click Dismiss

41 VisIt Clip isosurfaces Rotate view to +Y axis Click Operators -> Clip Click OpAtts -> Clip… Change Normal to 0 -1 0 Click Apply Click Dismiss

42 VisIt Clip isosurfaces Rotate view to +Y axis Click Operators -> Clip Click OpAtts -> Clip… Change Normal to 0 -1 0 Click Apply Click Dismiss


Download ppt "Advanced Scientific Visualization Laboratory Paul Navrátil 28 May 2009."

Similar presentations


Ads by Google