Mackerras, Paul2003-07-112004-05-192011-01-052004-05-192011-01-051992http://hdl.handle.net/1885/40800http://digitalcollections.anu.edu.au/handle/1885/40800Parallel computers hold the promise of enabling interactive visualization of very large data sets. Fulfilling this promise depends on the development of parallel algorithms and implementations which can efficiently utilize the power of a parallel computer. Fortunately, many visualization algorithms involve performing independent computations on a large collection of data items, making them particularly suitable for parallelization. This report describes a high-performance implementation of the Marching Cubes isosurface algorithm on the Fujitsu AP1000, based on a fast serial Marching Cubes implementation. On a 128-processor AP1000, our implementation can generate an isosurface for a volume of reasonable size (e.g. 2.6 million data points) in typically less than 0.5 seconds (depending on the number of polygons generated). The Fujitsu AP1000 is an experimental large-scale MIMD (multiple-instruction, multiple data) parallel computer, composed of between 64 and 1024 processing cells connected by three high bandwidth, low latency communications networks. Each processing cell is a SPARC processor with 16MB of memory. The cell processors do not share memory. Our experience indicates that the Marching Cubes algorithm parallelizes well; in fact the speedup we obtain is actually greater than the number of processors (presumably due to cache effects). However, it is necessary to perform any further processing of the generated surface (such as rendering, or evaluation of connected volumes) in parallel if massive slowdowns are to be avoided.165890 bytes356 bytesapplication/pdfapplication/octet-streamen-AUparallelizationMarching Cubes isosurface algorithmFujitsu AP1000implementationMIMDMarching Cubes algorithmserial implementationparallel implementationZ-buffer rendererdata distributionwork distributionA fast parallel marching-cubes implementation on the Fujitsu AP10001992