Abstract
Holographic projections are volumetric projections that make use of the wave-like nature of light and may find use in applications such as volumetric displays, 3D printing, lithography and LIDAR. Modelling different types of holographic projectors is straightforward but challenging due to the large number of samples that are required. Although computing capabilities have improved, recent simulations still have to make trade-offs between accuracy, performance and level of generalization. Our research focuses on the development of optimizations that make optimal use of modern hardware, allowing larger and higher-quality simulations to be run. Several algorithms are proposed; (1) a brute force algorithm that can reach 20% of the theoretical peak performance and reached a \(43{\times }\) speedup w.r.t. a previous GPU implementation and (2) a Monte Carlo algorithm that is another magnitude faster but has a lower accuracy. These implementations help researchers to develop and test new holographic devices.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Similar content being viewed by others
Notes
- 1.
A sum of N random vectors can be represented by a two-dimensional random walk of N steps. The corresponding distribution is derived by (and named after) Rayleigh and is given by \( p(\ell ) = \frac{2\ell }{N} \exp \left( -\ell ^2/N\right) \), where \(\ell \) is the length or absolute value of the phasor-sum[20]. The expected value of this distribution is proportional to \(\sqrt{N}\). This distribution requires the input phasors to have unit length, but more refined solutions that allow for arbitrary amplitude and phase distributions exist as well [4].
- 2.
The exact number of floating point operations is difficult to determine because compilers can restructure code and certain implementations are hardware-dependent. For example fused multiply-add operations and hardware-units for special arithmetic such as the square root [7].
References
Abdelfattah, A., Baboulin, M., et al.: High-performance tensor contractions for GPUs. Procedia Comput. Sci. 80, 108–118 (2016)
Abdelfattah, Ahmad, Haidar, Azzam, Tomov, Stanimire, Dongarra, Jack: Performance, design, and autotuning of batched GEMM for GPUs. In: Kunkel, Julian M.., Balaji, Pavan, Dongarra, Jack (eds.) ISC High Performance 2016. LNCS, vol. 9697, pp. 21–38. Springer, Cham (2016). https://doi.org/10.1007/978-3-319-41321-1_2
Asanovic, K., Bodik, R., Catanzaro, B.C., et al.: The landscape of parallel computing research: a view from Berkeley. Technical report UCB/EECS-2006-183, EECS Department, University of California, Berkeley (2006)
Beckmann, P.: Statistical distribution of the amplitude and phase of a multiply scattered field. J. Res. Natl. Bur. Stand. 66D(3), 231–240 (1962)
Bokor, N., Papp, Z.: Monte Carlo method in computer holography. Opt. Eng. 36, 1014–1020 (1997)
Brady, D.J., Choi, K., Marks, D.L., Horisaki, R., Lim, S.: Compressive holography. Opt. Express 17(15), 13040–13049 (2009)
Corporation, N.: CUDA C++ Programming Guide, version 11.1.1, October 2020
Davis, P.J., Rabinowitz, P.: Methods of numerical integration. Courier Corporation (2007)
Gabor, D.: A new microscopic principle. Nature 161, 777–778 (1948)
Hecht, E., Zajac, A.: Optics. Addison Wesley, Reading (1974)
Kogge, P.M., Stone, H.S.: A parallel algorithm for the efficient solution of a general class of recurrence equations. IEEE Trans. Comput. 100(8), 786–793 (1973)
Li, X., Liang, Y., Yan, S., et al.: A coordinated tiling and batching framework for efficient GEMM on GPUs. In: Proceedings of the 24th Symposium on Principles and Practice of Parallel Programming, pp. 229–241 (2019)
Li, Z.: Principle and characteristics of 3D display based on random source constructive interference. Opt. Express 22(14), 16863–16875 (2014)
Merrill, D.: Cub documentation (2020). Accessed 01 Aug 2020
Nickolls, J., Dally, W.J.: The GPU computing era. IEEE Micro 30(2), 56–69 (2010)
Niederreiter, H.: Random number generation and quasi-Monte Carlo methods. SIAM (1992)
Nishitsuji, T., Shimobaba, T., et al.: Review of fast calculation techniques for computer-generated holograms with the point-light-source-based model. IEEE Trans. Industr. Inf. 13(5), 2447–2454 (2017)
NVIDIA Corporation: The API Reference guide for cuBLAS (v11.0.3) (2020)
Pal, S., Beaumont, J., Park, et al.: Outerspace: an outer product based sparse matrix multiplication accelerator. In: 2018 IEEE International Symposium on High Performance Computer Architecture (HPCA), pp. 724–736. IEEE (2018)
Rayleigh, J.W.S.B.: The Theory of Sound, vol. 2. Macmillan (1896)
Rivenson, Y., Stern, A., Javidi, B.: Compressive Fresnel holography. J. Display Technol. 6(10), 506–509 (2010)
Ross, S.M.: Simulation. Academic Press, New York (2012)
Tsang, P., Poon, T.C., Wu, Y.: Review of fast methods for point-based computer-generated holography. Photon. Res. 6(9), 837–846 (2018)
Voschezang, M.: Holographic Projector Simulations (2020). github.com/voschezang/Holographic-Projector-Simulations/tree/snapshot-stochastic-estimators
Younge, A.J., Walters, J.P., Crago, S., Fox, G.C.: Evaluating GPU pass through in XEN for high performance cloud computing. In: 2014 IEEE International Parallel & Distributed Processing Symposium Workshops, pp. 852–859. IEEE (2014)
Zhang, H., Cao, L., Zhang, H., Zhang, W., Jin, G., Brady, D.J.: Efficient block-wise algorithm for compressive holography. Opt. Express 25(21), 24991–25003 (2017)
Zhao, T., et al.: Accelerating computation of CGH using symmetric compressed look-up-table in color holographic display. Opt. Express 26(13), 16063–16073 (2018)
Zhao, Y., Cao, L., et al.: Accurate calculation of computer-generated holograms using angular-spectrum layer-oriented method. Opt. Express 23(20), 25440–25449 (2015)
Author information
Authors and Affiliations
Corresponding author
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2021 Springer Nature Switzerland AG
About this paper
Cite this paper
Voschezang, M., Fransen, M. (2021). Optimizations of a Generic Holographic Projection Model for GPU’s. In: Paszynski, M., Kranzlmüller, D., Krzhizhanovskaya, V.V., Dongarra, J.J., Sloot, P.M. (eds) Computational Science – ICCS 2021. ICCS 2021. Lecture Notes in Computer Science(), vol 12745. Springer, Cham. https://doi.org/10.1007/978-3-030-77970-2_11
Download citation
DOI: https://doi.org/10.1007/978-3-030-77970-2_11
Published:
Publisher Name: Springer, Cham
Print ISBN: 978-3-030-77969-6
Online ISBN: 978-3-030-77970-2
eBook Packages: Computer ScienceComputer Science (R0)