Abstract
The level-set method is widely used to track the motion of interfaces driven by a velocity field. In many applications, the underlying physical model defines the velocity field only at the interface itself. For these applications, an extension of the velocity field to the simulation domain is required. This extension has to be performed in each time step of a simulation to account for the time-dependent velocity values at the interface. Therefore, the velocity extension is critical to the overall computational performance. We introduce an accelerated and parallelized approach to overcome the computational bottlenecks of the prevailing and serial-in-nature fast marching method, in which the level-set function is used to predetermine the computational order for the velocity extension. This allows to employ alternative data structures, which results in a straightforward parallelizable approach with reduced complexity for insertion and removal as well as improved cache efficiency. Compared to the prevailing fast marching method, our approach delivers a serial speedup of at least 1.6 and a shared-memory parallel efficiency of 66% for 8 threads and 37% for 16 threads.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsNotes
- 1.
However, the presented algorithm and implementation details are not tailored or restricted to the field of microelectronics and can be applied to other fields as well.
- 2.
- 3.
The other half of the initialized grid points resides in the second zone of the domain, which is processed independently.
References
Adalsteinsson, D., Sethian, J.A.: The fast construction of extension velocities in level set methods. J. Comput. Phys. 148(1), 2–22 (1999). https://doi.org/10.1006/jcph.1998.6090
Cheng, L.T., Tsai, Y.H.: Redistancing by flow of time dependent eikonal equation. J. Comput. Phys. 227(8), 4002–4017 (2008). https://doi.org/10.1016/j.jcp.2007.12.018
Cormen, T.H., Leiserson, C.E., Rivest, R.L., Stein, C.: Introduction to Algorithms. MIT Press, Cambridge (2009). ISBN: 9780262033848
Diamantopoulos, G., Weinbub, J., Selberherr, S., Hössinger, A.: Evaluation of the shared-memory parallel fast marching method for re-distancing problems. In: Proceedings of the 17th International Conference on Computational Science and Its Applications, pp. 1–8 (2017). https://doi.org/10.1109/ICCSA.2017.7999648
Hagerup, T., Maas, M.: Generalized topological sorting in linear time. Fundam. Comput. Theory 710, 279–288 (1993). https://doi.org/10.1007/3-540-57163-9_23
Jeong, W.K., Whitaker, R.T.: A fast iterative method for Eikonal equations. SIAM J. Sci. Comput. 30(5), 2512–2534 (2008). https://doi.org/10.1137/060670298
Losasso, F., Gibou, F., Fedkiw, R.: Simulating water and smoke with an octree data structure. ACM Trans. Graph. 23(3), 457–462 (2004). https://doi.org/10.1145/1015706.1015745
Museth, K.: VDB: high-resolution sparse volumes with dynamic topology. ACM Trans. Graph. 32(3), 1–22 (2013). https://doi.org/10.1145/2487228.2487235
Osher, S., Sethian, J.A.: Fronts propagating with curvature-dependent speed: algorithms based on Hamilton-Jacobi formulations. J. Comput. Phys. 79(1), 12–49 (1988). https://doi.org/10.1016/0021-9991(88)90002-2
Ouyang, G.F., Kuang, Y.C., Zhang, X.M.: A fast scanning algorithm for extension velocities in level set methods. Adv. Mater. Res. 328(1), 677–680 (2011). https://doi.org/10.4028/www.scientific.net/AMR.328-330.677
Qian, J., Zhang, Y., Zhao, H.: Fast sweeping methods for Eikonal equations on triangular meshes. SIAM J. Numer. Anal. 45(1), 83–107 (2007). https://doi.org/10.1137/050627083
Sethian, J.A.: A fast marching level set method for monotonically advancing fronts. Proc. Natl. Acad. Sci. 93, 1591–1595 (1996). https://doi.org/10.1073/pnas.93.4.1591
Sethian, J.A., Vladimirsky, A.: Fast methods for the Eikonal and related Hamilton-Jacobi equations on unstructured meshes. Proc. Natl. Acad. Sci. 97(11), 5699–5703 (2000). https://doi.org/10.1073/pnas.090060097
Suvorov, V., Hössinger, A., Djurić, Z., Ljepojevic, N.: A novel approach to three-dimensional semiconductor process simulation: application to thermal oxidation. J. Comput. Electron. 5(4), 291–295 (2006). https://doi.org/10.1007/s10825-006-0003-z
Weinbub, J., Hössinger, A.: Shared-memory parallelization of the fast marching method using an overlapping domain-decomposition approach. In: Proceedings of the 24th High Performance Computing Symposium, pp. 1–8. Society for Modeling and Simulation International (2016). https://doi.org/10.22360/SpringSim.2016.HPC.052
Yang, J., Stern, F.: A highly scalable massively parallel fast marching method for the Eikonal equation. J. Comput. Phys. 332, 333–362 (2017). https://doi.org/10.1016/j.jcp.2016.12.012
Yatziv, L., Bartesaghi, A., Sapiro, G.: O(N) implementation of the fast marching algorithm. J. Comput. Phys. 212(2), 393–399 (2006). https://doi.org/10.1016/j.jcp.2005.08.005
Acknowledgments
The financial support by the Austrian Federal Ministry for Digital and Economic Affairs and the National Foundation for Research, Technology and Development is gratefully acknowledged. The computational results presented have been achieved using the Vienna Scientific Cluster (VSC).
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2020 Springer Nature Switzerland AG
About this paper
Cite this paper
Quell, M., Manstetten, P., Hössinger, A., Selberherr, S., Weinbub, J. (2020). Parallelized Construction of Extension Velocities for the Level-Set Method. In: Wyrzykowski, R., Deelman, E., Dongarra, J., Karczewski, K. (eds) Parallel Processing and Applied Mathematics. PPAM 2019. Lecture Notes in Computer Science(), vol 12043. Springer, Cham. https://doi.org/10.1007/978-3-030-43229-4_30
Download citation
DOI: https://doi.org/10.1007/978-3-030-43229-4_30
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-43228-7
Online ISBN: 978-3-030-43229-4
eBook Packages: Computer ScienceComputer Science (R0)