5 | | Usage of the '''dvr'''-software requires installation of additional software components ('''dvr'''-library, streaming-server, browser-plugin) which are not part of the PALM distribution. Currently (May 2009), this software is only available on the HLRN/IMUK-system and partly on RIAM's NEC-system. If you are interested in using '''dvr''' on your system, please contact the PALM developers. [[BR]] [[BR]] |
6 | | |
7 | | == General remarks: == |
8 | | |
9 | | The '''dvr''' software was originally developed by [http://www.rrzn.uni-hannover.de RRZN] staff (Stephan Olbrich, Carsten Chmielewski). Meanwhile, further development under the name '''dsvr''' is done by the University of Hamburg (Prof. Stephan Olbrich, see [http://www.dsvr-software.de/ webpage]). It allows to create 3d-animations with PALM, which can be displayed via a special plugin for internet browsers. With suitable graphic hardware (e.g. NVIDIA quattro FX cards) even stereoscopic views are possible. |
10 | | |
11 | | In contrast to the other kinds of visualization output realized in PALM (1d-, 2d-, 3d-netCDF output), where the data is output in a common format suitable for many kinds of post-processing visualization software, the creation of animations via '''dvr''' software is integrated in PALM, i.e. respective routines are directly called within the PALM code. The '''dvr''' routines then output the graphic data (so-called plot-primitives, e.g. polygones of isosurfaces) in a special '''dvr''' format. Since the '''dvr''' software is parallelized (i.e. each PE calculates the graphic data for its subdomain), the visualization of simulations with very large numbers of grid points is possible (which so far failed because of several problems: volume of the raw data, which rapidly may sum-up to several Terabytes; main memory size needed for graphic workstations, on which the visualization is to be carried out; the insufficient scalar (!) computing speed of commercial graphic software in case of such large numbers of grid points). |
12 | | [[BR]] [[BR]] |
13 | | |
14 | | == Using dvr with PALM: == |
15 | | |
16 | | The calls of the '''dvr''' routines are contained within a PALM software package. To use this package, the additional option {{{-p 'dvrp_graphics'}}} has to be given in the '''mrun''' call. This automatically links the required libraries. Steering of the plot output is done via the [wiki:/doc/app/dvrpar dvr package parameters]. In contrast to all other PALM output, '''dvr''' graphic data are not output to local files but directly to a special remote computer which is defined via the package parameter [wiki:/doc/app/dvrpar#dvrp_host dvrp_host]. If the default values of the '''dvr''' parameters are used, data are send to a so-called streaming server at the RRZN. Apart from graphic data an additional html-file is created, which can be opened by an internet browser to view the data (a special '''dvr''' plugin is required for this). [[BR]] [[BR]] |
17 | | |
18 | | == Quickstart guide for using dvrp on the HLRN/IMUK-system (Jun 2012): == |
19 | | |
20 | | In the following, please replace the string {{{<UNAME>}}} with your IMUK username, wherever it appears. Please also replace the string {{{<UDIR>}}} with a subdirectory name of your choice. |
21 | | |
22 | | 1. The '''dvr'''-library has to be used on the HLRN-system. There are two versions available. In case that you are using mpt-MPI, add the following define statements for environment variables to the configuration file ({{{.mrun.config}}}): |
23 | | {{{ |
24 | | %dvr_inc -I/home/h/niksiraa/dvr_mpt/lib lcsgih parallel |
25 | | %dvr_lib -L/home/h/niksiraa/dvr_mpt/lib:-lDVRP2:-lftp lcsgih parallel |
26 | | }}} |
27 | | If mvapich2 is used, {{{dvr_mpt}}} has to be replaced by {{{dvr_mvapich2}}}. |
28 | | |
29 | | 2. Add the '''dvr'''-steering parameters to your NAMELIST-parameter file, e.g. |
30 | | {{{ |
31 | | &d3par end_time = 3600.0, |
32 | | ... / |
33 | | |
34 | | &dvrp_graphics_par dvrp_username = '<UNAME>', |
35 | | dvrp_host = '130.75.105.6', |
36 | | dvrp_directory = '<UNAME>/<UDIR>', ... / |
37 | | }}} |
38 | | For other '''dvr'''-parameters see [wiki:/doc/app/dvrpar list of dvr package parameters]. An example parameter file can be found in the repository under [source:palm/trunk/EXAMPLES/dvr]. |
39 | | |
40 | | 3. Ask the IMUK system operator (Notker Fechner) to mount the filesystem {{{/dvrdata}}} on your local computer. |
41 | | |
42 | | 4. On the IMUK-system (your local computer), create a subdirectory in which the '''dvr'''-data are stored and give it access permit for group palm. |
43 | | {{{ |
44 | | mkdir /dvrdata/<UNAME> |
45 | | chmod g+rwx /dvrdata/<UNAME> |
46 | | }}} |
47 | | Steps 3. and 4. have to be done only once, before '''dvr''' is used for the first time. |
48 | | |
49 | | 5. Submit the job with '''mrun'''-command |
50 | | {{{ |
51 | | mrun .... -p dvrp_graphics .... |
52 | | }}} |
53 | | |
54 | | 6. After the job has finished, the '''dvr'''-output can be found on the IMUK-cluster in a subdirectory under {{{/dvrdata}}}. The name of the subdirectory is determined by the '''dvr'''-parameter [wiki:/doc/app/dvrpar#dvrp_directory dvrp_directory] (see above), e.g. if {{{dvrp_directory}}} = '' '<UNAME>/movie_1' '' has been set, the '''dvr'''-data are stored under {{{/dvrdata/<UNAME>/movie_1}}}. |
55 | | |
56 | | 7. Change to this subdirectory (e.g. {{{/dvrdata/<UNAME>/movie_1}}}) and enter the command |
57 | | {{{ |
58 | | process_dvr_output |
59 | | }}} |
60 | | It will create a file with name {{{all_streams_streaming.html}}}. |
61 | | |
62 | | 8. Call the firefox-browser (i.e. enter the command {{{firefox}}}) and open the file |
63 | | {{{all_streams_streaming.html}}}. [[BR]] [[BR]] |
64 | | '''Current limitations (Jun 12):''' The dvr-plugin only works on SUSE 12.1 using the firefox browser (13.0). |
65 | | Before starting firefox, enter the command |
66 | | {{{ |
67 | | export LD_PRELOAD=/usr/lib64/libXm.so.4.0.2 |
68 | | }}} |
69 | | Next, type |
70 | | {{{ |
71 | | about:config |
72 | | }}} |
73 | | in the URL line of firefox, ignore the warning, and search for line ''dom.ipc.plugins.enabled''. Click on this line with right mouse button and toggle value to ''false''. |
74 | | [[BR]] [[BR]] |
75 | | |
76 | | == Further features: == |
77 | | |
78 | | The script [source:palm/trunk/SCRIPTS/process_dvr_output process_dvr_output] has additional options: |
79 | | |
80 | | ||='''Parameter Name''' =||='''Explanation''' =|| |
81 | | |---------------- |
82 | | {{{#!td style="vertical-align:top;width:50px" |
83 | | -s |
84 | | }}} |
85 | | {{{#!td style="vertical-align:top" |
86 | | Create sequence output: all streams (and static scenes) are collected to one sequence (one static scene), which can be displayed with a browser without using the streaming server (the so-called sequence mode). This allows e.g. to show animations on a notebook without beeing connected to the internet. When the script is called with this option, the sequence is generated in subdirectory {{{sequence_data}}}. Copy this subdirectory and the file {{{all_streams_sequence.html}}} to a directory on your local computer and open the file {{{all_streams_sequence.html}}} with your browser. For this, you will need to install the the '''dvr'''-plugin (see [http://www.dsvr-software.de/dsvr webpage of the dsvr-software]) on your local computer, which is also available for Windows. |
87 | | }}} |
88 | | |---------------- |
89 | | {{{#!td style="vertical-align:top;width:50px" |
90 | | -a |
91 | | }}} |
92 | | {{{#!td style="vertical-align:top" |
93 | | Acceleration factor: if, in case of sequence mode, the performance of the animation is to slow, you can accelerate it. E.g., by using {{{"-a 2"}}}, only every second frame of the original streams will be used for the sequence. |
94 | | }}} |
| 5 | The DVR graphic software is no longer part of the default code. |