A fast parallel marching-cubes implementation on the Fujitsu AP1000

A fast parallel marching-cubes implementation on the Fujitsu AP1000
复制标题

DOI:
--
复制
发表时间:
1992
期刊:
--
影响因子:
--
通讯作者:
P. Mackerras
P. Mackerras
中科院分区:
其他
文献类型:
--
作者:
P. Mackerras

文献摘要

被引文献

相似文献

并行计算机有望实现超大数据集的交互式可视化。实现这一承诺取决于并行算法和实现的开发,这些算法和实现可以有效地利用并行计算机的能力。幸运的是,许多可视化算法涉及对大量数据项执行独立计算,这使得它们特别适合并行化。本报告描述了在 Fujitsu AP1000 上基于快速串行 Marching Cubes 实现的 Marching Cubes 等值面算法的高性能实现。在 128 处理器 AP1000 上,我们的实现通常可以在不到 0.5 秒的时间内(取决于生成的多边形数量)生成合理大小的体积(例如 260 万个数据点)的等值面。 Fujitsu AP1000 是一款实验性大型 MIMD(多指令、多数据)并行计算机,由 64 至 1024 个处理单元组成,通过三个高带宽、低延迟通信网络连接。每个处理单元都是一个具有 16MB 内存的 SPARC 处理器。单元处理器不共享内存。我们的经验表明,Marching Cubes 算法的并行性很好;事实上,我们获得的加速实际上大于处理器的数量(大概是由于缓存效应)。然而,如果要避免大幅减速,则有必要对生成的表面进行任何进一步的并行处理(例如渲染或连接体积的评估)。
Parallel computers hold the promise of enabling interactive visualization of very large data sets. Ful lling this promise depends on the development of parallel algorithms and implementations which can e ciently 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 speedupwe obtain is actually greater than the number of processors (presumably due to cache e ects). 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.