Nothing Special   »   [go: up one dir, main page]

skip to main content
10.5555/2386208.2386222guideproceedingsArticle/Chapter ViewAbstractPublication PagesConference Proceedingsacm-pubtype
Article

Cache-efficient parallel isosurface extraction for shared cache multicores

Published: 02 May 2010 Publication History

Abstract

This paper proposes to revisit isosurface extraction algorithms taking into consideration two specific aspects of recent multicore architectures: their intrinsic parallelism associated with the presence of multiple computing cores and their cache hierarchy that often includes private caches as well as caches shared between all cores. Taking advantage of these shared caches require adapting the parallelization scheme to make the core collaborate on cache usage and not compete for it, which can impair performance. We propose to have cores working on independent but close data sets that can all fit in the shared cache. We propose two shared cache aware parallel isosurface algorithms, one based on marching tetrahedra, and one using a min-max tree as acceleration data structure. We theoretically prove that in both cases the number of cache misses is the same as for the sequential algorithm for the same cache size. The algorithms are based on the FastCOL cache-oblivious data layout for irregular meshes. The CO layout also enables to build a very compact min-max tree that leads to a reduced number of cache misses. Experiments confirm the interest of these shared cache aware isosurface algorithms, the performance gain increasing as the shared cache size to core number ratio decreases.

References

[1]
ARGE L., BRODAL G., FAGERBERG R.: Cache oblivious data structures. Handbook on Data Structures and Applications (2004).
[2]
BROWNE S., DONGARRA J., GARNER N., HO G., MUCCI P.: A portable programming interface for performance evaluation on modern processors. The International Journal of High Performance Computing Applications 14 (2000), 189-204.
[3]
BLELLOCH G. E., GIBBONS P. B.: Effectively sharing a cache among threads. In Proceedings of SPAA'04 (2004), pp. 235-244.
[4]
BAJAJ C. L., PASCUCCI V., SCHIKORE D. R.: Fast isocontouring for improved interactivity. In Proceedings of VVS'96 (1996), p. 39.
[5]
CHEN S., GIBBONS P. B., KOZUCH M., ILEIOS LIASKOVITIS V., AILAMAKI A., BLELLOCH G. E., FALSAFI B., FIX L., HARDAVELLAS N., MOWRY T. C., WILKERSON C.: Scheduling threads for constructive cache sharing on cmps. In Proceedings of SPAA'07 (2007), pp. 105-115.
[6]
CIGNONI P., MONTANI C., PUPPO E., SCOPIGNO R.: Optimal isosurface extraction from irregular volume data. In Proceedings of VVS'96 (1996), pp. 31-38.
[7]
CHIANG Y.-J., SILVA C.: I/O optimal isosurface extraction. In Proceedings of Visualization'97 (1997), pp. 293-300.
[8]
CHIANG Y.-J., SILVA C. T.: External memory techniques for isosurface extraction in scientific visualization. In External memory algorithms (Boston, MA, USA, 1999), American Mathematical Society, pp. 247-277.
[9]
CHIANG Y.-J., SILVA C., SCHROEDER W.: Interactive out-of-core isosurface extraction. In Proceedings of Visualization'98 (1998), pp. 167-174.
[10]
FRIGO M., LEISERSON C. E., PROKOP H., RAMACHANDRAN S.: Cache-Oblivious Algorithms. In Proceedings of the 40th Annual Symposium on Foundations of Computer Science (1999), p. 285.
[11]
HASSIDIM A.: Cache replacement policies for multicore processors. In Proceedings of Innovations in Computer Science (2010).
[12]
PASCUCCI V., FRANK R.: Global Static Indexing for Real-Time Exploration of Very Large Regular Grids. In Proceedings of Supercomputing'01 (2001), pp. 45-45.
[13]
SUTTON P. M., HANSEN C. D., WEI SHEN H., SCHIKORE D.: A case study of isosurface extraction algorithm performance. In Data Visualization 2000 (2000), Springer, pp. 259-268.
[14]
SCHROEDER W., MARTIN K., LORENSEN B.: The Visualization Toolkit, An Object-Oriented Approach To 3D Graphics, 3rd ed. Kitware Inc., 2004.
[15]
TCHIBOUKDJIAN M., DANJEAN V., RAFFIN B.: Binary mesh partitioning for cache-efficient visualization. IEEE Transactions on Visualization and Computer Graphics 99, PrePrints (2010). http://moais.imag.fr/membres/ marc.tchiboukdjian/pub/tvcg10.pdf.
[16]
WALD I., FRIEDRICH H., MARMITT G., SLUSALLEK P., SEIDEL H.-P.: Faster isosurface ray tracing using implicit kd-trees. IEEE Transactions on Visualization and Computer Graphics 11 (2005), 562-572.
[17]
WANG Q., JAJA J., VARSHNEY A.: An efficient and scalable parallel algorithm for out-of-core isosurface extraction and rendering. J. Parallel Distrib. Comput. 67, 5 (2007), 592-603.
[18]
WILHELMS J., VAN GELDER A.: Octrees for faster isosurface generation. ACM Trans. Graph. 11, 3 (1992), 201-227.
[19]
YOON S.-E., LINDSTROM P., PASCUCCI V., MANOCHA D.: Cache-oblivious mesh layouts. In ACM SIGGRAPH (2005), pp. 886-893.
[20]
YOON S.-E., MANOCHA D.: Cache-Efficient Layouts of Bounding Volume Hierarchies. Computer Graphics Forum 25, 3 (2006), 507-516.
[21]
ZHANG H., NEWMAN T. S., ZHANG X.: Case study of multithreaded in-core isosurface extraction algorithms. In EGPGV (2004), pp. 83-92.

Cited By

View all
  • (2015)Scalable and efficient implementation of 3d unstructured meshes computation: a case study on matrix assemblyACM SIGPLAN Notices10.1145/2858788.268851750:8(120-129)Online publication date: 24-Jan-2015
  • (2015)Scalable and efficient implementation of 3d unstructured meshes computation: a case study on matrix assemblyProceedings of the 20th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming10.1145/2688500.2688517(120-129)Online publication date: 24-Jan-2015
  • (2013)vtkSMPProceedings of the 13th Eurographics Symposium on Parallel Graphics and Visualization10.5555/2602119.2602127(41-48)Online publication date: 4-May-2013

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image Guide Proceedings
EG PGV'10: Proceedings of the 10th Eurographics conference on Parallel Graphics and Visualization
May 2010
140 pages
ISBN:9783905674217

Publisher

Eurographics Association

Goslar, Germany

Publication History

Published: 02 May 2010

Qualifiers

  • Article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 08 Dec 2024

Other Metrics

Citations

Cited By

View all
  • (2015)Scalable and efficient implementation of 3d unstructured meshes computation: a case study on matrix assemblyACM SIGPLAN Notices10.1145/2858788.268851750:8(120-129)Online publication date: 24-Jan-2015
  • (2015)Scalable and efficient implementation of 3d unstructured meshes computation: a case study on matrix assemblyProceedings of the 20th ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming10.1145/2688500.2688517(120-129)Online publication date: 24-Jan-2015
  • (2013)vtkSMPProceedings of the 13th Eurographics Symposium on Parallel Graphics and Visualization10.5555/2602119.2602127(41-48)Online publication date: 4-May-2013

View Options

View options

Login options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media