gpu-accelerated computing and case-based reasoning yanzhi ren, jiadi yu, yingying chen department of...

20
GPU-Accelerated Computing and Case-Based Reasoning Yanzhi Ren, Jiadi Yu, Yingying Chen Department of Electrical and Computer Engineering, Stevens Institute of Technology, Castle Point on Hudson, Hoboken, NJ, 073030, USA Presenter: Yanzhi Ren September 02, 2010 1

Upload: dustin-ira-powers

Post on 05-Jan-2016

214 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: GPU-Accelerated Computing and Case-Based Reasoning Yanzhi Ren, Jiadi Yu, Yingying Chen Department of Electrical and Computer Engineering, Stevens Institute

GPU-Accelerated Computing and Case-Based Reasoning

Yanzhi Ren, Jiadi Yu, Yingying ChenDepartment of Electrical and Computer Engineering,

Stevens Institute of Technology, Castle Point on Hudson, Hoboken, NJ, 073030, USA

Presenter: Yanzhi RenSeptember 02, 2010

1

Page 2: GPU-Accelerated Computing and Case-Based Reasoning Yanzhi Ren, Jiadi Yu, Yingying Chen Department of Electrical and Computer Engineering, Stevens Institute

Part I: GPU-Accelerated ComputingGPU and CUDAGPULibApplication of GPULibFuture work

Part II: Case-Based Reasoning (CBR)Fundamental of CBRApplication of CBRFuture work

2

Outline

Page 3: GPU-Accelerated Computing and Case-Based Reasoning Yanzhi Ren, Jiadi Yu, Yingying Chen Department of Electrical and Computer Engineering, Stevens Institute

GPUs are massively multithreaded many core chips. Hundreds of scalar processors. Tens of thousands of concurrent threads.Fine-grained data-parallel computation

Users across science & engineering disciplines are achieving tenfold and higher speedups on GPU.

3

GPU

Page 4: GPU-Accelerated Computing and Case-Based Reasoning Yanzhi Ren, Jiadi Yu, Yingying Chen Department of Electrical and Computer Engineering, Stevens Institute

CUDA is the acronym for Compute Unified Device Architecture.A parallel computing architecture developed by NVIDIA.CUDA can be accessible to software developers throug

h industry standard programming languages. CUDA gives developers access to the instruction

set and memory of the parallel computation elements in GPUs.

4

CUDA

Page 5: GPU-Accelerated Computing and Case-Based Reasoning Yanzhi Ren, Jiadi Yu, Yingying Chen Department of Electrical and Computer Engineering, Stevens Institute

The CUDA library consists of: A minimal set of extensions to the C language that allo

w the programmer to target portions of the source code for execution.

CUDA library includes:CUBLAS: BLAS implementationCUFFT: FFT implementationGPULib: Math implementation

5

CUDA Library

Page 6: GPU-Accelerated Computing and Case-Based Reasoning Yanzhi Ren, Jiadi Yu, Yingying Chen Department of Electrical and Computer Engineering, Stevens Institute

GPULib is built on top of NVIDIA’s Compute Unified Device Architecture (CUDA) platform.

GPULib provides a library of functions that facilitate the use of high performance computing resources.

GPULib provides accelerated computations and high performance computing in technical computing.

6

GPULib

Page 7: GPU-Accelerated Computing and Case-Based Reasoning Yanzhi Ren, Jiadi Yu, Yingying Chen Department of Electrical and Computer Engineering, Stevens Institute

GPULib provides a library of mathematical functions: Basic functions:

addition, subtraction, multiplication, and division, sin(), cos(), gamma(), and exp() and so on.

Other functions:

Interpolation, array reshaping, array slicing, and reduction operations.

7

GPULib

Page 8: GPU-Accelerated Computing and Case-Based Reasoning Yanzhi Ren, Jiadi Yu, Yingying Chen Department of Electrical and Computer Engineering, Stevens Institute

Utilize these advantages of the GPULib and replacing some of the existing codes with the functions from the GPULib.

Analyze the operations of the existing codes and then transfer them into the corresponding functions from the GPULib.

8

Application of GPULib

Page 9: GPU-Accelerated Computing and Case-Based Reasoning Yanzhi Ren, Jiadi Yu, Yingying Chen Department of Electrical and Computer Engineering, Stevens Institute

The QPSK codes can be transferred into some existing functions in GPULib:

9

Example

Page 10: GPU-Accelerated Computing and Case-Based Reasoning Yanzhi Ren, Jiadi Yu, Yingying Chen Department of Electrical and Computer Engineering, Stevens Institute

Implementations of common operations such as addition, subtraction, multiplication, and division, sin(), cos(), gamma(), and exp().

We will see five-fold, or even forty-fold, speedup:

10

Example

Page 11: GPU-Accelerated Computing and Case-Based Reasoning Yanzhi Ren, Jiadi Yu, Yingying Chen Department of Electrical and Computer Engineering, Stevens Institute

In implementations of some more operations we will also see the speedup:

11

Example

Page 12: GPU-Accelerated Computing and Case-Based Reasoning Yanzhi Ren, Jiadi Yu, Yingying Chen Department of Electrical and Computer Engineering, Stevens Institute

Consider how to write some simple CUDA codes by utilizing the GPULib for the signal processing on communications, such as BPSK, QPSK and so on.

Try to expand the existing GPULib and write some more useful functions.

12

CUDA: Future Work

Page 13: GPU-Accelerated Computing and Case-Based Reasoning Yanzhi Ren, Jiadi Yu, Yingying Chen Department of Electrical and Computer Engineering, Stevens Institute

Part I: GPU-Accelerated ComputingGPU and CUDAGPULibApplication of GPULibFuture work

Part II: Case-Based Reasoning (CBR)Fundamental of CBRApplication of CBRFuture work

13

Outline

Page 14: GPU-Accelerated Computing and Case-Based Reasoning Yanzhi Ren, Jiadi Yu, Yingying Chen Department of Electrical and Computer Engineering, Stevens Institute

By remembering how we solved a similar problem in the past.

Experts often find it easier to relate stories about past cases than to formulate rules.

This is the basic idea of Case Based Reasoning (CBR). Memory-based problem-solving Re-using past experiences

14

The Basic Idea of Case Based Reasoning

Page 15: GPU-Accelerated Computing and Case-Based Reasoning Yanzhi Ren, Jiadi Yu, Yingying Chen Department of Electrical and Computer Engineering, Stevens Institute

What is Case-based Reasoning (CBR) ? CBR is the process of solving new problems based on

the solutions of similar past problems.

Medicine Doctor remembers previous patients especially for rare

combinations of symptoms.

LawCase histories are consulted.

15

Fundamentals of Case Based Reasoning

Page 16: GPU-Accelerated Computing and Case-Based Reasoning Yanzhi Ren, Jiadi Yu, Yingying Chen Department of Electrical and Computer Engineering, Stevens Institute

Distances between values of individual featuresProblem and case have values p and c for feature f:Numeric features: f(problem,case) = |p - c|/(max difference)Symbolic features: f(problem,case)= 0 if p = c

= 1 otherwise

Distance is (problem,case)Weighted sum of f(problem,case) for all features

Similarity (problem, case) = 1/(1+(problem,case))

16

Similarity Between Problems

Page 17: GPU-Accelerated Computing and Case-Based Reasoning Yanzhi Ren, Jiadi Yu, Yingying Chen Department of Electrical and Computer Engineering, Stevens Institute

Retrieve (Step 1): Given a target problem, retrieve case

which is its nearest neighbor from the memory to solving it.

Reuse (Step 2): Map the solution from the previous

case to the target problem. Revise (Step 3): Test the new solution in the real

world (or a simulation) and, if necessary, revise.

Retain (Step 4): After the solution has been

successfully adapted to the target problem, store the resulting experience as a new case in memory. :

17

Steps of Case Based Reasoning

Page 18: GPU-Accelerated Computing and Case-Based Reasoning Yanzhi Ren, Jiadi Yu, Yingying Chen Department of Electrical and Computer Engineering, Stevens Institute

The recognition of the operations in QPSK: AddMultipleDividesin() and cos()

18

Application of CBR to Signal Processing and Software Defined Radio

Case BasedReasoning

gpumult.pro

gpudiv.pro

Page 19: GPU-Accelerated Computing and Case-Based Reasoning Yanzhi Ren, Jiadi Yu, Yingying Chen Department of Electrical and Computer Engineering, Stevens Institute

19

CBR: Future Work

Consider how to use CBR to recognize the features in signal processing primitives.

Consider writing programs which utilize the case based reasoning to recognize the operations in the existing code of Signal Processing and Software Defined Radio.

Page 20: GPU-Accelerated Computing and Case-Based Reasoning Yanzhi Ren, Jiadi Yu, Yingying Chen Department of Electrical and Computer Engineering, Stevens Institute

Thank You

Comments & Questions?

20