task 10.3: remote visualization / luigi calori. 2 remote visualization concepts remote visualization...
TRANSCRIPT
Task 10.3: Remote Visualization / Luigi Calori
2
Remote Visualization concepts
• Remote Visualization tecniques address the problem of providing system and applications enabling remote users to interactively visualize large data sets residing on centralized data infrastructure .
• Data could be collected and shared centrally or produced on HPC systems by numerical simulations codes.
• remote users could possibly connecting from home (low speed WAN networks).
• The traditional approach to visualizatin has been to transfer the remote data to a local workstation and then run locally a visualization application. This approach has several drawbacks:
• The local system has to be powerful enough to handle data
• The latency is concentrated into the initial data transfer step
• The need of explicit complete data transfer prevent tight coupling between simulation and visualization applications ( steering)
3
Remote Visualization approaches
• Remote Visualization solutions mainly differentiate by which kind of information travel thru the wire and weather the solution is application transparent.
4
Survey activity
• From the former table, only the colored options have been surveyed.
• Transparent filesystem mount through sshfs on Wan line is quite unstable and anyway is not specific to Remote Visualization but to general data access.
• Regarding applications able to be deployed as client/server, such as ParaView, Visit, StarCCM, they have been scouted but not tested thorougly, as the deployment is somewhat complicated as the two sides, one on the HPC platform and the other on the user workstation must be usually kept in sync and deployed separately.
• Focus on application neutral, VNC-like systems
Perform scientific visualization on large amounts of data produced on HPC systemso without moving datao using high performance machine
Data GPU?
Rendering
Data
GPU
Rendering
2D images
6
Survey activity: VNCA VNC system consists of a client, a server, and a communication protocol
•The VNC server is the program on the machine that shares its screen. The server passively allows the client to take control of it.
•The VNC client (or viewer) is the program that watches, controls, and interacts with the server. The client controls the server.
•The VNC protocol (RFB) is very simple, based on one graphic primitive from server to client ("Put a rectangle of pixel data at the specified X,Y position") and event messages from client to server.
•The server receive from client input events and dispatch them to running applications, it also control which parts of the screen have been updated by the running apps, grab them from the Framebuffer, compress them and provide them to the client(s).
•More than one client can connect to the same server sharing the framebuffer and controlling applications (desktop sharing) by each one providing input control events.
7
Survey activity: VNCDifferent VNC implementations•Thin clients
•Commercial• RealVNC: http://www.realvnc.com/• TightVNC: http://tightvnc.com/• UltraVNC: http://www.uvnc.com/• TeamViewer: http://www.teamviewer.com
•Open Source• VirtualGL:http://www.virtualgl.org/Main/HomePage• TurboVNC: http://sourceforge.net/projects/virtualgl/files/TurboVNC/• TigerVNC:http://sourceforge.net/apps/mediawiki/tigervnc/index.php?title=Main_Page
•Html5•noVNC: http://kanaka.github.io/noVNC/•Guacamole: http://guac-dev.org/
8
Survey activity: Other proprietary solutions•Nvidia (projet Monterey):http://www.nvidia.com/object/enterprise-virtualization.html
– Promise very low latency– Support GPU virtualization– Support OpenGl, DirectX,Cuda– Integrates with virtualiaztion vendors Citrix,Vmware– First support for Windows OS– Integrated appliance:http://www.nvidia.com/object/visual-computing-appliance.html– targets also remote cloud gaming market:http://www.nvidia.com/object/cloud-gaming.html
•PCoIP (Teradici):http://www.teradici.com/pcoip-technology.php– Completely transparent to applications and Operating System– Low est latency– High end system (require additional hw)– 1:1 connection: only one client per workstation
Nice DCV:http://www.nice-software.com/products/dcv
9
Survey of partner visualization services
• Results of scouting activities seems to indicate that:• VirtualGL / TurboVNC sw stack is currently a common building block for
remote visualization services supporting also wide area networks Has been adopted by
• CINECA (integrated into Remote Connection Manger pilot)
• SARA (used for high resolution remote connections)
• RZG
• PCoIP (TeraDici) has been adopted and deployed at LUND as an High end solution for campus wide fully transparent, OS-independent Remote visualization stack
• Other system like NICE DCV are still used for specific users /applications (Cineca )
10
Evaluation of partner visualization services
• In order to evaluate remote visualization services:
• Remote test accounts to other partners has been granted to allow cross-testing and qualitative evaluation of the whole service
• Some repeatable test sequence is under definition to estimate quantitative indicators correlated to prceived performance for VNC stacks ( real frame-rate)
• Other procedures for latency measurement, suited also for HW based systems as PCoIP is under evaluation.
11
Dissemination:
Cientific
• 2012• In june , Bologna key parners of Task 10.3 took part in the Cineca
Scientific Visualization School ( organized within Prace framework)
• RZG introduced Visit visualization framework and presented theri visualitation experiences based on it
• SARA presenetd VirtualGL remote visualization stack
• CINECA presented the VirtualGL / TurboVNC deployment services recently deployed that has been used during the school lab session
• 2013• SARA
• Internal SURFsara workshop on visualization, Amsterdam, May 20th, 2013
• Several Collaboratorium demonstrations for external parties, in which the remote visualization cluster was promoted
• CINECA• 10-14 june, Milan Cineca Scientific Visualization summer school, presentation of
RCM: http://events.prace-ri.eu/conferenceDisplay.py?confId=128
12
• CINECA was willing to deploy its VirtualGL - TurboVNC based visualization service using a GPU-enabled computing cluster.
• this kind of deployment require that the visualization nodes are configured and administered as computing nodes :
• No inbound connection allowed from internet• No interactive (ssh) access allowed• Computing resources handled by job scheduler
(PBS)
Pilot projects: Remote Connection Manager
13
• CINECA deployment consist of some compute nodes which have the X11-GLX server enabled and that are assigned to specificically defined visualization PBS queues: in order to facilitate access:
• A python based server side script takes care of simplifying vncserver job creation,inspection and removal
• A cross platform, client side, python based GUI handle all client side operations related to connection management.
• This client side python application has been packaged as a single executable including TurboVNC client
Remote Connection Manager cont.
NODES:2 PLX compute nodes (96, 97) (no inbound connection):
o Processors: 2 six-cores Intel(R) Xeon(R) CPU E5645 2.40 GHz per node
o GPU: 2 NVIDIA Tesla M2070Q per nodeo RAM: 48 GB/node
2 RVN (01,05) (inbound connection and login allowed):o Processors: 2 Quad-core Intel(R) Xeon(R) CPU X5570
2.93GHz per nodeo GPU: 2 NVIDIA QuadroPlex 2200 S4o RAM: 128 GB/node
The infrastructure is scalable: more nodes can be addedCommon home and scratch filesystem mounted by login
node, compute nodes and RVN nodes
15
The setup of VNC connection from user desktop / laptop to the compute node running the VNC server job results to be quite cumbersome (Job submission + ssh tunneling on cluster login node)
Remote Connection Manager cont.
RCM: login
RCM: display info
RCM: new display
RCM: new display
RCM: connect & kill
21
• RCM has been upgraded to use the new versions of the VirtualGL / TurboVNC stack
• RCM has also been ported to Fermi Tier 0 Blue Gene Q front end nodes to allow for limited (no OpenGL) interactive post-processing (LoadLeveler support)
• RCM has also be extended to allow direct connection (ssh, no scheduler) to support industry customers who want complete control on the viz node
RCM: upgrades
Viz Software on PLX
• Paraview 3.14 - http://www.paraview.org/
• Blender - http://www.blender.org/• Vaa3D - http://www.vaa3d.org/
• Tecplot (under license) - http://www.tecplot.org/
• StarCCM+ (under license)- http://www.cd-adapco.com/products/star_ccm_plus/
• Ansys (under license) - http://www.ansys.com
References
• RCM user documentation and download page: http://www.hpc.cineca.it/content/remote-visualization
• RCM code base: https://hpc-forge.cineca.it/svn/RemoteGraph/trunk/
• VirtualGL: http://www.virtualgl.org/
• TurboVNC: http://virtualgl.svn.sourceforge.net/viewvc/virtualgl/vnc/trunk/doc/index.html
24
Challenges: Data movement
How to visualize large data produced in exascale Tier 0 machines?
File system sharing between visualization cluster and Tier 0 machines?
In situ visualization: how to integrate visualization / postprocessing into simulation code?