Using OpenCL: Programming Massively Parallel Computers

¡ SAGE Publications Limited
āχāĻŦ⧁āĻ•
312
āĻĒ⧃āĻˇā§āĻ āĻž
āϝ⧋āĻ—ā§āϝ

āĻāχ āχāĻŦ⧁āĻ•āĻ–āύ⧰ āĻŦāĻŋāĻˇā§Ÿā§‡

In 2011 many computer users were exploring the opportunities and the benefits of the massive parallelism offered by heterogeneous computing. In 2000 the Khronos Group, a not-for-profit industry consortium, was founded to create standard open APIs for parallel computing, graphics and dynamic media. Among them has been OpenCL, an open system for programming heterogeneous computers with components made by multiple manufacturers. This publication explains how heterogeneous computers work and how to program them using OpenCL. It also describes how to combine OpenCL with OpenGL for displaying graphical effects in real time. Chapter 1 describes briefly two older de facto standard and highly successful parallel programming systems: MPI and OpenMP. Collectively, the MPI, OpenMP, and OpenCL systems cover programming of all major parallel architectures: clusters, shared-memory computers, and the newest heterogeneous computers. Chapter 2, the technical core of the book, deals with OpenCL fundamentals: programming, hardware, and the interaction between them. Chapter 3 adds important information about such advanced issues as double-versus-single arithmetic precision, efficiency, memory use, and debugging. Chapters 2 and 3 contain several examples of code and one case study on genetic algorithms. These examples are related to linear algebra operations, which are very common in scientific, industrial, and business applications. Most of the book’s examples can be found on the enclosed CD, which also contains basic projects for Visual Studio, MinGW, and GCC. This supplementary material will assist the reader in getting a quick start on OpenCL projects.

āĻ…āϧāĻŋāĻ• āĻŦāĻŋāϚāĻžā§°āĻŋ āĻĒāĻžāĻ“āĻ•

āĻāχ āχāĻŦ⧁āĻ•āĻ–āύāĻ• āĻŽā§‚āĻ˛ā§āϝāĻžāĻ‚āĻ•āύ āϕ⧰āĻ•

āφāĻŽāĻžāĻ• āφāĻĒā§‹āύāĻžā§° āĻŽāϤāĻžāĻŽāϤ āϜāύāĻžāĻ“āĻ•āĨ¤

āĻĒāĻĸāĻŧāĻžā§° āύāĻŋāĻ°ā§āĻĻ⧇āĻļāĻžā§ąāϞ⧀

āĻ¸ā§āĻŽāĻžā§°ā§āϟāĻĢ’āύ āφ⧰⧁ āĻŸā§‡āĻŦāϞ⧇āϟ
Android āφ⧰⧁ iPad/iPhoneā§° āĻŦāĻžāĻŦ⧇ Google Play Books āĻāĻĒāĻŸā§‹ āχāύāĻˇā§āϟāϞ āϕ⧰āĻ•āĨ¤ āχ āĻ¸ā§āĻŦāϝāĻŧāĻ‚āĻ•ā§āϰāĻŋāϝāĻŧāĻ­āĻžā§ąā§‡ āφāĻĒā§‹āύāĻžā§° āĻāĻ•āĻžāωāĻŖā§āϟ⧰ āϏ⧈āϤ⧇ āĻ›āĻŋāĻ‚āĻ• āĻšāϝāĻŧ āφ⧰⧁ āφāĻĒ⧁āύāĻŋ āϝ'āϤ⧇ āύāĻžāĻĨāĻžāĻ•āĻ• āϤ'āϤ⧇āχ āϕ⧋āύ⧋ āĻ…āĻĄāĻŋāĻ…'āĻŦ⧁āĻ• āĻ…āύāϞāĻžāχāύ āĻŦāĻž āĻ…āĻĢāϞāĻžāχāύāϤ āĻļ⧁āύāĻŋāĻŦāϞ⧈ āϏ⧁āĻŦāĻŋāϧāĻž āĻĻāĻŋāϝāĻŧ⧇āĨ¤
āϞ⧇āĻĒāϟāĻĒ āφ⧰⧁ āĻ•āĻŽā§āĻĒāĻŋāωāϟāĻžā§°
āφāĻĒ⧁āύāĻŋ āĻ•āĻŽā§āĻĒāĻŋāωāϟāĻžā§°ā§° ā§ąā§‡āĻŦ āĻŦā§āϰāĻžāωāϜāĻžā§° āĻŦā§āĻ¯ā§ąāĻšāĻžā§° āϕ⧰āĻŋ Google PlayāϤ āĻ•āĻŋāύāĻž āĻ…āĻĄāĻŋāĻ…'āĻŦ⧁āĻ•āϏāĻŽā§‚āĻš āĻļ⧁āύāĻŋāĻŦ āĻĒāĻžā§°ā§‡āĨ¤
āχ-ā§°ā§€āĻĄāĻžā§° āφ⧰⧁ āĻ…āĻ¨ā§āϝ āĻĄāĻŋāĻ­āĻžāχāϚ
Kobo eReadersā§° āĻĻ⧰⧇ āχ-āϚāĻŋ⧟āĻžāρāĻšā§€ā§° āĻĄāĻŋāĻ­āĻžāχāϚāϏāĻŽā§‚āĻšāϤ āĻĒā§āĻŋāĻŦāϞ⧈, āφāĻĒ⧁āύāĻŋ āĻāϟāĻž āĻĢāĻžāχāϞ āĻĄāĻžāωāύāĻ˛â€™āĻĄ āϕ⧰āĻŋ āϏ⧇āχāĻŸā§‹ āφāĻĒā§‹āύāĻžā§° āĻĄāĻŋāĻ­āĻžāχāϚāϞ⧈ āĻ¸ā§āĻĨāĻžāύāĻžāĻ¨ā§āϤ⧰āĻŖ āϕ⧰āĻŋāĻŦ āϞāĻžāĻ—āĻŋāĻŦāĨ¤ āϏāĻŽā§°ā§āĻĨāĻŋāϤ āχ-ā§°āĻŋāĻĄāĻžā§°āϞ⧈ āĻĢāĻžāχāϞāĻŸā§‹ āϕ⧇āύ⧇āĻ•ā§ˆ āĻ¸ā§āĻĨāĻžāύāĻžāĻ¨ā§āϤ⧰ āϕ⧰āĻŋāĻŦ āϜāĻžāύāĻŋāĻŦāϞ⧈ āϏāĻšāĻžāϝāĻŧ āϕ⧇āĻ¨ā§āĻĻā§ā§°āϤ āĻĨāĻ•āĻž āϏāĻŦāĻŋāĻļ⧇āώ āύāĻŋā§°ā§āĻĻ⧇āĻļāĻžā§ąāϞ⧀ āϚāĻžāĻ“āĻ•āĨ¤