Encyclopedia of Parallel Computing

2011 Edition
| Editors: David Padua

Space-Filling Curves

  • Michael Bader
  • Hans-Joachim Bungartz
  • Miriam Mehl
Reference work entry
DOI: https://doi.org/10.1007/978-0-387-09766-4_145


FASS (space-f illing, self-a voiding, s imple, and self-s imilar)-curves


A space-filling curve is a continuous and surjective mapping from a 1D parameter interval, say [0,1], onto a higher-dimensional domain, say the unit square in 2D or the unit cube in 3D. Although this, at first glance, seems to be of a purely mathematical interest, space-filling curves and their recursive construction process have obtained a broad impact on scientific computing in general and on the parallelization of numerical algorithms for spatially discretized problems in particular.



Space-filling curves (SFC) were presented at the end of the nineteenth century – first by Peano (1890) and Hilbert (1891), and later by Moore, Lebesgue, Sierpinski, and others. The idea that some curves (i.e., something actually one-dimensional) may completely cover an area or a volume sounds somewhat strange and formerly caused mathematicians to call them “topological monsters.” The...

This is a preview of subscription content, log in to check access.


  1. 1.
    Bader M, Schraufstetter S, Vigh CA, Behrens J (2008) Memory efficient adaptive mesh generation and implementation of multigrid algorithms using Sierpinski curves. Int J Comput Sci Eng 4(1):12–21Google Scholar
  2. 2.
    Bader M, Zenger Ch (2006) Cache oblivious matrix multiplication using an element ordering based on a Peano curve. Linear Algebra Appl 417(2–3):301–313zbMATHMathSciNetGoogle Scholar
  3. 3.
    Barnes J, Hut P (1986) A hierarchical O(n log n) force-calculation algorithm. Nature 324:446–449Google Scholar
  4. 4.
    Brázdová V, Bowler DR (2008) Automatic data distribution and load balancing with space-filling curves: implementation in conquest. J Phy Condens Matt 20Google Scholar
  5. 5.
    Brenk M, Bungartz H-J, Mehl M, Muntean IL, Neckel T, Weinzierl T (2008) Numerical simulation of particle transport in a drift ratchet. SIAM J Sci Comput 30(6):2777–2798zbMATHMathSciNetGoogle Scholar
  6. 6.
    Griebel M, Zumbusch GW (1999) Parallel multigrid in an adaptive PDE solver based on hashing and space-filling curves. Parallel Comput 25:827–843zbMATHMathSciNetGoogle Scholar
  7. 7.
    Günther F, Krahnke A, Langlotz M, Mehl M, Pögl M, Zenger Ch (2004) On the parallelization of a cache-optimal iterative solver for PDES based on hierarchical data structures and space-filling curves. In: Recent Advances in Parallel Virtual Machine and Message Passing Interface: 11th European PVM/MPI Users Group Meeting Budapest, Hungary, September 19–22, 2004. Proceedings, vol 3241 of Lecture Notes in Computer Science. Springer, HeidelbergGoogle Scholar
  8. 8.
    Günther F, Mehl M, Pögl M, Zenger C (2006) A cache-aware algorithm for PDEs on hierarchical data structures based on space-filling curves. SIAM J Sci Comput 28(5):1634–1650zbMATHMathSciNetGoogle Scholar
  9. 9.
    Hunter GM, Steiglitz K (1979) Operations on images using quad trees. IEEE Trans Pattern Analy Machine Intell PAMI-1(2):145–154Google Scholar
  10. 10.
    Jackings C, Tanimoto SL (1980) Octrees and their use in representing three-dimensional objects. Comp Graph Image Process 14(31):249–270Google Scholar
  11. 11.
    Rokhlin V, Greengard L (1987) A fast algorithms for particle simulations. J Comput Phys 73:325–348zbMATHMathSciNetGoogle Scholar
  12. 12.
    Meagher D (1980) Octree encoding: A new technique for the representation, manipulation and display of arbitrary 3d objects by computer. Technical Report, IPL-TR-80-111Google Scholar
  13. 13.
    Mehl M, Weinzierl T, Zenger C (2006) A cache-oblivious self-adaptive full multigrid method. Numer Linear Algebr 13(2–3):275–291zbMATHMathSciNetGoogle Scholar
  14. 14.
    Mitchell WF (2007) A refinement-tree based partitioning method for dynamic load balancing with adaptively refined grids. J Parallel Distrib Comput 67(4):417–429zbMATHGoogle Scholar
  15. 15.
    Morton GM (1966) A computer oriented geodetic data base and a new technique in file sequencing. Technical Report, IBM Ltd., Ottawa, OntarioGoogle Scholar
  16. 16.
    Mundani R-P, Bungartz H-J, Niggl A, Rank E (2006) Embedding, organisation, and control of simulation processes in an octree-based cscw framework. In: Proceedings of the 11th International Conference on Computing in Civil and Building Engineering, Montreal, pp 3208–3215Google Scholar
  17. 17.
    Patra A, Oden JT (1995) Problem decomposition for adaptive hp finite element methods. Comput Syst Eng 6(2):97–109Google Scholar
  18. 18.
    Roberts S, Klyanasundaram S, Cardew-Hall M, Clarke W (1998) A key based parallel adaptive refinement technique for finite element methods. In: Proceedings of the Computational Techniques and Applications: CTAC ’97, Singapore, pp 577–584Google Scholar
  19. 19.
    Samet H (1980) Region representation: quadtrees from binary arrays. Comput Graph Image Process 13(1):88–93Google Scholar
  20. 20.
    Saxena M, Finnigan1 PM, Graichen CM, Hathaway AF, Parthasarathy VN (1995) Octree-based automatic mesh generation for non-manifold domains. Eng Comput 11(1):1–14Google Scholar
  21. 21.
    Schroeder WJ, Shephard MS (1988) A combined octree/delaunay method for fully automatic 3-d mesh generation. Int J Numer Methods Eng 26(1):37–55MathSciNetGoogle Scholar
  22. 22.
    Sundar H, Sampath RS, Biros G (2008) Bottom-up construction and 2:1 balance refinement of linear octrees in parallel. SIAM J Sci Comput 30(5):2675–2708zbMATHMathSciNetGoogle Scholar
  23. 23.
    Weinzierl T (2009) A framework for parallel PDE solvers on multiscale adaptive Cartesian grids. Verlag Dr. HutGoogle Scholar
  24. 24.
    Zumbusch GW (2001) On the quality of space-filling curve induced partitions. Z Angew Math Mech 81:25–28zbMATHGoogle Scholar

Copyright information

© Springer Science+Business Media, LLC 2011

Authors and Affiliations

  • Michael Bader
    • 1
  • Hans-Joachim Bungartz
    • 1
  • Miriam Mehl
    • 1
  1. 1.Institute of Parallel and Distributed SystemsUniversität StuttgartStuttgartGermany