Welcome to Scribd, the world's digital library. Read, publish, and share books and documents. See more
Download
Standard view
Full view
of .
Look up keyword
Like this
3Activity
P. 1
OpenCL Image Convolution Filter - Box Filter

OpenCL Image Convolution Filter - Box Filter

Ratings: (0)|Views: 1,061|Likes:
Published by pi194043

OpenCL Implementation of box filter and comparison with CPU host routine

OpenCL Implementation of box filter and comparison with CPU host routine

More info:

Published by: pi194043 on Jan 27, 2013
Copyright:Traditional Copyright: All rights reserved

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

09/05/2014

pdf

text

original

 
 Heterogeneous Parallel Programming-Image Convolution Filters(Box Filter)
 Pi19404
 January 28, 2013
 
 Contents
 Contents
OpenCLParallelProgrammingforImageConvolution
0.1 Abstract. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
0.2 2D Convolution. . . . . . . . . . . . . . . . . . . . . . . . . . . .
0.3 Naive 2D convolution. . . . . . . . . . . . . . . . . . . . . . . .
0.4.1 Using Local Memory. . . . . . . . . . . . . . . . . . .
0.4.3 Unrolling For Loops. . . . . . . . . . . . . . . . . . . .
0.4.5 Performance Comparison. . . . . . . . . . . . . . . . . .
0.5 Code. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
 References. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2|
 
 OpenCL Parallel Programming for Image Convolution
 OpenCL Parallel Programming for Image Convolution
0.1 Abstract
 Data parallelism is one of ways to achieve parallelism wherein data is distributed across various computation units. In a multiprocessorsystem executing a single set of instructions (SIMD), data paral-lelism is achieved when each processor performs the same task ondifferent pieces of distributed data.Image Convolution is a neighborhood operations.The value of pixel iscomputed as weighted linear combination of neighborhood pixels.The task of the set of operations to be performed for convolution is the same for all pixels.Thus data parallelism can be achieved forimage convolution by assigning each pixel to a computation unit andsame task is performed by each computation unit. OpenCL
 TM
is the first open, royalty-free standard for cross- platform, parallel programming of modern processors found in personalcomputers, servers and handheld/embedded devices. Open Computing Language (OpenCL) is a framework for writing pro-grams that execute across heterogeneous platforms consisting of central processing units (CPUs), graphics processing units (GPUs), DSPs and other processors. OpenCL includes a language (based on C99) for writing kernels (functions that execute on OpenCL de-vices), plus application programming interfaces (APIs) that are used to define and then control the platforms. OpenCL provides parallelcomputing using task-based and data-based parallelism.In the present document we describe the details of OpenCL API’sbut how OpenCL is used efficiently to attain the desired task.We will look at Image convolution using 2D kernels and seper- able kernels and compare the performance of box standard CPU algorithms .
3|

Activity (3)

You've already reviewed this. Edit your review.
1 thousand reads
1 hundred reads

You're Reading a Free Preview

Download
scribd
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->