GPU Support for Automatic Generation of FiniteDifferences Stencil Kernels The growth of data to be processed in the Oil u0026 Gas industry matches the requirements imposed by evolving algorithms based on stencil computations, such as Full Waveform Inversion and Reverse Time Migration. Graphical processing units (GPUs) are an attractive architectural target for stencil computations because of its high degree of data parallelism. However, the rapid architectural and technological progression makes it difficult for even the most proficient programmers to remain uptodate with the technological advances at a microarchitectural level. In this work, we present an extension for an open source compiler designed to produce highly optimized finite difference kernels for use in inversion methods named Devitoxc2xa9. We embed it with the Oxford Parallel Domain Specific Language (OPDSL) in order to enable automatic code generation for GPU architectures from a highlevel representation. We aim to enable users coding in a symbolic representation level to effortlessly get their implementations leveraged by the processing capacities of GPU architectures. The implemented backend is evaluated on a NVIDIAxc2xae GTX Titan Z, and on a NVIDIAxc2xae Tesla V100 in terms of operational intensity through the roofline model for varying spaceorder discretization levels of 3D acoustic isotropic wave propagation stencil kernels with and without symbolic optimizations. It achieves approximately 63% of V100xe2x80x99s peak performance and 24% of Titan Zxe2x80x99s peak performance for stencil kernels over grids with 2563 points. Our study reveals that improving memory usage should be the most efficient strategy for leveraging the performance of the implemented solution on the evaluated architectures.

Towards HalfPrecision Computation for Complex Matrices: A Case Study for Mixed Precision Solvers on GPUs The use of lowprecision computations is popular in accelerating machine learning and artificial intelligence (AI) applications. Hardware architectures, such as highend graphics processing units (GPUs), now support native 16bit floatingpoint arithmetic (i.e., halfprecision). While half precision provides a natural 2xc3x974xc3x97 speedup against the performance of singledouble precisions, respectively, modern GPUs are equipped with hard ware accelerators that further boost the FP16 performance. These accelerators, known as tensor cores (TCs), have a theoretical peak performance that is 8xc3x9716xc3x97 faster than FP32FP64 performance, respectively. Such a high level of performance has encouraged researchers to harness the compute power of TCs outside AI applications. This paper presents a mixedprecision dense linear solver (Ax  b) for complex matrices using the GPUxe2x80x99s TC units. Unlike similar efforts that have discussed accelerating Ax  b in real FP16 arithmetic, this paper focuses on complex FP16 precisions. The developed solution uses a xe2x80x9chalfcomplexxe2x80x9d pre cision to accelerate the solution of Ax  b while maintaining complex FP32 precision accuracy. The proposed solver requires the development of a highperformance mixedprecision ma trix multiplication (CGEMMFP16) that accepts halfcomplex inputs, and uses the TCsxe2x80x99 fullprecision products and FP32 accumulations for the computation. We discuss two designs and their performance. Similar to the way fast GEMMs power the performance of LAPACK, the mixedprecision CGEMM FP16 can enable the development of mixedprecision LAPACK algorithms. We illustrate this by integrating both CGEMMFP16s into the development of mixedprecision LU factorizations of complex matrices. Finally, an iterative refinement solver is used to deliver complex FP32 accuracy using a preconditioned GMRES solver. Our experiments, conducted on V100 GPUs, show that the mixedprecision solver can be up to 2.5xc3x97 faster than a full singlecomplex precision solver.