1.5. Other Features

Server-of-Servers

A special server-of-servers (SOS) can be used in place of a normal server if you have partitioned data or utilize the auto-decompose feature. This SOS acts like a normal server to the client, but starts and deals with multiple servers, each of which handle their portion of the dataset. This provides significant parallel advantage for large datasets.

See Server-of-Server Casefile Format.

Virtual Reality

EnSight is capable of running multi-GPU, virtual reality and distributed rendering modes.

See Utility Programs.

Command Language

Each action performed with the graphical user interface has a corresponding EnSight command. A session file is always being saved to aid in recovery from a mistake or a program crash. The user will be prompted upon restart, after a crash, whether or not to use a recovery file to restore the session. The command language is human-readable and can be modified. Command files can be played all the way through, or you can choose to stop the file and step through it line-by-line.

See Record and Play Command (Journal) Files.

Python

For more powerful scripting, EnSight supports the Python programming language. The EnSight Python implementation includes every EnSight command as well as looping, conditionals, and a large library of standard utilities.

See EnSight Python Interpreter.

Batch Processing

EnSight can be run in batch bringing up no visible windows (user interface or graphics window) and producing output according to the command file processed. See Use Batch.

Context Files

You can define a context and apply it to similar datasets.

See Save & Restore Viewing Parameters.

Graphics

EnSight uses the OpenGL graphic libraries and is available on a multitude of hardware platforms. The rendering can be done through the hardware or can be performed in software.

Parallel Computation

EnSight supports shared-memory parallel computation via POSIX threads. Threads are used to accelerate the computation of streamlines, pathlines, clips, isosurfaces, and other compute-intensive operations.

See Setup For Parallel Computation.

Distributed Memory Parallel Computation

EnSight supports distributed memory parallel computations (clusters) via server-of-server operations. The data decomposition may either be done by you or can be done on the fly.

Macros

You can define macros tied to mouse buttons or keyboard keys to automate actions you frequently perform.

Saving and Archiving

You can save the entire current status of EnSight for later use, and can save other entities as well (including the geometry of created parts for use by your analysis software).

See Archive Files.

Environment Variables

You can control a number of aspects of EnSight (both client and server) with environment variables.

(See Use Environment Variables).

Updated Launch Scripts Names

To achieve more consistency between Linux and Windows launch scripts, Linux script names have been modified to be consistent and follow a convention. The ‘.’ denotes an extension, and not used more than once in a filename. The “_” is used to denote word separation, but not an extension. For example, ensight.server is now ensight_server on both Windows and Linux. This should not affect end-user utilization, unless sites call directly the launch scripts (in which case modification may need to be made). The following changes to the filenames on Linux were made:

  • ensight.clientensight_client

  • ensight.collabhubensight_collabhub

  • ensight.dtrunensight_dtrun

  • ensight.launcherensight_launcher

  • ensight.serverensight_server

  • ensight.server.envensight_server_env

  • ensight232.clientensight_client

  • ensight232.collabhubensight_collabhub

  • ensight232.dtrunensight_dtrun

  • ensight232.launcherensight_launcher

  • ensight232.serverensight_server

  • ensight232.server.envensight_server_env