Heterogeneous Computing with OpenCL

Heterogeneous Computing with OpenCL teaches OpenCL and parallel programming for complex systems that may include a variety of device architectures: multi-core CPUs, GPUs, and fully-integrated Accelerated Processing Units (APUs) such as AMD Fusion technology. Designed to work on multiple platforms and with wide industry support, OpenCL will help you more effectively program for a heterogeneous future. Written by leaders in the parallel computing and OpenCL communities, this book will give you hands-on OpenCL experience to address a range of fundamental parallel algorithms. The authors explore memory spaces, optimization techniques, graphics interoperability, extensions, and debugging and profiling. Intended to support a parallel programming course, Heterogeneous Computing with OpenCL includes detailed examples throughout, plus additional online exercises and other supporting materials.Explains principles and strategies to learn parallel programming with OpenCL, from understanding the four abstraction models to thoroughly testing and debugging complete applications.Covers image processing, web plugins, particle simulations, video editing, performance optimization, and more.Shows how OpenCL maps to an example target architecture and explains some of the tradeoffs associated with mapping to various architecturesAddresses a range of fundamental programming techniques, with multiple examples and case studies that demonstrate OpenCL extensions for a variety of hardware platforms

[1]  Fabio Mercurio,et al.  Interest Rates and The Credit Crunch: New Formulas and Market Models , 2009 .

[2]  David A. Patterson,et al.  Computer Architecture: A Quantitative Approach , 1969 .

[3]  Aaftab Munshi,et al.  The OpenCL specification , 2009, 2009 IEEE Hot Chips 21 Symposium (HCS).

[4]  Graham F. Carey,et al.  Extension of high‐order compact schemes to time‐dependent problems , 2001 .

[5]  Marcel Breeuwer,et al.  Evaluation of Hessian-based filters to enhance the axis of coronary arteries in CT images , 2003, CARS.

[6]  Allan Gottlieb,et al.  Highly parallel computing , 1989, Benjamin/Cummings Series in computer science and engineering.

[7]  Greg Grohoski Niagara-2: A highly threaded server-on-a-chip , 2006, 2006 IEEE Hot Chips 18 Symposium (HCS).

[8]  D. Zhang Coronary artery segmentation and motion modelling , 2010 .

[9]  Hans Buehler,et al.  Equity Hybrid Derivatives , 2007 .

[10]  Marcus Overhaus,et al.  Equity Derivatives: Theory and Applications , 2001 .

[11]  Riccardo Rebonato Modern pricing of interest-rate derivatives , 2002 .

[12]  Jack J. Dongarra,et al.  From CUDA to OpenCL: Towards a performance-portable solution for multi-platform GPU programming , 2012, Parallel Comput..

[13]  O. Pironneau,et al.  Computational Methods for Option Pricing (Frontiers in Applied Mathematics) (Frontiers in Applied Mathematics 30) , 2005 .

[14]  Oliver Brockhaus Modelling and Hedging Equity Derivatives , 1999 .

[15]  Alan G. White,et al.  Pricing Interest-Rate-Derivative Securities , 1990 .

[16]  Mohamed Othman,et al.  Two-level compact implicit schemes for three-dimensional parabolic problems , 2009, Comput. Math. Appl..

[17]  Christopher Dyken,et al.  State-of-the-art in heterogeneous computing , 2010, Sci. Program..

[18]  Keith D. Cooper,et al.  Engineering a Compiler , 2003 .

[19]  Aerambamoorthy Thavaneswaran,et al.  Interest Rate Models , 2011 .

[20]  Don M. Chance Equity Swaps and Equity Investing , 2004 .

[21]  Denis Talay,et al.  Interest rate model risk: an overview , 1999 .

[22]  Joe Duffy Concurrent Programming on Windows , 2008 .

[23]  Bo Joel Svensson,et al.  Obsidian: A Domain Specific Embedded Language for Parallel Programming of Graphics Processors , 2008, IFL.

[24]  Graham Hutton,et al.  Programming in Haskell , 2007 .

[25]  Maurice Herlihy,et al.  The art of multiprocessor programming , 2020, PODC '06.

[26]  Bixia Zheng,et al.  Twin Peaks: A Software Platform for Heterogeneous Computing on General-Purpose and Graphics Processors , 2010, 2010 19th International Conference on Parallel Architectures and Compilation Techniques (PACT).

[27]  Michael F. P. O'Boyle,et al.  A Static Task Partitioning Approach for Heterogeneous Systems Using OpenCL , 2011, CC.

[28]  Erik Yama Étienne Hyper-threading , 2012 .

[29]  Alejandro F. Frangi,et al.  Three-dimensional model-based analysis of vascular and cardiac images , 2001 .

[30]  Guoqing Liu,et al.  High-Order Compact ADI Methods for Parabolic Equations , 2006, Comput. Math. Appl..