当前位置:文库下载 > 所有分类 > MovieMaker A Parallel Movie-Making Software for Large Scale Simulations
侵权投诉

MovieMaker A Parallel Movie-Making Software for Large Scale Simulations

We have developed a parallel rendering software for scientific visualization of large-scale, three-dimensional, time development simulations. The goal of this software, MovieMaker, is to generate a movie, or a series of visualization images from totally on

a r X i v :p h y s i c s /0601211v 1 [p h y s i c s .g e o -p h ] 30 J a n 2006MovieMaker:A Parallel Movie-Making Software for Large Scale Simulations Hitoshi Uehara,Shintaro Kawahara,Nobuaki Ohno,Mikito Furuichi,Fumiaki Araki,and Akira Kageyama

Earth Simulator Center,

Japan Agency for Marine-Earth Science and Technology,

3173-25Showa-machi,Kanazawa-ku,

Yokohama,236-0001,Japan

We have developed a parallel rendering software for scientific visualization of large-scale,three-dimensional,time development simulations.The goal of this software,MovieMaker,is to generate a movie,or a series of visualization images from totally one TB-scale data within one night (or less than 12hours).The isocontouring,volume rendering,and streamlines are implemented.MovieMaker is a parallel program for the shared memory architecture with dynamic load balancing and overlapped disk I/O.I.INTRODUCTION The output data size of computer simulation is rapidly growing in accordance with the development of high per-formance computers.On Earth Simulator,it is not seldom that output data reaches more than 1GB per one time step for a single variable.Since a typical simulation may produce the output data for several variables for hundreds or sometimes thousands time steps,the whole data set by one simulation job can reach more than 1TB in total.Three dimensional,time development data should be visualized by a series of images,or a movie.However,making a scientific visualization movie from 1TB data in a reasonable time is beyond the ability of commercially available software today.Therefore,we have decided to develop such a software by ourselves.The goal of the system,“MovieMaker”,is to enable us to produce a movie from one TB simulation data within 12hours,or one night[1].When the whole data set consists of 1,024time steps with 1GB each,MovieMaker should be able to apply various visualization processes for each time step within about 40seconds.MovieMaker can handle two different kinds of visualization methods,the polygon-based method and the volume-based method.This is useful when one should visualize a mixed set of scalar and vector fields;for instance,the volume rendering for a pressure field and the streamlines for a flow vector field.This can be contrasted with most of other visualization tools developed so far [2,3,4].Another feature of MovieMaker is its simple disk I/O.Yu et al.[2]pointed out the disk I/O cost in the parallel rendering system.They solved this problem by using the parallel disk I/O.On the other hand,we use the standard non-parallel disk I/O.II.DEVELOPMENT OF MOVIEMAKER We have designed MovieMaker as a master/slave parallel rendering program for the shared-memory architecture.As shown in Figure 1,the master process and slave processes share the simulation data stored in the shared memory area.The master process performs the following multi-tasks;(i)to read a configuration file,(ii)to read the simulation data into shared-memory area;and (iii)to control the slave processes keeping a good load balance.Slave processes perform rendering tasks following commands sent from the master process and then return partial-images back to the master via shared memory.Interprocess communications (IPC)are performed with Message Passing Interface (MPI).We have achieved the dynamic load balancing in MovieMaker by an active monitoring and dynamic control of the slave processes.In addition to the dynamic load balancing,we have also implemented task overlapping for efficient parallel rendering.

Figure 2shows a flowchart of MovieMaker.While the slave processes are working for rendering tasks for one specific time step of the simulation data,the master process reads data of the next time step.Since it takes about a second to read a GB scale data for each time step from the hard disk drive,the total read time for the whole movie data may reach about an hour.We could hide this read time in the rendering time of MovieMaker by applying the task overlapping method.

MovieMaker is implemented in C++with OpenGL.OpenGL is used for the offscreen rendering.The present version of MovieMaker has three visualization methods:1)Volume-rendering;2)isocontouring;and 3)streamlines.The volume rendering and the isocontouring are implemented based on basic algorithms of the ray casting and the marching-cubes,respectively.These three visualization methods can be used in juxtaposition.Fine-tuning of each visualization method is possible by controlling visualization parameters specified by the configuration file.

第1页

猜你喜欢

TOP相关主题

返回顶部