Solving diffractive optics problems using graphics processing units

Abstract

Techniques for applying graphics processing units (GPU) to the general-purpose non-graphics computations proposed in recent years by the companies ATI (AMD FireStream, 2006) and NVIDIA (CUDA: Compute Unified Device Architecture, 2007) have given an impetus to developing algorithms and software packages for solving problems of diffractive optics with the aid of the GPU.

The computations based on the wide-spread Ray Tracing method were among the first to be implemented using the GPU. The method attracted the attention of the CUDA technology architects, who proposed its GPU-based implementation at the conference NVISION08 (2008). The potential of this direction is associated both with the research into the general issues of mapping of the Ray Tracing method onto the GPU architecture (involving the use of various grid domains and trees) and with developing dedicated software packages (RTE and Linzik projects).

In this work, a special attention is given to the overview of techniques for the GPU-aided implementation of the FDTD (finite-difference time-domain) method, which offers an instrument for solving problems of micro- and nano-optics using the rigorous electromagnetic theory. The review of the related papers ranges from the initial research (based on the use of textures) to the complete software solutions (like FDTD Software and FastFDTD).

About the authors

D. L. Golovashkin

Image Processing Systems Institute of RAS, Samara

Author for correspondence.
Email: dimitriy@smr.ru

Doctor of Physical and Mathematical Sciences, Associate Professor

Senior Researcher

Russian Federation

N. L. Kazanskiy

Samara State Aerospace University

Email: kazansky@smr.ru

Doctor of Physical and Mathematical Sciences

Professor of the Technical Cybernetics Department

Russian Federation

References

  1. Boreskov, А.V. Basics of operating CUDA technology / A.V. Boreskov, А.А. Kharlamov – Moscow: DMK Press, 2010. – 232 pp. – [in Russian].
  2. Frolov, V.V. Introduction to CUDA technology // URL: http://cgm.computergraphics.ru/issues/issue16/cuda. – [in Russian].
  3. Flynn, M.J. Computer Architecture: Pipelined and Parallel Processor Design / M.J. Flynn – Boston: Jones and Bartlett, 1995. – 782 p.
  4. Berillo, А. NVIDIA CUDA – nongraphics computation ongraphics processing units. Part 1 // URL: http://www.ixbt.com/video3/cuda-1.shtml. – [in Russian].
  5. Skryabin, V. Graphics processing units history // URL: http://cgm.computergraphics.ru/issues/issue18/gpuhistory . – [in Russian].
  6. Krakiwsky, S.E. Graphics Processor Unit (GPU) Acceleration of FiniteDifference Time-Domain (FDTD) Algorithm / S.E. Krakiwsky, L.E. Turner and M.M. Okoniewski – Microwave Symposium Digest, June 2004. – P. 1033-1036,
  7. Chekanov, D. NVidia CUDA: GPU-aided computation or death of the CPU? // URL: http://www.thg.ru/graphic/nvidia_cuda/print.html . – [in Russian].
  8. Brook and BrookGPU research projects at the Stanford University Graphics Lab // URL: http://graphics.stanford.edu/projects/brookgpu/.
  9. CUDA technology by NVidia // URL: http://www.nvidia.ru/object/cuda_home_new_ru.html. – [in Russian].
  10. Technology ATIStream by ATI // URL: http://developer.amd.com/gpu/ATIStreamSDK/Pages/default.aspx.
  11. OpenCL Project // URL: http://www.khronos.org/opencl/.
  12. Comparison of OpenCL and CUDA, and of GLSL and OpenMP // URL: http://habrahabr.ru/blogs/hi/96122/. – [in Russian].
  13. Diffractive Computer Optics / Ed. by V.A. Soifer. – Moscow: “Fizmatlit” Publishers, 2007. – 736 pp. – [in Russian].
  14. Kazanskiy, N.L. A research complex for solving problems of computer optics / N.L. Kazanskiy // Computer Optics. – 2006. – V. 29. – P. 58-77. – [in Russian].
  15. Kazanskiy, N.L. Mathematical modeling of optical systems / N.L. Kazanskiy – Samara: “SSAU” Publisher, 2005. – 240 pp. – [in Russian].
  16. Horn, D. Interactive k-D Tree GPU Raytracing / Daniel Horn, Jeremy Sugerman, Mike Houston, Pat Hanrahan // URL: http://graphics.stanford.edu/papers/i3dkdtree/.
  17. Program OptiX // URL: http://developer.nvidia.com/object/optix-examples.html.
  18. Program RTE // URL: http://www.raytracing.ru/. – [in Russian].
  19. Program LINZIK // URL: linzik.com.
  20. CUDA, Published by NVIDIA Corporation – 2701 San Tomas Expressway Santa Clara, CA 95050 // URL: http:/www.nvidia.com/object/cuda_home_new.html.
  21. Berillo, А. NVIDIA CUDA – nongraphics computation ongraphics processing units. Part 2 // URL: http://www.ixbt.com/video3/cuda-2.shtml. – [in Russian].
  22. Luebke, D. Interactive Ray Tracing with CUDA / David Luebke and Steven Parker // URL: http://developer.nvidia.com/object/nvision08-IRT.html.
  23. Interacting Ray-tracing with SIMD instructions // URL: http://software.intel.com /ru-ru/articles/interactive-ray-tracing/. – [in Russian].
  24. Taflove, A. Computational Electrodynamics: The Finite-Difference TimeDomain Method: 2nd. ed. / A. Taflove, S. Hagness – Boston: Arthech House Publishers, 2000. – 852 p.
  25. Price, D.K. GPU-based accelerated 2D and 3d FDTD solvers / D.K. Price, J.R. Humphrey and E.J. Kelmelis – Phisics and Simulation of Optoelectronic Devices XV, vol. 6468 of Proceedings of SPIE, San Jose, Calif, USA, January 2007.
  26. Durbano, J.P. FPGA-based Acceleration of the Three-Dimensional FiniteDifference Time-Domain Method for Electromagnetic Calculations / J.P. Durbano – Global Signal Processing Expo & Conference (GSPx), 2004.
  27. Adams, S. Boppana Finite Difference Time Domain (FDTD Simulations Using Graphics Processors / S. Adams, J. Payne, R. Boppana – Proceedings of the 2007 DoD High Performance Computing Modernization Program Users Group Conference, 2007. – P. 334-338.
  28. Software for MATLAB, using GPU with CUDA architecture // URL: http://www.nvidia.ru/object/matlab_acceleration_ru.html. – [in Russian].
  29. Elsherbeni, A. The Finite Difference Time Domain Method for Electromagnetics: With MATLAB Simulations / Atef Elsherbeni and Veysel Demir – SciTech Publishing, 2009. – 450 р.
  30. FDTD solver by Acceleware // URL: http://www.acceleware.com/fdtdsolvers.
  31. Golovashkin, D.L. Metod of generation TE-wave for FDTD technique. One dimensional case / D.L. Golovashkin, N.L. Kazanskiy // Autometriya. – 2006. – Vol. 42, N 6. – P. 78-85. – [in Russian].
  32. Golovashkin, D.L. Metod of generation TE-wave for FDTD technique. Two dimensional case / D.L. Golovashkin, N.L. Kazanskiy // Autometriya. – 2007. – Vol. 43, N 6. – P. 78-88. – [in Russian].
  33. Program W2405 Agilent FDTD Simulation Element by Agilent // URL: http://www. home.agilent.com/agilent/product.jspx.
  34. Program Concerto by Cobham Technical Sevices // URL: http://www.vectorfields.com/concerto.php.
  35. Program SEMCAD X OPTICS by Speag // URL: http://www.speag.com/products/semcad/solutions/optics/.
  36. Program Xfdtd by RemCom // URL: http://www.remcom.com/xf7 .
  37. Program FastFDTD // URL: http://www.emphotonics.com/products/fastfdtd.
  38. Article “Super Computers and “nano” // URL: www.nanometer.ru/2007/09/12/super_4233.html. – [in Russian].
  39. Golovashkin, D.L. Mesh Domain Decomposition in the Finite-Difference Solution of Maxwell’s Equations/ D.L. Golovashkin, N.L. Kazanskiy // Mathematical Modeling. – 2007. – Vol. 19, N 2. – P. 48-58. – [in Russian].
  40. Golovashkin, D.L. Mesh Domain Decomposition in the Finite-Difference Solution of Maxwell’s Equations/ D.L. Golovashkin, N.L. Kazanskiy // Optical Memory & Neural Networks (Information Optics). – 2009. – Vol. 18, N 3. – P. 203-211.
  41. Soifer, V.A. Nanofotonics and difractive optics / V.A. Soifer // Computer optics. – 2008. – Vol. 32, N 2. – P. 110-118. – [in Russian].
  42. Soifer, V.A. Difractive optical elements in nanofotonics devices / V.A. Soifer, V.V. Kotlyar, L.L. Doskolovich // Computer optics. – 2009. – Vol. 33, N 4. – P. 352-368. – [in Russian].

Statistics

Views

Abstract: 2786

PDF (Russian): 1769

Dimensions

PlumX

Refbacks

  • There are currently no refbacks.

Copyright (c) 2015 VESTNIK of the Samara State Aerospace University

This website uses cookies

You consent to our cookies if you continue to use our website.

About Cookies