Advanced Scientific Computing

 

Parallel Visualization of Large Data Sets
R. Bennett, M. McGuigan, G. Smith, J. Spiletic, S. Tomov

Fig. 1.  Image from a Probabilistic Mouse Brain Atlas....Click to enlarge image
In conjunction with the BNL Medical Department, we are developing a Digital Mouse Brain Atlas [1] that can be used by researchers as a standard reference to map anatomical regions and function associated with imaging studies. For example, in Figure 1 we show a probabilistic Atlas where different colors represent different regions of the mouse brain and darker shades indicate less probable results from an imaging study.

Parallel visualization allows one to handle scientific data sets that are too large or render too slFig. 2.  Parallel visualization of the thigh bone of a rat used in osteoporosis studies.  Click to enlarge image.owly on single processor systems. In [2] we implemented interactive parallel visualization by extending popular APIs such as Open Inventor and VTK to support commodity-based clusters. In this work we used Chromium, a popular software tool that provides scalable display technology, to implement our parallel rendering. Figure 2 shows a result from the parallel visualization on four processors of an X-ray tomograph taken of the thigh bone of a rat used in osteoporosis studies. The different colored isosurfaces are handled by separate processors.

The high performance (40Gflops peak) and low cost ($400) of current graphics cards have given rise to great interest in using Graphics Processing Units (GPUs) for non-graphics scientific computations. In [3] probability-based simulations were implemented on the GPUs and their performance was benchmaFig. 3.  Graphics card computation of 3D Ising model.  Click to enlarge image.rked and compared against the CPU with an overall 3 times speedup for the GPU. Such probability-based simulations have a wide range of applications in physics, biology, chemistry and finance. They are computationally intensive and lend themselves naturally to lattice implementations on GPUs. Specifically we demonstrate the techniques using Monte Carlo simulation of the Ising spin model used in physics to study phase transitions in magnetic materials. The GPU Monte Carlo implementation used Cg (C for graphics) fragment programs, which are executed on the GPU by an OpenGL application. We use a standard "Dynamic texturing" programming model, where the computational domain is modeled by a texture, then a GPU fragment program uses the texture to render an image in an off-screen buffer, and finally the texture is updated from the resulting image. Special care is taken (on algorithmic and data representation level) to organize the computations in terms of 4D vector operations, which is important in the current GPUs in order to extract maximal performance. Figure 3 shows a direct visualization and computation on the graphics card of the 3D Ising model with red indicating spin up and blue spin down.


 

References

  • [1] Benveniste, H., BlackLand, S.J., Ma, Y., Hof, P., Bennett, R., McGuigan, M., and Slatest, L. A three-dimensional digital Atlas database of the adult C57BL/6J mouse brain by magnetic resonance microscopy. Neuroscience 135: 1203-1215 (2005).
  • [2] Tomov, S., Bennett, R., McGuigan, M., Peskin, A., Smith, G., and Spiletic, J. Application of interactive parallel visualization for commodity-based clusters using visualization APIs. Computers & Graphics 28(2): 273-278 (2004).
  • [3] Tomov, S., McGuigan, M., Bennett, R., Smith, G., and Spiletic, J. Benchmarking and implementation of probability-based simulations on programmable graphics cards. Computers & Graphics 29(1): 71-80 (2005).

 

Top of Page

Last Modified: January 31, 2008
Please forward all questions about this site to: Claire Lamberti