The particular version of AVS/Express to be ported is the AVS/Express Distributed Data Renderer (DDR) Edition, version 7.2.1. This product provides parallel module computation by allowing the AVS modules to execute on decomposed datasets, whereby the dataset is split in to smaller domains of data and distributed to a number of compute processes which then process the data according to the AVS modules in use. In addition to the standard AVS Software and OpenGL renderers, the DDR edition also provides a parallel renderer (referred to as the MPU renderer for historical reasons) that is capable of rendering the geometry generated by the parallel modules. Separate rendering processes receive geometry from particular compute processes, render an image of the geometry and then composite the images together to form a final visualization of the entire dataset. This technique is referred to as sort-last rendering  and allows a dataset to be rendered that exceeds the capabilities of a single rendering process (whether that be a GPU or software renderer). This version of the product is able to render data on distributed compute nodes where no GPU hardware is available using the MesaGL  software implementation of OpenGL .
A motivation for this project is that the visualization of large datasets has long been a bottleneck in applications where validation of data acquisition from scientific equipment is required at an early stage. Such validation would allow correctness of methods (such as the set up of a physical experiment) to be determined prior to further computational or imaging-machine resources being spent. This is particularly important to our target end users in Materials Science. Despite advances in GPU hardware, researchers are able to produce datasets that are too large to visualize using modern graphics workstations and clusters. An alternative to multi-GPU systems is to use the large memory and core counts offered by supercomputers such as HECToR even if GPU hardware is not available.