Heterogeneous Computing with OpenCL and over one million other books are available for Amazon Kindle. Learn more

Vous voulez voir cette page en français ? Cliquez ici.


or
Sign in to turn on 1-Click ordering.
More Buying Choices
Have one to sell? Sell yours here
Start reading Heterogeneous Computing with OpenCL on your Kindle in under a minute.

Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.

Heterogeneous Computing with OpenCL [Paperback]

Benedict Gaster , Lee Howes , David R. Kaeli , Perhaad Mistry , Dana Schaa
4.0 out of 5 stars  See all reviews (1 customer review)
List Price: CDN$ 71.24
Price: CDN$ 61.68 & this item ships for FREE with Super Saver Shipping. Details
You Save: CDN$ 9.56 (13%)
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
Usually ships within 2 to 4 weeks.
Ships from and sold by Amazon.ca. Gift-wrap available.

Formats

Amazon Price New from Used from
Kindle Edition CDN $57.53  
Paperback CDN $61.68  
There is a newer edition of this item:
Heterogeneous Computing with OpenCL: Revised OpenCL 1.2 Edition Heterogeneous Computing with OpenCL: Revised OpenCL 1.2 Edition
CDN$ 58.47
In Stock.

Book Description

Aug 17 2011

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 architectures
  • Addresses a range of fundamental programming techniques, with multiple examples and case studies that demonstrate OpenCL extensions for a variety of hardware platforms

Frequently Bought Together

Customers buy this book with OpenCL Programming Guide CDN$ 36.53

Heterogeneous Computing with OpenCL + OpenCL Programming Guide
Price For Both: CDN$ 98.21

One of these items ships sooner than the other. Show details

  • This item: Heterogeneous Computing with OpenCL

    Usually ships within 2 to 4 weeks.
    Ships from and sold by Amazon.ca.
    This item ships for FREE with Super Saver Shipping. Details

  • OpenCL Programming Guide

    In Stock.
    Ships from and sold by Amazon.ca.
    This item ships for FREE with Super Saver Shipping. Details


Customers Who Bought This Item Also Bought


Product Details


Product Description

Review

With parallel computing now in the mainstream, this book provides an excellent reference on the state-of-the-art techniques in accelerating applications on CPU-GPU systems.

-David A. Bader, Georgia Institute of Technology

From the Back Cover

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.

Features

  • 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 architectures
  • Addresses a range of fundamental programming techniques, with multiple examples and case studies that demonstrate OpenCL extensions for a variety of hardware platforms.

Inside This Book (Learn More)
Browse Sample Pages
Front Cover | Copyright | Table of Contents | Excerpt | Index
Search inside this book:

What Other Items Do Customers Buy After Viewing This Item?


Customer Reviews

5 star
0
3 star
0
2 star
0
1 star
0
4.0 out of 5 stars
4.0 out of 5 stars
Most helpful customer reviews
Format:Paperback|Amazon Verified Purchase
This is a very interesting book. It takes on theoretical aspects as well as practical ones. The only comment for me was (beside its price), that it has very tiny fonts. In order to reduce the number of pages the editors printed it on very small fonts so it's hard to read. Also the book is black and white, not color as I saw examples on AMD site. So take care of the book format for having or not colors.
Was this review helpful to you?
Most Helpful Customer Reviews on Amazon.com (beta)
Amazon.com: 4.5 out of 5 stars  37 reviews
11 of 15 people found the following review helpful
3.0 out of 5 stars No wonder OpenCL hasn't caught on Feb 20 2012
By Jaime Moreno - Published on Amazon.com
Format:Paperback|Amazon Vine™ Review
If this is what AMD has to provide developers no wonder OpenCL hasn't caught on yet.
First thing that caught my attention were the blatant spelling and grammatical errors. As though the book wasn't even proofread?
The first chapter starts off easy enough but the book warns that concurrent programming is hard and if you thought serial programming was hard you ain't seen nothing yet. They weren't kidding! The amount of code and steps just to write a basic hello program in OpenCL is ridiculous. Granted a lot of it is boilerplate code that only has to be written once and reused but the book doesn't even do a great job of making it any easier. The code samples also look like they were each written by a different person using C sometimes and C++ at other times.
Other than the nice illustrations and diagrams probably the best thing about this book is that is was so bad that it made me learn more about OpenCL than I ever cared to know by forcing me to Google for information missing from it and referring to other better resources. So that's why I'm even giving it 3 stars.
Like the OpenCL Programming Guide for Mac OS X. Apple's developer documentation which is from 2009 is seems to exactly the same thing as the first chapter in this book but Apple's is way better since they actually have code comments on just about every line walking you step-by-step through the code. So in the end this book showed me how good Apple's documentation really is. I always heard it was pretty good but didn't have an idea until now.
Later chapters seem to be a bunch of random case studies on what OpenCL is good at and some advanced ways to use it. The typical matrix, histogram and image processing examples you normally see in any parallel programming book, nothing that really stands out. Later chapters provide only minimal explanation of the code and that probably explains why the book is so short. Many of the details like OpenCL types, etc. are left for the reader to look up in some other book. If you are thinking of using this book as an introductory textbook they also leave the reader to come up with exercises/problems since there are absolutely no exercises included. The book also spends some time talking about various obscure loop unrolling methods which I'm not sure how relevant they are since this is now built into IDE's like XCode via auto-vectorization option.
As everyone has already stated the book is pretty AMD and Windows centric so none of the code worked on my Apple with MacOSX. Granted the book never said anything about Macs but isn't the whole point of OpenCL to be able to run on any hardware and OS? Also, the last several chapters deal exclusively with tools only available on Windows so not so useful on other operating systems.
I eventually did get the code examples to work on my Mac after some hard reworking of the code in the book. This was not as easy task, since depending on who you ask and where you look Macs either support or don't support OpenCL. Mac OS X, Mountain Lion, just released supports the latest version OpenCL 1.2 according to their documentation. Seems to me they should've worked closer with Apple since it seems that they are making more use of OpenCL than Windows which is introducing C++ AMP to compete with it.
I don't see OpenCL gaining much momentum as suggested in this book in the future until they make it easier to program than mpi,pthreads,not harder than competing alternatives and improve support across all platforms.
As the book states there are some embarrassingly parallel problems that OpenCL is very good at. Unfortunately, it is also embarrassingly hard to program and this book doesn't help much. Don't take my word for it as the majority of the OpenCL information in the book and better examples, video's, etc... can easily be found on AMD's developer website or any other number of places on the web.
10 of 14 people found the following review helpful
4.0 out of 5 stars Nice book with one significant design flaw Dec 16 2011
By Dave - Published on Amazon.com
Format:Paperback|Amazon Vine™ Review
Other reviews have uniformly raved about this book and in terms of content matter, I agree with them: It's a nice introduction to the Open CL language itself and the examples are well-chosen. There is a strong emphasis on use with AMD hardware, but that's to be expected given that the first two authors are AMD folks, and that AMD has adopted Open CL enthusiastically, and (I believe) discontinued all development of FireStream, it's earlier proprietary language.

This isn't the book to read if you're interested in any sort of comparison between CUDA, Open CL and MS's language; the purpose of this book is purely Open CL. This should be the book you've selected if you've already decided to use Open CL and to program natively. I mention this because if you're using a professional development tool, such as commercial compilers, the support is much greater in those tools for nVidia's CUDA: many of them will generate CUDA code without programming specifically for it. (This isn't a judgment of CUDA vs anything else, so much a function of CUDA having been around longer.)

The one thing that bothers me is that program code is printed in what appears to me to be gray rather than black text. I understand that this was done to emphasize that one is viewing program code, but given the use of a different font and indentation, I think that this would have been obvious without using a difficult-to-read gray text.

This may not bother you, but be prepared for it.
9 of 13 people found the following review helpful
5.0 out of 5 stars Great springboard into OpenCL Dec 14 2011
By Joshua Senecal - Published on Amazon.com
Format:Paperback|Amazon Vine™ Review
OpenCL is one of those things that I'd always wanted to get some experience with, so when I saw this book I figured "why not?". I'm glad I did. I found it straightforward and easy to understand, and I think this book is a great way to launch oneself into the world of OpenCL.

The book is an introduction, not a reference, but contains enough material and information to allow the reader to get a good start in OpenCL. Subject material is comprehensive. Chapters cover the basics of OpenCL and the API as well as providing explanations and discussions of how the design and organization of the computing hardware affect the design and performance of OpenCL code. There are lots of informative code examples, and four chapters of case studies, giving the reader some experience in seeing how hardware and program requirements affect the design of OpenCL code.

One minor nitpick: it's not obvious from the cover, but the book is actually from AMD. AMD was one of the first companies (perhaps *the* first) to offer an OpenCL API for their hardware. Most of the hardware-related discussion and examples focus on AMD products. This is fine for giving the reader an understanding of general differences in hardware architecture, but you'll need another source for details on hardware from other vendors.
Search Customer Reviews
Only search this product's reviews

Listmania!

Create a Listmania! list

Look for similar items by category


Feedback


Amazon.ca Privacy Statement Amazon.ca Shipping Information Amazon.ca Returns & Exchanges