Visualization: Difference between revisions

Jump to navigation Jump to search
→‎GPU-based client-server visualization on Cedar and Graham: Filled in GPU client-server visualization section.
(→‎GPU-based client-server visualization on Cedar and Graham: Added a new section on GPU client-server rendering, added an intro paragraph to CPU rendering.)
Tags: Mobile edit Mobile web edit
(→‎GPU-based client-server visualization on Cedar and Graham: Filled in GPU client-server visualization section.)
Tags: Mobile edit Mobile web edit
Line 30: Line 30:
== GPU-based client-server visualization on Cedar and Graham ==
== GPU-based client-server visualization on Cedar and Graham ==


Coming shortly.
Cedar and Graham have a number of interactive GPU nodes that can be used for remote ParaView client-server visualization. To get started, install ParaView 5.4.x (where "x" could be anything) on your laptop as you need the same version as on the cluster. Log in to Cedar or Graham and start a serial GPU interactive job:
 
  salloc --time=1:00:0 --ntasks=1 --gres=gpu:1 --account=xwp-462-aa
 
The job should automatically start on one of GPU interactive nodes. Once you get an interactive prompt (that is part of your job), load the ParaView GPU+EGL module, unset your display variable so that ParaView does not attempt to use the X11 rendering context, and start the ParaView server:
 
  module load paraview-offscreen-gpu/5.4.0
  unset DISPLAY
  pvserver
 
Wait for the server to be ready to accept client connection:
 
Waiting for client...
Connection URL: cs://cdr347.int.cedar.computecanada.ca:11111
Accepting connection(s): cdr347.int.cedar.computecanada.ca:11111
 
Take a note of the node (in this case cdr347) and the port (usually 11111) and then in another terminal on your laptop (on Mac/Linux; in Windows use a terminal emulator) link the port 11111 on your laptop and the same port on the compute node (make sure to use the correct compute node):
 
  ssh cedar.computecanada.ca -L 11111:cdr347:11111
 
Start ParaView on your laptop, go to File -> Connect (or click on the green Connect button in the toolbar) and then click Add Server. You'll need to point ParaView to your local port 11111, so you can do something like name = cedar, server type = Client/Server, host = localhost, port = 11111, then click Configure, then select Manual and click Save. Once the remote is added to the configuration, simply select the server from the list and click Connect. The first terminal window that was saying "Accepting connection ..." will now say "Client connected".
 
Then open a file in ParaView (it'll point you to the remote filesystem) and visualize it as usual. An important setting in ParaView's preferences is Render View -> Remote/Parallel Rendering Options -> Remote Render Threshold. If you set it to default (20MB) or similar, small rendering will be done on your laptop's GPU, the rotation with a mouse will be fast, but anything modestly intensive (under 20MB) will be shipped to your laptop and -- depending on your connection -- visualization might be slow. If you set it to 0MB, all rendering will be remote including rotation, so you'll be really using the cluster's GPU for everything, good for large data processing but not so good for interactivity. You'll need to play with this setting to see what works best for you.


== CPU-based client-server visualization on Cedar and Graham == <!--T:43-->
== CPU-based client-server visualization on Cedar and Graham == <!--T:43-->
cc_staff
292

edits

Navigation menu